Lecture Content
CS180_L_01 The 3 big concepts - The 3 big concepts that govern Operating Systems
CS180_L_02 OS Overview - An overview of the components of a typical OS
CS180_L_03 Processes 1 - Process Basics - What is a process, what do they contain, and how does the OS treat them?
CS180_L_04 Processes 2 - Fork, Wait, and Exec - Using the Fork, Wait, and Exec system calls in Linux
CS180_L_05 Processes 3 - IPC via Shared Memory - Commands and MAN pages for Shared Memory in Linux
CS180_L_06 Threads 1 - Thread Basics - Intro to threads, which we cover further in the Textbook and Meads notes
CS180_L_07 Paging and Page Tables - Paging and Page Tables, why we need them, and how they work
CS180_L_08 Scheduling - Virtualizing the CPU - How we virtualize the CPU via scheduling algorithms
(No L9 right now, please ignore)
CS180_L_10 Synchronization - Synchronization Primitives, including Mutexes and Semaphores
Extras
Beej’s guide to Interprocess Communication - A good primer on the myriad IPC methods, including Shared Memory, Sockets, Memory mapped files, and Pipes!
Tutorial Content
Tutorial - WSL Install and Visual Studio Instructions - How to install WSL and use it in Visual Studio