K-Project is a minimal operating system kernel developed in C and Assembly as part of the LSE (Laboratoire Systèmes EPITA) curriculum.
This academic project introduces students to low-level systems programming and the core components of a modern kernel — entirely from scratch.
The kernel provides essential functionalities such as:
- Bootloader and Multiboot setup using GRUB
- Physical and virtual memory management with paging
- Interrupt Descriptor Table (IDT) configuration and hardware interrupt handling
- System call interface
- Round-robin scheduler
- Basic drivers for keyboard, screen (VGA), and serial ports
- User program loading via a simplified ELF parser
Development is done using QEMU, with no reliance on any external operating system or runtime — giving full control over the machine from boot to task execution.
This project offered hands-on insight into CPU architecture, memory models, hardware interfacing, and bare-metal programming — forming a strong foundation for understanding how real-world kernels like Linux operate at their core.
Note: Due to EPITA's academic policies, source code for this project is not publicly available.