The main goal of this project is to implement a 32 bits operating system from scratch!
- ⚓ An ASM boot code that loads the kernel using GRUB
- 📚 A minimal libc written in C
- ⚛️ A kernel written in C
- 🖵 A basic VGA display
- 🌈 Color support
- 🎬 A bootscreen with an animated 42 logo!
- 🖵 Multiscreen support
- 📶 On-screen status bar
- ⌨️ Keyboard support with shortcuts (US layout)
- ✏️ A minimal readline implementation
- 🔖 Some advanced printing functions like printf
Action | Shortcut |
---|---|
Clear the screen | Ctrl + L |
Erase the current line | Ctrl + U |
Switch cursor style | Ctrl + Q |
Scroll down | Down |
Switch to the next screen | Ctrl + Right |
Switch to the previous screen | Ctrl + Left |
Here is a simple example of how to build and run the project:
docker compose up -d --build
docker exec kfs make && make run
The kernel is documented using Doxygen. The documentation is available here.
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.