- Basic project and bootloader setup using Limine
- Terminal Emulator using Flanterm
printfusing nanoprintf- Serial output using custom UART 16650 driver
- Global Descriptor Table
- Interrupt Handling
- Hardware Interrupts using the Intel 8259
- Clock using CMOS RTC and PIT
- Physical Memory Manager (bitmap frame allocator)
- Virtual Memory Manager and Paging
- Initial Ramdisk using UStar as the filesystem
- Virtual Filesystem implementation
- System calls
- ELF Parsing and Loading
- Switching to ring 3 (usermode)
- Standard Library for userspace (Both for Rust and C)
- Disk Drivers such as ATA PIO or NVMe
- ACPI Table Parsing (Probably using uACPI)
- ACPI Shutdown
- Initialization System
- [x] Basic project and bootloader setup using Limine
- [x] Terminal Emulator using Flanterm
- [x] `printf` using nanoprintf
- [x] Serial output using custom UART 16650 driver
- [x] Global Descriptor Table
- [x] Interrupt Handling
- [x] Hardware Interrupts using the Intel 8259
- [ ] Clock using CMOS RTC and PIT
- [x] Physical Memory Manager (bitmap frame allocator)
- [ ] Virtual Memory Manager and Paging
- [ ] Initial Ramdisk using UStar as the filesystem
- [ ] Virtual Filesystem implementation
- [ ] System calls
- [ ] ELF Parsing and Loading
- [ ] Switching to ring 3 (usermode)
- [ ] Standard Library for userspace (Both for Rust and C)
- [ ] Disk Drivers such as ATA PIO or NVMe
- [ ] ACPI Table Parsing (Probably using uACPI)
- [ ] ACPI Shutdown
- [ ] Initialization System