• 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
    • 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
                  • Assembler Crashkurs
                    • C++ Crashkurs
                      • Entwicklungsumgebung
                        • FAQ
                          • Ruhmeshalle

                        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