• 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
    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
    Optional:
    Implement Method
    DateTime Clock::getDateTime ( ) const
    inline

    Get current date and time.

    Returns
    the current date and time
    Optional:
    Implement Method
    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.
    Optional:
    Implement Method

    Implements Gate.

    void Clock::epilogue ( )
    overridevirtual

    Epilogue for Real Time Clock.

    Updates the time on the screen

    Optional:
    Implement Method

    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