A hobby operating system built in C for learning and experimentation
Previously, I worked on OS-1, which was a simple kernel written in asm. It was running in 16 bit real mode.
This OS is an increment of OS-1. It is written in C and runs in 32 bit protected mode.
I will be jotting down my learnings and progress here:
- IDT
- PIC remap
- Timer interrupt
- Keyboard driver
- Screen driver (scroll + cursor)
- Simple terminal
- Physical memory allocator
- Paging (identity map)
- kmalloc (dynamic alloc)
- Kernel heap
- FAT12 file system
- ELF loader
- Load & run C programs
At this point, your OS is capable of:
- Running apps
- Rendering graphics
- Reading files
