Plugbox Klassenreferenz
Abstraktion einer Interruptvektortabelle.
Mehr ...
#include <plugbox.h>
Aufstellung aller Elemente
|
Öffentliche Typen |
enum | Vector { timer = 32,
keyboard = 33,
assassin = 100,
wakeup = 101
} |
| Liste der verwendeten Interruptvektoren. Mehr ...
|
Öffentliche Methoden |
| Plugbox () |
| Initialisierung der Gate map mit einem Default Gate.
|
void | assign (unsigned int vector, Gate &gate) |
| Einstöpseln einer Behandlungsroutine, die in Form eines Gate-Objekts vorhanden sein muss.
|
Gate & | report (unsigned int vector) |
| Abfrage eines eingetragenen Gate Objekts.
|
Ausführliche Beschreibung
Abstraktion einer Interruptvektortabelle.
Damit kann man die Adresse der Behandlungsroutine fuer jeden Hardware- und Softwareinterrupt und jede Prozessorexception festlegen. Jede Unterbrechungsquelle wird durch ein Gate-Objekt repräsentiert. Diese liegen in einem Feld(128 Elemente). Der Index in diesen Feld ist dabei die Vektornummer.
Dokumentation der Aufzählungstypen
Liste der verwendeten Interruptvektoren.
In OO/MP-Stubs benötigen wir lediglich Vektornummern für den Timerbaustein und die Tastatur
- Aufzählungswerte:
-
timer |
Interruptvektornummer für den Timerinterrupt. |
keyboard |
Interruptvektornummer für den Keyboardinterrupt. |
assassin |
Interruptvektornummer für den Assassin; nur in MPStuBS benötigt. |
wakeup |
Interruptvektornummer zum Aufwecken von schlafenden CPUs; nur in MPStubs benötigt. |
Beschreibung der Konstruktoren und Destruktoren
Initialisierung der Gate map mit einem Default Gate.
Im Konstruktor wird für alle Unterbrechungen und Ausnahmen das global bekannte Panic Objekt panic eingetragen, das eine minimale Unterbrechungsbehandlung sicherstellt.
Dokumentation der Elementfunktionen
void Plugbox::assign |
( |
unsigned int |
vector, |
|
|
Gate & |
gate | |
|
) |
| | |
Einstöpseln einer Behandlungsroutine, die in Form eines Gate-Objekts vorhanden sein muss.
- Parameter:
-
| vector | Interruptvektor, für den die Behandlungsroutine registriert werden soll. |
| gate | Objekt mit Behandlungsroutine |
Gate & Plugbox::report |
( |
unsigned int |
vector |
) |
|
Abfrage eines eingetragenen Gate Objekts.
- Parameter:
-
| vector | Abzufragende Interruptvektornummer |
- Rückgabe:
- Referenz auf das mit vector asoziierte Gateobjekt
Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Dateien: