Lec 3: OS structure

Lecture notes courtesy of Eddie Kohler, Frans Kaashoek, Robert Morris

Let's build an "OS" from scratch

Bootstrapping

Our simple Kernel

The principle of modularity

Our simple OS "works", but it's not modular. Modularity is the process of breaking a system into subsystems, or MODULES, that communicate at their interfaces. A good modularity can help programmers overcome challanges. The keys to good modularity are interface design and understanding the system goals and implementation requirements.

More abstractions for virtualizing computers: CPU

More abstractions for virtualizing computers: Memory

We will continue OS organizations next class with User/Kenel separation and process interactions.