The program that starts programs

The kernel handing each program its own walled-off memory and its own turn on the chip. This lesson builds the ordinary program that asks the kernel for those walls, one command at a time: the shell.
Before you start. A process is one running program, walled off so nothing else can touch its memory. The kernel is the one program that can make new ones (Processes, Threads & the Kernel). Picture each process with numbered doors: when it opens a file, the kernel hands it a number, and the program reads and writes through that door. The numbers are file descriptors (I/O, Interrupts & the Bus). Part one of this build made a small machine that runs instructions (Build a stack machine). This part builds the program that starts other programs.