Ein einfaches X86 -Betriebssystem in C. geschrieben in C.
Der Kernel wird durch GRUB2 beladen. Die Startkonfiguration befindet sich in rootfs/boot/grub/grub.cfg .
Der Kernel wird durch GRUB2 unter Verwendung des Multiboot -2 -Protokolls beladen. Der Kernel wird bei 0x100000 geladen und im 32-Bit-Modus geladen.
Der Kernel analysiert den MBR und findet eine eigene Trennwand. Es unterstützt keine erweiterten Partitionen. Dann richtet es das Dateisystem ein und montiert es.
Der Kernel unterstützt FAT12 und FAT16. Es kann Dateien und Verzeichnisse lesen. Der Kernel kann nicht an FAT12/16 schreiben.
Der Kernel unterstützt ext2. Es kann Dateien und Verzeichnisse lesen. Der Kernel kann nicht an ext2 schreiben.
Der Kernel unterstützt die Syscalls über die int 0x80 -Anweisung. Derzeit werden die folgenden Systeme unterstützt:
sys_writesys_readsys_opensys_closesys_statsys_getpidsys_forksys_execvesys_exitDer Kernel kann Elf -Dateien analysieren und ausführen. Es kann auch Debug -Symbole von sich selbst laden.
Derzeit ist der Kernel als einzelner binär gebaut. In Zukunft wird es in Module aufgeteilt. Der Kernel lädt die Module aus dem Dateisystem.
Der Kernel unterstützt die Intel 82540EM -Serie von Netzwerkkarten. Es kann Pakete senden und empfangen. Die folgenden Protokolle werden unterstützt:
Der Kernel ist auf einer primitiven LIBC gebaut. Es befindet sich in kernel/libc . Es gibt auch ein system/libc , das von den Userspace -Programmen verwendet wird und in Zukunft eine gemeinsame Bibliothek generieren wird.