kernel: Rewrite from scratch since the current thing is held by duct tape (lmao)
This commit is contained in:
parent
d017412af5
commit
a1e27c2730
117 changed files with 285 additions and 13622 deletions
42
README.md
Executable file → Normal file
42
README.md
Executable file → Normal file
|
@ -1,39 +1,3 @@
|
|||
# Soaplin
|
||||
The Soaplin kernel is a new Unix-like operating system kernel.
|
||||
|
||||
## Features
|
||||
* x86_64 support (kinda)
|
||||
* Memory management (VMM/PMM/VMA/kmalloc)
|
||||
* Simple pre-emptive scheduler
|
||||
* Ring 3 (user mode) support
|
||||
* ELF loader
|
||||
* ACPI
|
||||
* Symetric Multiprocessing (It runs code, but the scheduler is running on 1 processor.)
|
||||
* Recovers from a faulty userspace process.
|
||||
|
||||
## Nearly done
|
||||
* Virtual File System
|
||||
|
||||
## In the works
|
||||
* FPU support
|
||||
|
||||
## To come
|
||||
* RTC support
|
||||
* EXT2 driver
|
||||
* FAT32 driver
|
||||
* TAR-based init ram disk
|
||||
* Video driver for Bochs graphics adapter, and the VMware display adapter.
|
||||
|
||||
## Building
|
||||
To build Soaplin, you must ensure you have these:
|
||||
* The Netwide Assembler (nasm)
|
||||
* A compiler (both GCC & Clang works!) (In the future, a custom toolchain would be built.)
|
||||
* A linker (both GNU LD & LLVM linker works too!)
|
||||
|
||||
Clone the repo, and run "make" in it!
|
||||
|
||||
## Acknowledgements
|
||||
Thanks to all these people :heart:
|
||||
* Limine contributors: The Limine bootloader, used for kicking up Soaplin
|
||||
* Kevin Alavik (kevinalavik): VMAs implementation
|
||||
* Astrido (asterd-og): IOAPIC/LAPIC (from ZanOS)
|
||||
# Soaplin (rewrite)
|
||||
This is a carefully rewritten version of Soaplin, that should be held with super glue instead of
|
||||
0.99$ duct tape bought on TEMU.
|
Loading…
Add table
Add a link
Reference in a new issue