CS 194: Advanced Operating Systems Structures and Implementation
CS 194: Advanced Operating Systems Structures and Implementation (Spring 2013, UC Berkeley). Instructor: Professor John Kubiatowicz. The purpose of this course is
to teach the design of Operating Systems through both academic study and by making modifications to a modern OS (Linux). Topics we will cover include concepts of
operating systems and systems programming; utility programs, subsystems, multiple-program systems; processes, interprocess communication, and synchronization; memory allocation,
segmentation, paging; loading and linking, libraries; resource allocation, scheduling, performance evaluation; I/O systems, storage devices, file systems; basic networking,
protocols, and distributed file systems, protection, security, and privacy.
Lecture 12 - Dominant Resource Fairness (DRF), Two-Level Scheduling |
|
Go to the Course Home or watch other lectures:
Lecture 01 - What is an Operating System? |
Lecture 02 - TDD (Test-Driven Design), BDD (Behavior-Driven Design), and all that |
Lecture 03 - OS Structure: Monolithic, Microkernel, Exokernel, Multikernel |
Lecture 04 - OS Structure (cont.): Modern Architecture |
Lecture 05 - Processes, Fork, Exec, Interprocess Communication/Optimization |
Lecture 06 - Parallelism and Synchronization |
Lecture 07 - Synchronization and Scheduling Review |
Lecture 08 - Synchronization Approaches |
Lecture 09 - Synchronization (cont.), Scheduling Review |
Lecture 10 - Scheduling (cont.), Real-Time Scheduling |
Lecture 11 - Scheduling (cont.), Real-Time Scheduling |
Lecture 12 - Dominant Resource Fairness (DRF), Two-Level Scheduling |
Lecture 13 - Two-Level Scheduling (cont.), Segmentation/Paging/Virtual Memory |
Lecture 14 - Segmentation, Paging, Virtual Memory |
Lecture 15 - Virtual Memory and Paging |
Lecture 16 - Virtual Memory and Paging (cont.), Devices |
Lecture 17 - Device Drivers: Slab Allocator |
Lecture 18 - Device Drivers (cont.): IO Buses, Interrupts, Device Driver Structure |
Lecture 19 - Disk Modeling, File Systems Intro |
Lecture 20 - File Systems (cont.): Reliability, Journaling, Durability, Scheduling |
Lecture 21 - File Systems (cont.): Distributed Storage, File Cache, Virtual Filesystem Switch |
Lecture 22 - Distributed File Systems (cont.): VFS Layer, Application-Specific File Systems |
Lecture 23 - Application-Specific File Systems, Deep Archival Storage, Security and Protection |
Lecture 24 - Security and Protection (cont.) |
Lecture 25 - The Swarm, Extreme Distributed Storage, Quantum Computing |