• 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
      • Embedded Systems Software
      • 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 2025/26
      • Systemprogrammierung 2
      • Betriebssysteme
      • Middleware – Cloud Computing
      • Echtzeitsysteme
      • Virtuelle Maschinen
      • Web-basierte Systeme
      • Projekt angewandte Systemsoftwaretechnik
      • Aktuelle Entwicklung in Verteilten und Objektorientierten Betriebssystemen (für Bachelor-/Masterarbeit)
    Portal Lehre
  • Examensarbeiten
  1. Startseite
  2. Extern

Extern

Bereichsnavigation: Lehre
  • Betriebssysteme

    Aufgabe 6: Synchronisation

    Public Member Functions | List of all members
    IdleThread Class Reference
    Multithreading

    Thread that is executed when there is nothing to do for this core. More...

    #include <thread/idlethread.h>

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

    Public Member Functions

    void action () override
     Wait for a thread to become ready and sleep in the meantime. More...
     
    - Public Member Functions inherited from Thread
     Thread ()
     Constructor Initializes the context using prepareContext with the highest aligned address of the reserved_stack_space array as stack pointer (top of stack). More...
     
    void go ()
     Activates the first thread on this CPU. More...
     
    void resume (Thread *next)
     Switches from the currently running thread to the next one. More...
     
    virtual void action ()=0
     Method that contains the thread's program code. More...
     
    Waitingroom * getWaitingroom () const
     Returns the Waitingroom in which the thread is currently waiting. More...
     
    void setWaitingroom (Waitingroom *w)
     Marks the thread as waiting for an event in Waitingroom w. More...
     

    Additional Inherited Members

    - Public Attributes inherited from Thread
    const size_t id
     Unique ID of thread.
     
    volatile bool kill_flag
     Marker for a dying thread.
     
    - Static Public Attributes inherited from Thread
    static const size_t STACK_SIZE = 4096
     Stack size for each thread.
     
    - Static Protected Member Functions inherited from Thread
    static void kickoff (Thread *object)
     Function to start a thread. More...
     
    - Protected Attributes inherited from Thread
    StackPointer stackpointer
     Current stack pointer of thread for context switch.
     

    Detailed Description

    Thread that is executed when there is nothing to do for this core.

    Using the IdleThread simplifies the idea of waiting and is an answer to the questions that arise once the ready queue is empty.

    Note
    Instance of this class should never be inserted into the scheduler's ready queue, as the IdleThread should only be executed if there is no proper work to do.

    Member Function Documentation

    void IdleThread::action ( )
    overridevirtual

    Wait for a thread to become ready and sleep in the meantime.

    Todo:
    Implement Method

    Implements Thread.


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

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