Die Funktion guardian stellt die zentrale Unterbrechungsbehandlung
dar. Nach Auftreten einer Unterbrechung springt der Prozessor
zunächst die in der Vektortabelle eingetragene Wrapper-Routine
an. Diese ruft nun guardian auf, wobei die Nummer der entsprechenden
Unterbrechung als Parameter weitergereicht wird. Alle Unterbrechungen
führen also stets zur Aktivierung von guardian.
Funktionen
void guardian (unsigned int slot)
Die Funktion guardian ist für die gerätespezische
Unterbrechungsbehandlung zuständig. Dazu wird mit Hilfe der
Unterbrechungsnummer in dem globalen Plugbox Objekt
plugbox das zuständige Gate-Objekt ermittelt.
Entsprechend dem Pro-/Epilogmodell muss nun der entsprechende Prolog und ggf. der zugehörige Epilog ausgeführt bzw. für die spätere Ausführung vermerkt werden.