navigation

CMPU-334: Operating Systems

Practice problems for Quiz 1 have been posted.

Fall 2019 Schedule

Date Topic Reading Notes
Wed 9/4 Introduction Preface
1 Introduction Dialogue
2 Introduction
Mon 9/9 Processes 3 Virtualization Dialogue
4 Processes
5 Process API
6 Direct Execution
Wed 9/11 Scheduling: Introduction 7 CPU Scheduling
8 Multi-level Feedback
Mon 9/16 Scheduling: Proportional Share 9 Lottery Scheduling
11 CPU Virtualization Summary
Utility Lab
Due Wednesday September 25th
Wed 9/18 Memory Allocation: Malloc 14 Memory API
17 Free Space Management
Mon 9/23 Address Translation 12 Memory Virtualization Dialogue
13 Address Spaces
15 Address Translation
16 Segmentation
Wed 9/25 Paging: Introduction 18 Introduction to Paging
19 Translation Lookaside Buffers
Mon 9/30 Advanced Page Tables 20 Advanced Page Tables
Wed 10/2 Swapping: Mechanisms and Policy 21 Swapping: Mechanisms
22 Swapping: Policies
Mon 10/7 Complete VM Systems 23 Complete VM Systems
24 Memory Virtualization Summary
Wed 10/9 Threads 25 Concurrency Dialogue
26 Concurrency and Threads
27 Thread API
Mon 10/14 Quiz1
Wed 10/16 Locks 28 Locks
Mon 10/21 No Class: Break
Wed 10/23 No Class: Break
Mon 10/28 Locked Data Structures 29 Locked Data Structures
Wed 10/30 Condition Variables 30 Condition Variables
Mon 11/4 Semaphores 31 Semaphores
Wed 11/6 Concurrency Bugs 32 Concurrency Bugs
34 Concurrency Summary
Mon 11/11 Quiz 2
Wed 11/13 I/O and Disks 35 Persistence Dialogue
36 I/O Devices
37 Hard Disk Drives
Mon 11/18 RAID 38 Redundant Disk Arrays (RAID)
Wed 11/20 Files and Directories 39 Files and Directories
Mon 11/25 File System Implementation 40 File System Implementation
Wed 11/27 Fast File System and Data Integrity and Protection 41 Fast File System (FFS)
45 Data Integrity and Protection
Mon 12/2 Journaling 42 FSCK and Journaling
Wed 12/4 Log-structured File Systems (LFS) 43 Log-structured File System (LFS)
Mon 12/9 Flash-based SSDs 44 Flash-based SSDs
46 Persistence Summary