BreaDOS is a hobby OS with built-in bread.
- Load kernel to physical 1 MiB address
- Enable long mode
- Nag on 32-bit systems
- Enable paging
- Map kernel to 0xFFFFFFFF80000000 in virtual address space
- Map stack to the top of virtual address space
- VGA text mode driver
- Rye bread
- Interrupt handling
- PS/2 driver
- Memory manager
- ATA/AHCI drivers
- FAT16 filesystem driver
- Own filesystem driver?
- Usermode
- Multitasking
- VGA video mode driver
- Vesa VBE 2.0/3.0 driver
- PCI driver
- USB driver
- Ethernet driver
- SMP
$ ./setup.sh
$ ninja -C build
setup.sh downloads required tools (cross-compiler, GRUB, binutils) and compiles them. If setup.sh fails due to flaky internet connection, you can just restart it once you can actually download files.
$ qemu-system-x86_64 -cdrom build/breados.iso
The version 3 of the GNU General Public License applies. Please see License File for more information.