• Navigation überspringen
  • Zur Navigation
  • Zum Seitenende
Organisationsmenü öffnen Organisationsmenü schließen
Friedrich-Alexander-Universität Lehrstuhl für Informatik 4 (Systemsoftware)
  • FAUZur zentralen FAU Website
  1. Friedrich-Alexander-Universität
  2. Technische Fakultät
  3. Department Informatik
Suche öffnen
  • English
  • Campo
  • StudOn
  • FAUdir
  • Stellenangebote
  • Lageplan
  • Hilfe im Notfall
  1. Friedrich-Alexander-Universität
  2. Technische Fakultät
  3. Department Informatik
Friedrich-Alexander-Universität Lehrstuhl für Informatik 4 (Systemsoftware)
Menu Menu schließen
  • Lehrstuhl
    • Team
    • Aktuelles
    • Kontakt und Anfahrt
    • Leitbild
    • 50-jähriges Jubiläum
    Portal Lehrstuhl
  • Forschung
    • Forschungsbereiche
      • Betriebssysteme
      • Confidential Computing
      • Eingebettete Systemsoftware
      • Verteilte Systeme
    • Projekte
      • AIMBOS
      • BALu
      • BFT2Chain
      • DOSS
      • Mirador
      • NEON
      • PAVE
      • ResPECT
      • Watwa
    • Projektkampagnen
      • maRE
    • Seminar
      • Systemsoftware
    Portal Forschung
  • Publikationen
  • Lehre
    • Sommersemester 2025
      • Applied Software Architecture
      • Ausgewählte Kapitel der Systemsoftware
      • Betriebssystemtechnik
      • Projekt angewandte Systemsoftwaretechnik
      • System-Level Programming
      • Systemnahe Programmierung in C
      • Systemprogrammierung 1
      • Verteilte Systeme
    • Wintersemester 2024/25
      • Betriebssysteme
      • Middleware – Cloud Computing
      • Systemprogrammierung 2
      • Verlässliche Echtzeitsysteme
      • Virtuelle Maschinen
      • Web-basierte Systeme
    Portal Lehre
  • Examensarbeiten
  1. Startseite
  2. Extern

Extern

Bereichsnavigation: Lehre
  • Betriebssysteme
    • Vorlesung
      • Folien
    • Übung
      • Seminar
      • Aufgaben
      • Aufgabe 0: C++ Streams
        • Aufgabe 1: Ein-/Ausgabe
          • Aufgabe 2: Unterbrechungen
            • Aufgabe 3: Pro-/Epilog
              • Aufgabe 4: Kontextwechsel
                • Aufgabe 5: Zeitscheiben
                  • Aufgabe 6: Synchronisation
                    • Aufgabe 7: Anwendung
                      • Assembler Crashkurs
                        • C++ Crashkurs
                          • Entwicklungsumgebung
                            • FAQ
                              • Ruhmeshalle
                              • Evaluation

                              Aufgabe 5: Zeitscheiben

                              Public Member Functions | List of all members
                              Assassin Class Reference

                              Handling for the "killer"-IPI, that is a message indicating that a thread should be terminated. More...

                              #include <thread/assassin.h>

                              + Inheritance diagram for Assassin:
                              [legend]
                              + Collaboration diagram for Assassin:
                              [legend]

                              Public Member Functions

                              void hire ()
                               Configure the Assassin. More...
                               
                              bool prologue ()
                               Interrupt Prologue. More...
                               
                              virtual void epilogue ()
                               Interrupt Epilogue. More...
                               
                              - Public Member Functions inherited from Gate
                               Gate ()
                               Constructor.
                               
                              virtual ~Gate ()
                               Destructor. More...
                               

                              Detailed Description

                              Handling for the "killer"-IPI, that is a message indicating that a thread should be terminated.

                              Only required for MPStuBS.

                              If one thread wants to terminate another thread by calling Scheduler::kill(), and the thread to be killed is currently being executed on another CPU, this CPU needs to be notified that the active process is to be killed. MPStuBS relies on an inter-processor interrupt (IPI) for this purpose. The class Assassin shall handle the IPI by removing the active thread from scheduling and issue a reschedule iff the active thread has a set kill flag.

                              Member Function Documentation

                              void Assassin::hire ( )

                              Configure the Assassin.

                              Setup the plugbox, such that the assassin will be executed once the corresponding IPI is issued.

                              Todo:
                              Implement Method
                              bool Assassin::prologue ( )
                              virtual

                              Interrupt Prologue.

                              There is nothing to do in the prologue except requesting an epilogue.

                              Returns
                              true to request an epilogue
                              Todo:
                              Implement Method

                              Implements Gate.

                              void Assassin::epilogue ( )
                              virtual

                              Interrupt Epilogue.

                              The epilogue now should check the dying flag of the currently running thread and, if set, issue a rescheduling.

                              Todo:
                              Implement Method

                              Reimplemented from Gate.


                              The documentation for this class was generated from the following files:
                              • thread/assassin.h
                              • thread/assassin.cc
                              Friedrich-Alexander-Universität
                              Erlangen-Nürnberg

                              Schlossplatz 4
                              91054 Erlangen
                              • Impressum
                              • Datenschutz
                              • Barrierefreiheit
                              • Facebook
                              • RSS Feed
                              • Xing
                              Nach oben