Series 5: Systems Programming

The capstone series. Everything you've learned — Unix, C, pointers, memory, structs — comes together as you learn how programs create other programs, communicate through pipes, and respond to signals. This is what makes C the language of operating systems.

Lessons

5.1: What Are System Calls and How Do Processes Fork?

~22 min · Week 10 · Prereq: Lessons 2.2, 3.7

fork(), exec(), wait(). Creating child processes and understanding how every program you’ve ever run was launched.


5.2: How Do Pipes and Signals Enable Inter-Process Communication?

~22 min · Week 10 · Prereq: Lessons 5.1, 1.5

pipe(), signal(), kill(). The shell’s | operator, built from scratch in C. How processes talk to each other.


5.3: How Does C Synthesize Java, Unix, and Systems Concepts?

~20 min · Week 10 · Prereq: All previous lessons

Course synthesis. How Java, Unix, and C connect. What you’ve learned, what comes next, and why this foundation matters.


Related resources:

Previous series: ← Series 4: Advanced C