Betriebssystemtechnik (OSE) - SS 2007
Aufgabe 2: Domänenanalyse - D7: Debugging und Monitoring
In dieser Teildomäne geht es um Features zur
Unterstützung bei der Fehlersuche (Debugging) und der
Systembeobachtung (Monitoring). Folgende Features könnten in
dieser Domäne gebraucht werden (ohne Anspruch auf Vollständigkeit!):
- Kontrollflussverfolgung
- Überprüfung des freien Halden- und Stapelspeichers und
geeignete Reaktion, wenn der Speicher knapp wird
- Aufzeichnung von Zeitstempeln zur Offline-Analyse von
Laufzeiten
- Überprüfung von Invarianten wie "der this Pointer darf
in einer Methode nie NULL sein".
- ...
Da die hier genannten Features durchweg sogenannte Querschneidende Belange (crosscutting concerns) sind, soll die spätere Implementierung mit Hilfe von Aspektorientierter Programmierung in AspectC++ erfolgen. AspectC++ wird in einer der nächsten Vorlesungen eingeführt.
Dadurch, das eure Features querschneidend sind, werdet ihr später relativ stark mit dem Code
anderer Gruppen konfroniert werden. Ihr sollte dann als "Vertreter
für aspektorientierte Programmierung" auftreten und die anderen
aufmerksam machen, wenn sich eine aspektorientierte Implementierung
bestimmter Features anbietet und sie überzeugen, eure Aspekte und
euer Lauzeitsystem zum Debuggen und Messen einzusetzen.