Простая операционная система x86, написанная в C.
Ядро загружается Grub2. Конфигурация загрузки расположена в rootfs/boot/grub/grub.cfg .
Ядро загружается GRUB2 с использованием протокола MultiBoot 2. Ядро загружается в 0x100000 и загружается в 32-разрядном режиме.
Ядра анализирует MBR и находит свою собственную раздел. Он не поддерживает расширенные перегородки. Затем он настраивает файловую систему и поднимает ее.
Ядро поддерживает FAT12 и FAT16. Он может читать файлы и каталоги. Ядро не может написать в FAT12/16.
Ядро поддерживает ext2. Он может читать файлы и каталоги. Ядро не может написать в ext2.
Ядро поддерживает Syscalls через инструкцию int 0x80 . В настоящее время поддерживаются следующие Syscalls:
sys_writesys_readsys_opensys_closesys_statsys_getpidsys_forksys_execvesys_exitЯдро может анализировать файлы эльфов и выполнять их. Он также может загружать символы отладки с самого себя.
В настоящее время ядро построено как единственный бинар. В будущем он будет разделен на модули. Ядро загрузит модули из файловой системы.
Ядро поддерживает серию сетевых карт Intel 82540EM. Он может отправлять и получать пакеты. Поддерживаются следующие протоколы:
Ядро построено на вершине примитивного LIBC. Он расположен в kernel/libc . Существует также system/libc , которая используется программами пользователями и в будущем генерирует общую библиотеку.