OOStuBS - Technische Informatik II (TI-II)  2.4
Öffentliche Methoden | Geschützte, statische Methoden | Geschützte Attribute | Statische, geschützte Attribute | Aufstellung aller Elemente
InterruptStorage Klassenreferenz

Administrationseinheit für die Interruptweitergabe. Mehr ...

#include <interruptstorage.h>

Klassendiagramm für InterruptStorage:
Inheritance graph
[Legende]
Zusammengehörigkeiten von InterruptStorage:
Collaboration graph
[Legende]

Öffentliche Methoden

void assign (int iNum, InterruptHandler &handler)
 bindet ein InterruptHandler -Objekt an einen speziellen Interrupt
bool currentInterrupt (int &iNum)
 Fetch the currently active interrupt if there is one.
void handle (int iNum)
 Führt den Handler für einen speziellen Interrupt aus.
 InterruptStorage ()
 Standardkonstruktor.

Geschützte, statische Methoden

static bool iNum2Index (int iNum, unsigned int &index)

Geschützte Attribute

InterruptHandlermHandler [mMaxINum-mMinINum]
 Array von Zeigern auf Handler-Objekte.
Panic panic

Statische, geschützte Attribute

static const int mMaxINum = MAX_INTERRUPT_NUMBER
static const int mMinINum = MIN_INTERRUPT_NUMBER

Ausführliche Beschreibung

Administrationseinheit für die Interruptweitergabe.

Diese Klasse abstrahiert die Verwaltung und Ausführung von Interrupts. Sie ermöglicht dem System für jeden Hardware- und jeden Softwareinterrupt eine entsprechende Behandlungsroutine zu vergeben und auszuführen.

Definiert in Zeile 37 der Datei interruptstorage.h.

Beschreibung der Konstruktoren und Destruktoren

InterruptStorage::InterruptStorage ( )

Standardkonstruktor.

Er initialisiert das Array von Handler-Zeigern mit dem Panic -Handler.

Definiert in Zeile 28 der Datei interruptstorage.cc.

Dokumentation der Elementfunktionen

void InterruptStorage::assign ( int  iNum,
InterruptHandler handler 
)

bindet ein InterruptHandler -Objekt an einen speziellen Interrupt

Parameter
iNumZahl des Interrupts, welche mit dem Handler behandelt werden soll
handlerReferenz auf den Handler für den Interrupt

Erneute Implementation in InterruptManager.

Definiert in Zeile 33 der Datei interruptstorage.cc.

Hier ist ein Graph, der zeigt, was diese Funktion aufruft:

bool InterruptStorage::currentInterrupt ( int &  iNum)

Fetch the currently active interrupt if there is one.

If an interrupt is currently active true is returned and its number is stored in iNum, otherwise false is returned and iNum is left untouched.

Parameter
iNuma reference to store the interrupt's number to
void InterruptStorage::handle ( int  iNum)

Führt den Handler für einen speziellen Interrupt aus.

Parameter
iNumNummer des aufgetretenen Interrupts

Definiert in Zeile 39 der Datei interruptstorage.cc.

Hier ist ein Graph, der zeigt, was diese Funktion aufruft:

Hier ist ein Graph der zeigt, wo diese Funktion aufgerufen wird:

bool InterruptStorage::iNum2Index ( int  iNum,
unsigned int &  index 
)
staticprotected

Definiert in Zeile 19 der Datei interruptstorage.cc.

Hier ist ein Graph der zeigt, wo diese Funktion aufgerufen wird:

Dokumentation der Datenelemente

InterruptHandler* InterruptStorage::mHandler[mMaxINum-mMinINum]
protected

Array von Zeigern auf Handler-Objekte.

Für jeden möglichen Interrupt soll ein Element vorgehalten werden. Mögliche CPU exceptions können maskiert werden in dem MIN_INTERRUPT_NUMBER auf den kleinsten zu verwaltenden Interrupt gesetzt wird.

Definiert in Zeile 63 der Datei interruptstorage.h.

const int InterruptStorage::mMaxINum = MAX_INTERRUPT_NUMBER
staticprotected

Größte mögliche Interruptnummer

Definiert in Zeile 42 der Datei interruptstorage.h.

const int InterruptStorage::mMinINum = MIN_INTERRUPT_NUMBER
staticprotected

Kleinste mögliche Interruptnummer

Definiert in Zeile 46 der Datei interruptstorage.h.

Panic InterruptStorage::panic
protected

Ein Panic-Handler für unerwartet Interrupts

Definiert in Zeile 51 der Datei interruptstorage.h.


Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Dateien: