Syllabus
Assignments
Xv6 Utilities
Resources
Coaching Hours
xv6 Resources
navigation
CMPU-334: Operating Systems
Lab 1
has been released and is due Wednesday, September 27th.
Coaching Hours
have been posted.
Fall 2023 Schedule
Date
Topic
Reading
Notes
Mon 8/28
Introduction
Video
Preface
1 Introduction Dialogue
2 Introduction
Wed 8/30
Processes
Video
3 Virtualization Dialogue
4 Processes
5 Process API
6 Direct Execution
Mon 9/4
No Class
Labor Day
Wed 9/6
Scheduling
Video
7 CPU Scheduling
8 Multi-level Feedback
11 CPU Virtualization Summary
Mon 9/11
Memory Virtualization
Video
12 Memory Virtualization Dialogue
13 Address Spaces
15 Address Translation
Wed 9/13
Segmentation
Video
16 Segmentation
Mon 9/18
Paging
Video
18 Introduction to Paging
19 Translation Lookaside Buffers
Wed 9/20
Smaller Page Tables
Video
20 Advanced Page Tables
Mon 9/25
Swapping
Video
21 Swapping: Mechanisms
22 Swapping: Policies
Wed 9/27
Complete VM Systems
23 Complete VM Systems
24 Memory Virtualization Summary
Mon 10/2
Quiz 1
Wed 10/4
Threads
25 Concurrency Dialogue
26 Concurrency and Threads
27 Thread API
Mon 10/9
Locks
28 Locks
Wed 10/11
Locked Data Structures
29 Locked Data Structures
Mon 10/23
Condition Variables
30 Condition Variables
Wed 10/25
Semaphores
31 Semaphores
Mon 10/30
Concurrency Bugs
32 Concurrency Bugs
34 Concurrency Summary
Wed 11/1
I/O and Disks
35 Persistence Dialogue
36 I/O Devices
37 Hard Disk Drives
Mon 11/6
Quiz 2
Wed 11/8
RAID
38 Redundant Disk Arrays (RAID)
Mon 11/13
Files and Directories
39 Files and Directories
Wed 11/15
File System Implementation
40 File System Implementation
41 Fast File System (FFS)
Mon 11/20
FSCK and Journaling
42 FSCK and Journaling
Wed 11/22
Log-structured File Systems (LFS)
43 Log-structured File System (LFS)
Mon 11/27
Flash-based SSDs
44 Flash-based SSDs
Wed 11/29
Virtual Machines
Appendix B: Virtual Machines
Mon 12/4
Wrapup
Wed 12/13
Final 5pm - 7pm