• 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 5: Zeitscheiben

    Public Member Functions | List of all members
    Ticker Class Reference

    The Ticker device demonstrates HPET interrupts. More...

    #include <device/ticker.h>

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

    Public Member Functions

    bool windup (uint64_t us)
     Windup / initialize. More...
     
    bool prologue () override
     Prologue of timer interrupts. More...
     
    void epilogue () override
     Epilogue of timer interrupts. More...
     
    uint64_t interval () const
     Retrieve the interrupt interval. More...
     
    void activate ()
     Activate the timer. More...
     
    void stop ()
     Stop the timer. More...
     
    - Public Member Functions inherited from Gate
     Gate ()
     Constructor.
     
    virtual ~Gate ()
     Destructor. More...
     
    virtual bool prologue ()=0
     Device-specific interrupt handling routine that is executed immediately after the interrupt occurs (asynchronously). More...
     
    virtual void epilogue ()
     Possibly delayed, synchronously executed Device-specific interrupt handling routine. More...
     

    Detailed Description

    The Ticker device demonstrates HPET interrupts.

    Periodic HPET interrupts increase the counter, which is displayed on a designated spot on the screen and shows the current systems runtime.

    Member Function Documentation

    bool Ticker::windup ( uint64_t  us)

    Windup / initialize.

    Assigns itself to the Plugbox and initializes a HPET::Comparator in such a way that regular interrupts are triggered approx. every us microseconds when Ticker::activate() is called.

    Note
    This method must find a comparator capable of periodic interrupts.
    For IOAPIC::config use Trigger Mode `LEVEL` with Polarity `LOW` to ensure operation on both Qemu/KVM and our test hardware.
    Parameters
    usDesired interrupt interval in microseconds.
    Returns
    Indicates if the interval could be set.
    Optional:
    Implement Method
    bool Ticker::prologue ( )
    overridevirtual

    Prologue of timer interrupts.

    Returns
    true if the interrupt was issued by the HPET and Ticker::epilogue should be executed.
    Optional:
    Implement Method

    Implements Gate.

    void Ticker::epilogue ( )
    overridevirtual

    Epilogue of timer interrupts.

    Increases and displays the counter value (uptime)

    Optional:
    Implement Method

    Reimplemented from Gate.

    uint64_t Ticker::interval ( ) const
    inline

    Retrieve the interrupt interval.

    Returns
    Interval in microseconds
    Optional:
    Implement method
    void Ticker::activate ( )
    inline

    Activate the timer.

    Optional:
    Implement method
    void Ticker::stop ( )
    inline

    Stop the timer.

    Optional:
    Implement method

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

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