cs4414: Operating Systems

Classes

Class 1: What is an Operating System?
What is an Operating System? (9:16)
Does it have an Operating System? (12:49)
Operating Systems: Course Overview (15:34)
Introducing Rust (18:27)

Class 3: Zero to a Billion in 4.86 Years
Zero to a Billion in 4.86 Years (3:22)
From Chimps to Universal Machines (4:56)
The Race to Practical Machines (9:20)
The First Real Operating Systems (11:27)
From Multics to Android (15:43)

Class 4: Once Upon a Process: Videos
Once Upon a Process (7:32)
Rust Expressions and Higher-Order Functions (17:24)
How to Share a Processor - Preemptive Scheduling (20:49)

Class 5: Gash Has No Privileges (Shells and Processes)
Privileged Instructions (15:05)
Virtualizing Machines (5:13)
How Many Processes Should a Web Browser Create? (9:10)
Good Auld Shell (gash) Demo (16:54)

Class 6: Making a Process (Virtualizing Memory)
PS2 Tips: Background Processes, Interrupts (17:45)
How to Make a Process (7:44)
Virtual Memory in MULTICS (4:23)
Virtual Memory in the x86 (16:27)

Class 7: Double Faults (Multi-Level Pages, Page Faults and Segmentation Faults)
Modern Page Tables: Multi-Level Paging (17:23)
Segmentation Faults and Page Faults (5:28)
More on Segmentation Faults (4:37)
Processes, Threads, and Tasks (10:43)

Class 8: Memory Management
Exam Review: gash in Ring 3, sudo (5:48)
Concurrent Collatz Challenge (5:48)
Memory Management in C (5:35)
fingerd Fail! (The Morris Worm and How to Defeat It) (25:40)

Class 9: Pointers in Rust
Automatic Memory Management (17:15)
Type Safety and Garbage Collection (6:17)
Pointers in Rust (16:03)

Class 10: SSL, Sharing, Scheduling
goto fail; (Apple's SSL Bug) (19:24)
Safe Sharing across Tasks (15:43)
Introduction to Scheduling (3:51)

Class 11: Smarter Scheduling
Scheduling Recap, Real-Time Systems (10:07)
First Come, First Serve; Round-Robin (8:59)
Priorities (3:37)
Preemptive Priority Scheduling (8:04)
Lottery and Stride Scheduling (9:30)

Class 12: Scheduling in Linux and Web Servers
Glimpse at the Leaderboard (2:15)
Scheduling in Linux (from 2.2 to OS X Mavericks) (18:26)
Scheduling Web Services (27:05)

Class 13: The Internet
Course Update: Projects (3:51)
Benchmarking for Customers (9:01)
Latency (7:32)
Tracing Routes (15:27)
Bandwidth (4:59)
Packet Switching and Internetworking (4:58)

Class 14: Entering Ring Naught
Course Update, 2013 Turing Award! (5:21)
Memory Isolation in Software and Hardware (13:59)
Entering the Kernel! (11:13)
Introducing IronKernel (6:49)
IronKernel Demo (14:54)

Class 15: IronKernel Developers
IronKernel Developers (19:36)
Alex Lamana, Zeming Lin, Wil Thomason
Class 16: Storage
Storage (9:42)
SRAM and DRAM (8:19)
Disk Drives (10:13)
Storage Abstractions (File Systems) (17:18)

Class 17: Flash!
Making a File (5:55)
Requirements for Modern File Systems (4:52)
ZFS: Integrity Checking (6:31)
RAID: Redundant Arrays of Inexpensive Disks (5:36)
Adaptive Replacement Cache (8:14)
Flash Memory (5:26)
Log-Structured File Systems (15:04)

Class 18: System Calls
Minimizing Magic (3:26)
Access Control (16:48)
setuid in Apache (13:03)
Implementing System Calls (17:30)

Class 19: Synchronization
PS4 Postmortem (3:56)
SSL Heartbleed (13:36)
Synchronization (11:48)

Class 20: Mutual Exclusion
Projects/Hackathon Update (6:14)
Mutual Exclusion Non-Solutions (15:15)
Hardware-Assisted Mutual Exclusion (15:16)
Dijkstra's Solution (7:14)

Class 21: Bakers and Philosophers

Class 22: Microkernels and Beyond
What Should Be in the Kernel? (7:17)
Microkernels (18:20)
L4 and Fast Interprocess Communication (13:35)
Exokernels (6:04)

Class 23: Invent the Future!
Making Predictions (7:36)
Sending Faxes from the Beach (12:31)
Pace of Progress (8:03)
Endless Golden Ages (20:12)

Please enable JavaScript to view the comments powered by Disqus.

comments powered by Disqus


AltStyle によって変換されたページ (->オリジナル) /