Friedrich-Alexander-Universität UnivisSuche FAU-Logo
Techn. Fakultät Willkommen am Department Informatik FAU-Logo
Logo I4
Lehrstuhl für Informatik 4
Betriebssysteme
 
  Vorlesung
    - UnivIS-Infos
    - Inhalt
    - Folien
    - Videos
 
  Übungen
    - UnivIS-Infos
    - Inhalt
    - Module
    - Mailingliste
    - Ergänzendes Material
    - Terminübersicht
    - Aufgaben
       * Umgebung
       * Typische Fehler
       * Aufgabe 1
          Dokumentation
       * Aufgabe 2
          Dokumentation
       * Aufgabe 3
          Dokumentation
       * Aufgabe 4
          Dokumentation
       * Aufgabe 5
          Dokumentation
       * Aufgabe 6
          Dokumentation
       * Aufgabe 7
          Dokumentation
 
  Evaluation
Department Informatik  >  Informatik 4  >  Lehre  >  WS 2012/13  >  Betriebssysteme  >  Übungen  >  Aufgaben  >  Aufgabe 7

Interruptbehandlung für Timerinterrupts. Mehr ...

#include <watch.h>

Klassendiagramm für Watch:
Zusammengehörigkeiten von Watch:

Öffentliche Methoden

 Watch (int us)
 Konstruktor.
void windup ()
 Uhr "aufziehen".
bool prologue ()
 Enthält den Prolog der Unterbrechungsbehandlung.
void epilogue ()
 In dieser Methode wird der Prozesswechsel ausgelöst.
- Ã–ffentliche Methoden geerbt von Gate
 Gate ()
 Konstruktor: Initialisierung der Attribute.
virtual ~Gate ()
 Destruktor.
void queued (bool q)
 Speichert, ob das jeweilige Objekt sich gerade in einer Epilog-Warteschlange befindet.
bool queued ()
 Methode zum Abfragen, ob sich das jeweilige Objekte gerade in einer Epilog-Warteschlange befindet.
- Ã–ffentliche Methoden geerbt von PIT
 PIT (int us)
 Konstruktor.
int interval ()
 Gibt an, welches Unterbrechungsintervall eingestellt wurde.
void interval (int us)
 Stellt das Unterbrechungsintervall auf us neu ein.

Weitere Geerbte Elemente

- Ã–ffentliche Attribute geerbt von Chain
Chainnext
 next gibt das nächste Chain Element der Liste an.

Ausführliche Beschreibung

Interruptbehandlung für Timerinterrupts.

Die Klasse Watch sorgt für die Behandlung der Zeitgeberunterbrechungen, indem sie eine Zeitscheibe verwaltet und gegebenenfalls einen Prozesswechsel auslöst.

Beschreibung der Konstruktoren und Destruktoren

Watch::Watch ( int  us)
inline

Konstruktor.

Im Konstruktor wird der Timer so initialisiert, dass er in Abständen von ca. us Mikrosekunden regelmäßig Unterbrechungen auslöst.

Parameter
usGewünschtes Unterbrechungsintervall in Mikrosekunden.

Dokumentation der Elementfunktionen

bool Watch::prologue ( )
virtual

Enthält den Prolog der Unterbrechungsbehandlung.

Rückgabe
Gibt true zurück, falls ein Epilog notwendig ist, ansonsten false.

Implementiert Gate.

void Watch::windup ( )

Uhr "aufziehen".

Dazu muss sich das Watch Objekt bei der Plugbox plugbox anmelden und mit Hilfe des globalen IOAPIC Objekts ioapic der Timerunterbrechung einen Interruptvektor zuweisen und dann die Unterbrechungen des Timer Bausteins zulassen.


Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Dateien:
  Impressum   Datenschutz Stand: 2013-01-31 15:49   BO, DL