32bit_kernel/README.md

22 lines
1.1 KiB
Markdown
Raw Normal View History

2023-09-04 14:14:06 +00:00
# Introduction
This kernel is written as a educative project. The goal is to have a kernel able to run a basic shell. To allow that, this kernel have to implement :
- [X] Protected mode (loading gdt)
- [X] Manage interrupt (loading idt and enabling interrupt)
- [X] Manage IRQ (enable PIC)
- [X] Running and Userland (TSS)
- [X] Let the userland call the kernel (syscall)
- [ ] Running multiple userland (ordonnanceur)
- [ ] Running elf binary
- [ ] Having a small libc and needed syscall to run the shell
- [ ] (Bonus) Having a basic visual interface (VGA ?)
This kernel has been written using :
- The tutorial Pépin OS - Réaliser son propre système (in french): https://michelizza.developpez.com/realiser-son-propre-systeme
- The educative k project from former EPITA (Engineering School) system laboratory LSE:
https://k.lse.epita.fr/
https://github.com/Galli24/kernel-k-project
- The ressources on the website OSDev:
https://wiki.osdev.org/Main_Page
- The in Intel® 64 and IA-32 Architectures, Software Developers Manual, Volume 3A: System Programming Guide, Part 1:
https://www.intel.com/content/www/us/en/developer/articles/technical/intel-sdm.html