FAU UnivIS
Techn. Fak. Dep. Informatik
debug.h-Dateireferenz

Enthält Debugmacros, um Debugausgaben auf einen eigenen Screen umzuleiten. Mehr ...

#include "device/cgastr.h"
#include "machine/apicsystem.h"
Include-Abhängigkeitsdiagramm für debug.h:
Dieser Graph zeigt, welche Datei direkt oder indirekt diese Datei enthält:

Makrodefinitionen

#define DBG
 

Variablen

CGA_Stream dout_CPU0
 
CGA_Stream dout_CPU1
 
CGA_Stream dout_CPU2
 
CGA_Stream dout_CPU3
 
APICSystem system
 

Ausführliche Beschreibung

Enthält Debugmacros, um Debugausgaben auf einen eigenen Screen umzuleiten.

Für den Uniprozessorfall reicht es ein CGA_Stream Objekt für Debugausgaben (dout) anzulegen. Für den Multiprozessorfall soll jedoch für jede CPU ein Objekt für Debugausgaben angelegt werden. Das Debugmacro muss dann mit Hilfe von APICSystem::getCPUID() die Ausgabe auf das entsprechende Objekt umleiten. Dazu kann der ? : Operator verwendet werden.

Makro-Dokumentation

#define DBG
Wert:
((system.getCPUID() == 0) ? dout_CPU0 : \
((system.getCPUID() == 1) ? dout_CPU1 : \
((system.getCPUID() == 2) ? dout_CPU2 : dout_CPU3))) << "DBG: "
int getCPUID()
Liefert die CPUID der aktuellen CPU.
Definition: apicsystem.cc:288