Wrap Up

Operating Systems as an Academic Exercise vs the Real Thing

Booting an operating system

Process management (abstract data types, algorithms, efficiency --e.g., goto)

Process creation

System calls

Synchronization mechanisms -- why an operating system feature?

The Scheduler -- modifying an operating system

The file system -- need for a virtual file system

Device drivers -- extending an operating system

Interprocess communication -- counterpoint:  threads.

Memory management -- virtual memory

Networking

Packet handling -- the OSI model

Linking and loading -- compilers and the operating system

Many other things

exception handling

distributed systems

security

...