Skip to content

Latest commit

 

History

History
54 lines (42 loc) · 1.17 KB

README.md

File metadata and controls

54 lines (42 loc) · 1.17 KB

BreaDOS

BreaDOS is a hobby OS with built-in bread.

Features

  • 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

Compilation

$ ./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.

Running in QEMU

$ qemu-system-x86_64 -cdrom build/breados.iso

Authors

License

The version 3 of the GNU General Public License applies. Please see License File for more information.