LOS
From interrupts to processes: how a system runs.

A Linux-like kernel in C and x86 assembly covering virtual memory, a file system, system calls, drivers and scheduling; built by a team of four.
Problem
Building an operating system from the ground up turns the textbook abstractions of processes, memory and devices into real modules that have to work together.
Key decisions
- Kernel fundamentals
- Implemented virtual memory, a file system, terminals, interrupts and system calls.
- Scheduling & devices
- Wrote keyboard, RTC and PIT drivers, supporting multi-process switching and scheduling across multiple terminals.
Outcome
Delivered multi-process and multi-terminal support with kernel and user space isolated. The project was built by a team of four.
Related notes (Chinese)