System Design Space
Knowledge graphSettings

Updated: February 23, 2026 at 4:35 PM

Modern Operating Systems (short summary)

mid

Official page

Modern Operating Systems

Book page on Pearson.

Open

Modern Operating Systems

Authors: Andrew S. Tanenbaum, Herbert Bos
Publisher: Pearson, 2023 (5th Edition)
Length: ~1136 pages

Processes and threads, scheduling, memory, file systems, virtualization and security.

Modern Operating Systems - original coverOriginal

Key topics

Processes and planning

Context switches, CPU scheduling, priorities and multitasking.

Memory and virtualization

Paging, segmentation, virtual memory, address spaces.

File systems

Design, caching, metadata, reliability.

Parallelism

Threads, synchronization, deadlocks and race conditions.

Safety

Access patterns, isolation, privileges and attacks.

System services

Drivers, IPC, system calls and resource management.

OS architectural pillars

Scheduling

How the OS allocates CPU between threads and processes.

Memory

Virtual memory, pages, caches and address management.

I/O

File systems, disks, drivers and buffering.

Isolation

Users, rights, sandbox and security.

System call path

User space

The application calls a system function.

Kernel boundary

Transition through syscall, checking rights and context.

Kernel subsystems

Scheduler, virtual memory, drivers.

I/O + devices

Access the disk/network and return a response.

OS metrics in production

Load AverageCPU pressure
Context switchesscheduling
Page faultsmemory
I/O waitstorage
These metrics directly explain why services sometimes “slow down” despite seemingly normal resources.

What is useful to take into account in system design?

  • Understanding queues at the OS level and their impact on latency.
  • Knowing virtual memory helps explain spikes and OOM.
  • Understanding the role of file systems is important for storage components.
  • The user/kernel space boundaries provide a correct failure model.

Why does an engineer need System Design?

  • Understanding processes and flows helps design competitive services.
  • Knowledge of virtual memory and caches explains latency and spikes.
  • Understanding file systems is useful when designing storage components.
  • Understanding user/kernel boundaries is useful for assessing security and isolation.

Who is it suitable for?

For those who want to strengthen the foundation: backend engineers, SREs, system developers and everyone who works with infrastructure and performance-critical systems.

Related chapters

Enable tracking in Settings

System Design Space

© 2026 Alexander Polomodov