Kaynağa Gözat

skeleton for lesson 14

Carlos Fenollosa 10 yıl önce
ebeveyn
işleme
f1fa21aa63
1 değiştirilmiş dosya ile 42 ekleme ve 0 silme
  1. 42 0
      14-checkpoint/README.md

+ 42 - 0
14-checkpoint/README.md

@@ -0,0 +1,42 @@
+*Concepts you may want to Google beforehand: monolithic kernel, microkernel*
+**Goal: Pause and organize our code a little bit**
+
+Maybe you didn't realize it, but you already have your own kernel
+running!
+
+However, it does very little, just print an 'X'. Now is the time to stop for
+a moment and organize the code into folders, create a scalable Makefile for future code,
+and think on a strategy.
+
+Take a look at the new folder structure. Most of the files have been symlinked
+from previous lessons, so if we have to change them at some point, it will be
+a better idea to remove the symlink and create a new file.
+
+
+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
+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
+we'll add a lesson "15-b" with a microkernel design. Who knows.