Lesson 1 of 7
What an OS Actually Does
An shares the hardware between many programs and keeps them from interfering with each other. This lesson covers its main jobs and the line between user programs and the kernel.
Three jobs. Abstraction: turn ugly hardware (disk sectors, network chips, interrupts) into clean concepts (files, sockets, processes). Multiplexing: share limited CPU, RAM, and disk among many programs that each think they own the machine. Protection: isolate programs from each other and the kernel from everyone, so a crashing game can't take your unsaved document with it.
The layer cake:
your app (Chrome, your Python script)
------------------------------------ user space
standard library (libc, CPython, JVM)
==================================== system call boundary
kernel: scheduler | memory | filesystems | drivers | network
------------------------------------
hardware: CPU, RAM, SSD, NIC, GPU
Everything above the ==== line can crash safely.
Everything below it runs with total power.The CPU itself enforces the boundary with privilege modes: kernel code runs in a privileged mode that can touch any and any device; your programs run in user mode, where dangerous instructions and other programs' memory are off-limits. Crossing the line happens only through system calls — the kernel's official .
Tip: use the ← and → keys to move between lessons.