OOStuBS/MPStuBS
main.cc-Dateireferenz

Enthält mit den main() und main_ap() Funktionen den Startpunkt für das System. Mehr ...

#include "machine/apicsystem.h"
#include "machine/lapic.h"
#include "debug/output.h"
#include "device/cgastr.h"
#include "user/app1/appl.h"
#include "user/app2/kappl.h"
#include "machine/ioapic.h"
#include "machine/cpu.h"
#include "machine/plugbox.h"
#include "syscall/guarded_keyboard.h"
#include "guard/guard.h"
#include "thread/scheduler.h"
#include "thread/thread.h"
#include "device/watch.h"
#include "thread/assassin.h"
#include "meeting/bellringer.h"
#include "thread/idlethread.h"
#include "thread/wakeup.h"
#include "fs/vfs.h"
#include "fs/ramdisk.h"
#include "syscall/guarded_vesagraphics.h"
#include "user/vesa/example.h"
Include-Abhängigkeitsdiagramm für main.cc:

Funktionen

int main ()
 Einsprungpunkt ins System. Mehr ...
 
int main_ap ()
 Einsprungpunkt für Applikationsprozessoren. Mehr ...
 

Variablen

CGA_Stream dout_CPU0 (0, 39, 17, 20)
 Debugausgabefenster für die CPU 0 Zeigt Ausgaben zur Fehlersuche wie DBG << "Var = " << var << endl in einem separaten Debugfenster für die entsprechende CPU an. Mehr ...
 
CGA_Stream dout_CPU1 (40, 79, 17, 20)
 Debugausgabefenster für die CPU 1. Mehr ...
 
CGA_Stream dout_CPU2 (0, 39, 21, 24)
 Debugausgabefenster für die CPU 2. Mehr ...
 
CGA_Stream dout_CPU3 (40, 79, 21, 24)
 Debugausgabefenster für die CPU 3. Mehr ...
 

Ausführliche Beschreibung

Enthält mit den main() und main_ap() Funktionen den Startpunkt für das System.

Dokumentation der Funktionen

◆ main()

int main ( )

Einsprungpunkt ins System.

Dieser Code wird nur auf der Boot-CPU (diejenige mit der ID 0) ausgeführt.

◆ main_ap()

int main_ap ( )

Einsprungpunkt für Applikationsprozessoren.

Code in dieser Funktion wird auf allen Applikationsprozessoren ausgeführt (entspricht allen CPUs außer derjenigen mit der ID 0).

Variablen-Dokumentation

◆ dout_CPU0

CGA_Stream dout_CPU0(0, 39, 17, 20)

Debugausgabefenster für die CPU 0 Zeigt Ausgaben zur Fehlersuche wie DBG << "Var = " << var << endl in einem separaten Debugfenster für die entsprechende CPU an.

Während für OOStuBS nur ein Objekt dout angelegt werden muss, ist bei MPStuBS ein Objekt je CPU mit dem Namen dout_CPUx notwendig

Dieses sollte im Idealfall überschneidungsfrei unterhalb des normalen Ausgabefensters liegen und mindestens 3 Zeilen lang sein. Zwei Debugfenster können problemlos nebeneinander liegen.

◆ dout_CPU1

CGA_Stream dout_CPU1(40, 79, 17, 20)

Debugausgabefenster für die CPU 1.

Siehe auch
dout_CPU0

◆ dout_CPU2

CGA_Stream dout_CPU2(0, 39, 21, 24)

Debugausgabefenster für die CPU 2.

Siehe auch
dout_CPU0

◆ dout_CPU3

CGA_Stream dout_CPU3(40, 79, 21, 24)

Debugausgabefenster für die CPU 3.

Siehe auch
dout_CPU0