|
|
@ -52,29 +52,6 @@ Now is a good time to read some tutorial on `gdb` and learn super useful things
|
|
|
|
which will save us a lot of time in the future!
|
|
|
|
which will save us a lot of time in the future!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Strategy
|
|
|
|
|
|
|
|
--------
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
We will want to do many things with our OS:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- Handle screen output and keyboard input, for starters
|
|
|
|
|
|
|
|
- A tiny, basic `libc`
|
|
|
|
|
|
|
|
- Memory management
|
|
|
|
|
|
|
|
- Interrupt handling
|
|
|
|
|
|
|
|
- Write a filesystem to store files
|
|
|
|
|
|
|
|
- Create a very simple shell
|
|
|
|
|
|
|
|
- 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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
You may notice that, since this is a tutorial, we haven't yet discussed which kind
|
|
|
|
You may notice that, since this is a tutorial, we haven't yet discussed which kind
|
|
|
|
of kernel we will write. It will probably be a monolithic one since they are easier
|
|
|
|
of kernel we will write. It will probably be a monolithic one since they are easier
|
|
|
|
to design and implement, and after all this is our first OS. Maybe in the future
|
|
|
|
to design and implement, and after all this is our first OS. Maybe in the future
|
|
|
|