Skip to content

⚙️ Operating Systems & Linux Kernel

Scheduling, memory management, drivers, and the code that runs before your code.

See also: Systems Track · C · Embedded Track


Courses

Course Platform Link
OS Engineering (MIT 6.S081) MIT OCW pdos.csail.mit.edu/6.828
Operating Systems (NPTEL, IIT Madras) NPTEL NPTEL
Linux Kernel Programming (NPTEL) NPTEL NPTEL
Linux Kernel Development (Bootlin) Free Slides/Labs bootlin.com/training/kernel
Advanced OS (Georgia Tech) Udacity (free) Udacity
Writing an OS in Rust Free Book os.phil-opp.com

Books (Free)

Book Link
OSTEP ostep.org
Linux Device Drivers (LDD3) lwn.net/Kernel/LDD3
Linux Insides 0xax.gitbooks.io/linux-insides
The Linux Kernel Module Programming Guide sysprog21.github.io/lkmpg

Resources

Resource Link
Kernel Newbies kernelnewbies.org
LWN.net lwn.net
Linux source (Bootlin Elixir) elixir.bootlin.com

Cross-references: C · Systems Track · Embedded Track

Additional Video Courses

📺 Top-rated OS lecture series from cs-video-courses.

Course Platform Institution
CS 162 Operating Systems and Systems Programming YouTube UC Berkeley
CS124 Operating Systems YouTube Caltech
ECE 344 Operating Systems YouTube U of Toronto (Jon Eyolfson)
CS6200 Introduction to Operating Systems YouTube Georgia Tech