df52b4aca2 | ||
---|---|---|
src | ||
tools | ||
.gitignore | ||
Makefile | ||
Makefile.common | ||
README.md |
README.md
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 :
- Protected mode (loading gdt)
- Manage interrupt (loading idt and enabling interrupt)
- Manage IRQ (enable PIC)
- Running and Userland (TSS)
- 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 Developer’s Manual, Volume 3A: System Programming Guide, Part 1: https://www.intel.com/content/www/us/en/developer/articles/technical/intel-sdm.html