|
|
|
@ -58,6 +58,34 @@ trying to break it or replicate it with different commands.
|
|
|
|
|
TL;DR: First read the README on each folder, then the code files. If you're brave, try to code them yourself.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Strategy
|
|
|
|
|
--------
|
|
|
|
|
|
|
|
|
|
We will want to do many things with our OS:
|
|
|
|
|
|
|
|
|
|
- Boot from scratch, without GRUB - DONE!
|
|
|
|
|
- Enter 32-bit mode - DONE
|
|
|
|
|
- Jump from Assembly to C - DONE!
|
|
|
|
|
- Interrupt handling - DONE!
|
|
|
|
|
- Screen output and keyboard input - DONE!
|
|
|
|
|
- A tiny, basic `libc` which grows to suit our needs - DONE!
|
|
|
|
|
- Memory management
|
|
|
|
|
- Write a filesystem to store files
|
|
|
|
|
- Create a very simple shell
|
|
|
|
|
- User mode
|
|
|
|
|
- Maybe we will write a simple text editor
|
|
|
|
|
- Multiple processes and scheduling
|
|
|
|
|
|
|
|
|
|
Probably we will go through them in that order, however it's soon to tell.
|
|
|
|
|
|
|
|
|
|
If we feel brave enough:
|
|
|
|
|
|
|
|
|
|
- A BASIC interpreter, like in the 70s!
|
|
|
|
|
- A GUI
|
|
|
|
|
- Networking
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Contributing
|
|
|
|
|
------------
|
|
|
|
|
|
|
|
|
|