Skip to main content
CourseintermediateFree

Stanford CS110: Principles of Computer Systems

Stanford University

Stanford systems course whose multiprocessing unit covers fork, waitpid, execvp, signal handling, and pipes as an IPC mechanism, reinforced by assignments that build a shell and a network proxy. Lecture PDFs, code examples, and lab handouts are publicly downloadable.

Visit resource

More resources on Process Management

CourseFree

CS162: Operating Systems and Systems Programming

UC Berkeley's upper-division operating systems course, with lectures, projects and exams covering processes and threads, synchronization, CPU scheduling, virtual memory, file systems, I/O and networking. Students build kernel features in the Pintos teaching OS and understand how operating systems work internally.

PaperFree

The Linux Scheduler: a Decade of Wasted Cores

EuroSys 2016 study showing the Linux CFS load balancer left cores idle for seconds while runnable threads waited. Documents four distinct bugs, measures the resulting slowdowns on real workloads, and describes the tracing tools and visualizers built to expose them.

WebsiteFree

Linux Kernel Scheduler Documentation

Kernel maintainers' own documentation of Linux scheduling internals: the CFS design and its EEVDF successor, deadline and real-time classes, nice-level design, group scheduling and bandwidth control, scheduler domains, capacity- and energy-aware placement, and the tunables exposed under debugfs.

BookPaid

Linux Kernel Development, 3rd Edition

Explains how the kernel itself implements processes: the task_struct descriptor and process list, fork() via copy-on-write and clone(), kernel threads, and the Completely Fair Scheduler's runqueue, virtual runtime accounting, preemption points, and context switching.

BookPaid

The Linux Programming Interface

Kerrisk's 1552-page reference on the Linux and POSIX system call interface, with sustained chapters on process creation, program execution, process termination, monitoring child processes, signals, and interprocess communication via pipes, FIFOs, message queues, semaphores, and shared memory.

WebsiteFree

osdev.org

OSDev.org is a community-driven resource and wiki for operating system development. It offers tutorials, articles, and sample code on topics like kernels, bootloaders, memory management, drivers, and other low-level OS concepts, plus forums for discussion.

See all Process Management resources →