introduction to multiprocessing, fork, **wait****pid**, execvp, process ids, inter-process communication, context switches, user versus supervisor mode.
protected address spaces, virtual memory, main memory as cache, virtual to physical address mapping.
concurrency versus parallelism, multiple cores versus multiple processors, concurrency issues with multiprocessing.
interrupts, faults, systems calls, signals, design and implementation of a simple shell.
virtualization as a general systems principle, with a discussion of processes, RAID, load balancers, AFS servers and clients.