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

                          Aufgabe 6: Synchronisation

                          Public Member Functions | List of all members
                          Clock Class Reference

                          The Clock implements the device for the real time clock, providing an interface to retrieve the current date/time. More...

                          #include <device/clock.h>

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

                          Public Member Functions

                           Clock ()
                           Constructor.
                           
                          void init ()
                           Initialize Clock and its interrupts.
                           
                          uint32_t getTimestamp () const
                           Get current time stamp. More...
                           
                          DateTime getDateTime () const
                           Get current date and time. More...
                           
                          bool prologue () override
                           Prologue for Real Time Clock Since the RTC can cause three different interrupts, the prologue is required to determine the source. More...
                           
                          void epilogue () override
                           Epilogue for Real Time Clock. 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...
                           

                          Additional Inherited Members

                          - Protected Types inherited from RTC
                          enum  Interrupt {
                            NONE = 0 ,
                            UPDATE = 1 << 4 ,
                            ALARM = 1 << 5 ,
                            PERIODIC = 1 << 6
                          }
                           Possible Interrupt sources. More...
                           
                          enum  PeriodicFrequency {
                            FREQ_NONE = 0 ,
                            FREQ_8192HZ = 3 ,
                            FREQ_4096HZ = 4 ,
                            FREQ_2048HZ = 5 ,
                            FREQ_1024HZ = 6 ,
                            FREQ_512HZ = 7 ,
                            FREQ_256HZ = 8 ,
                            FREQ_128HZ = 9 ,
                            FREQ_64HZ = 10 ,
                            FREQ_32HZ = 11 ,
                            FREQ_16HZ = 12 ,
                            FREQ_8HZ = 13 ,
                            FREQ_4HZ = 14 ,
                            FREQ_2HZ = 15
                          }
                           Frequencies for periodic interval. More...
                           
                          - Static Protected Member Functions inherited from RTC
                          static void setPeriodic (enum PeriodicFrequency freq)
                           Set a periodic interrupt interval. More...
                           
                          static void setAlarm (uint8_t hour, uint8_t minute, uint8_t second)
                           Set an alarm. More...
                           
                          static void receiveInterrupt (Interrupt i, bool enable)
                           Enable or disable an interrupt source. More...
                           
                          static Interrupt getSource ()
                           Get the source of the last interrupt. More...
                           
                          static DateTime getDateTime ()
                           Get current date and time. More...
                           

                          Detailed Description

                          The Clock implements the device for the real time clock, providing an interface to retrieve the current date/time.

                          Instead of reading several CMOS registers on each call to Clock::getDateTime / Clock::getTimestamp() (which is quite expensive), the update interrupt is used to keep track of the current timestamp in a local variable.

                          Member Function Documentation

                          uint32_t Clock::getTimestamp ( ) const
                          inline

                          Get current time stamp.

                          Returns
                          seconds since Unix epoch
                          DateTime Clock::getDateTime ( ) const
                          inline

                          Get current date and time.

                          Returns
                          the current date and time
                          bool Clock::prologue ( )
                          overridevirtual

                          Prologue for Real Time Clock Since the RTC can cause three different interrupts, the prologue is required to determine the source.

                          Returns
                          true if the epilogue has to be executed.

                          Implements Gate.

                          void Clock::epilogue ( )
                          overridevirtual

                          Epilogue for Real Time Clock.

                          Updates the time on the screen

                          Reimplemented from Gate.


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

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