An Operating System for x86 architectures. Written in C and assembly (Intel Syntax)
This project uses Makefiles with gcc, binutils and nasm to compile.
Tools you need:
gccldnasmobjcopyqemu-system-i386grub-filexorrisomformat
On arch linux:
# pacman -S gcc binutils nasm qemu-desktop grub xorriso mtools
Build and run the project
$ make
Remove build files
$ make clean
Disassemble the operating system
$ make dis
The bootloader is located in the boot/ git submodule.
The kernel is located in the kernel/ directory.
kmain() is the kernel entry and is implemented in the file kernel/kernel.c
Cpu architecture specific code is located in cpu/
The drivers are located in the drivers/ directory.
