Operating System
The CSE 309 lecture slides, rebuilt as interactive decks: what an operating system does, system calls and OS structure, processes and IPC, main memory and paging, virtual memory and page replacement, threads, CPU scheduling, synchronization and deadlocks. Every chapter keeps the content of the class slides and adds diagrams you can explore, simulators, worked examples, practice and a quiz.
Inside a chapter: ← → or Space to move, F for full screen, M for the slide list. The pen button lets you draw on any slide. 9 chapters · 483 slides.
Midterm syllabus
Chapters 1, 2, 3, 9 and 10 · lectures 1–12- 1Chapter 1 · Lectures 1–3IntroductionWhat an operating system does, how it runs (interrupts, dual mode, timer), its process, memory and storage management, protection, virtualization, distributed systems, computing environments and open-source OSes.51 slides · Multiprogramming timeline and dual-mode stepper
- 2Chapter 2 · Lectures 4–6Operating-System ServicesThe services an OS provides, CLI, GUI and touch interfaces, system calls and APIs, the six types of system calls, system programs, design goals, monolithic, layered, microkernel, modular and hybrid structures, booting and debugging.62 slides · Copy-file system-call stepper and a sorting game
- 3Chapter 3 · Lectures 7–8ProcessesThe process concept, process states and the PCB, scheduling queues and context switches, process creation and termination with fork(), exec() and wait(), and interprocess communication by shared memory and message passing.63 slides · State machine, fork/exec runner, buffer and message tools
- 9Chapter 9 · Lectures 9–10Main MemoryBase and limit protection, contiguous allocation with first-, best- and worst-fit, fragmentation, paging and address translation, the TLB and effective access time, page-table structures (hierarchical, hashed, inverted) and swapping.64 slides · Allocator, paging translator, TLB and address-split tools
- 10Chapter 10 · Lectures 11–12Virtual MemoryWhy programs need not be fully in memory, demand paging and page faults, the steps of page replacement, and the replacement algorithms FIFO (with Belady’s anomaly), Optimal, LRU, second chance, enhanced second chance, LFU and MFU.41 slides · Page-replacement simulator and Belady’s anomaly chart
Final syllabus
Chapters 4, 5, 6 and 8 · lectures 14–25- 4Chapter 4 · Lecture 14Threads & ConcurrencyWhy applications use threads, concurrency versus parallelism, Amdahl’s law, user and kernel threads, the many-to-one, one-to-one, many-to-many and two-level models, Pthreads, implicit threading, threading issues and Windows and Linux threads.51 slides · Amdahl’s law chart and multithreading-model explorer
- 5Chapter 5 · Lectures 15–18CPU SchedulingCPU–I/O bursts, preemptive and nonpreemptive scheduling, scheduling criteria, FCFS, SJF, SRTF, round robin, priority, priority with RR, multilevel and multilevel feedback queues, and evaluation by deterministic modelling, Little’s formula and simulation.51 slides · Scheduling simulator, live Gantt charts and MLFQ
- 6Chapter 6 · Lectures 18–20Synchronization ToolsRace conditions, the critical-section problem and its three requirements, interrupt-based and software solutions, Peterson’s solution, test_and_set and compare_and_swap, atomic variables, mutex locks, semaphores and monitors with condition variables.45 slides · Race condition, Peterson and semaphore step-throughs
- 8Chapter 8 · Lectures 21–25DeadlocksThe system model, the four necessary conditions, resource-allocation graphs, prevention, avoidance with safe states and the Banker’s algorithm, detection with wait-for graphs and the detection algorithm, and recovery by termination or preemption.55 slides · Banker’s algorithm, detection and graph checker
Simulators in this course
Every number in the slides’ worked examples can be reproduced, and changed, in these tools.
CPU scheduling
FCFS, SJF, SRTF, Round Robin, priority and priority + RR with Gantt charts, waiting and turnaround times.
Page replacement
FIFO, Optimal, LRU, second chance, LFU and MFU, and Belady’s anomaly.
Banker’s algorithm
Safety algorithm, resource requests and deadlock detection, step by step.
Paging
Address translation, the TLB, fragmentation and first/best/worst fit.
fork( ) and exec( )
The class handout’s programs run line by line, with each process in its own pane.
Synchronization
A race condition, Peterson’s solution and semaphores you can step through.