
Systemkomponenten. Mehr ...
Aufzählungen | |
enum | Device { timer = 0, keyboard = 1, com1 = 4, com2 = 3, com3 = 4, com4 = 3, floppy = 6, lpt1 = 7, rtc = 8, ps2mouse = 12, ide1 = 14, ide2 = 15 } |
Historische Anordnung der Interruptleitungen (PIC) | |
Funktionen | |
bool | init () |
Führt Systemerkennung aus. Mehr ... | |
uint8_t | getIOAPICSlot (System::Device device) |
Liefert die Nummer des Pins, an dem das Gerät device hängt. Mehr ... | |
int | getCPUID () |
Liefert die CPUID der aktuellen CPU. Mehr ... | |
void * | getIOAPICAddress () |
Abfragen der während des Bootvorgangs ausgelesene Addresse des IOAPICs. Mehr ... | |
uint8_t | getIOAPICID () |
Abfragen der während des Bootvorgangs ausgelesene ID des IOAPICs. Mehr ... | |
void | setupThisProcessor () |
Initialisiere den Prozessor. Mehr ... | |
unsigned | getNumberOfCPUs () |
Abfragen der CPU Anzahl. Mehr ... | |
unsigned | getNumberOfOnlineCPUs () |
Gibt die Anzahl der erfolgreich gebooteten CPUs zurück. Mehr ... | |
bool | isOnlineCPU (uint8_t cpu) |
Gibt an ob die gegegebene CPU erfolgreich gebootetet ist. Mehr ... | |
uint8_t | getLogicalLAPICID (uint8_t cpu) |
Liefert die logische ID des LAPICs der übergebenen cpu. Mehr ... | |
Variablen | |
const unsigned | LAPIC_MAX = CPU_MAX |
Systemkomponenten.
void * System::getIOAPICAddress | ( | ) |
Abfragen der während des Bootvorgangs ausgelesene Addresse des IOAPICs.
uint8_t System::getIOAPICID | ( | ) |
Abfragen der während des Bootvorgangs ausgelesene ID des IOAPICs.
uint8_t System::getIOAPICSlot | ( | System::Device | device | ) |
Liefert die Nummer des Pins, an dem das Gerät device hängt.
uint8_t System::getLogicalLAPICID | ( | uint8_t | cpu | ) |
Liefert die logische ID des LAPICs der übergebenen cpu.
Die logische ID der LAPICs wird von uns beim Boot-Vorgang so initialisiert, dass genau ein Bit pro CPU gesetzt ist. Dabei ist in der logischen ID des LAPICs von CPU 0 Bit 0 gesetzt, in der ID des LAPICs von CPU 1 Bit 1, usw.
cpu | Die abzufragende CPU |
unsigned System::getNumberOfCPUs | ( | ) |
Abfragen der CPU Anzahl.
unsigned System::getNumberOfOnlineCPUs | ( | ) |
Gibt die Anzahl der erfolgreich gebooteten CPUs zurück.
bool System::init | ( | ) |
Führt Systemerkennung aus.
Hier wird die ACPI-Tabelle gesucht und ausgewertet. Diese Funktion erkennt ein eventuell vorhandenes Mehrprozessorsystem. Nach erfolgter Erkennung können die Anzahl der CPUs mit Hilfe der Methode System::getNumberOfCPUs() abgefragt werden.
bool System::isOnlineCPU | ( | uint8_t | cpu | ) |