Operating Systems:Schedule

CS 444/CS544

Warning: This schedule is tentative will change as the semester progresses!

Date Topic Notes/Assignments
Week 1
Weds
1/13
LECTURE 1 (Zoom): Welcome and Introduction; What is an operating system? Read Introduction to Operating Systems
Wed
1/13
LAB 1 (Video): System Monitoring Lab
Fri
1/15
LECTURE 2 (Zoom): OS History, OS Present, OS Research SOSP
OSDI
Week 2
Mon
1/18
NO LECTURE
Wed
1/20
LECTURE 3: Processes and Shell Basics
Wed
1/20
LAB 2 (SC 334): C primer and Intro the Shell Assignment Shell Assignment: shell.pdf shell.tar.gz
Fri
1/22
LECTURE 4: Processes and Threads
Week 3
Mon
1/25
LECTURE 5: Kernel Boot/ CPU Scheduling
Weds
1/27
NO LECTURE
Wed
1/27
LAB 3: Adding a system call to the Linux kernel
Fri
1/29
LECTURE 7: Synchronization 1
Week 4
Mon
2/3
LECTURE 8: Synchronization 2
Wed
2/5
NO LECTURE
Wed
2/5
NO LAB
Fri
2/7
NO LECTURE
Week 5
Mon
2/10
LECTURE 9: Classic Synchronization Problems (Producer/Consumer)
Wed
2/12
LECTURE 10: Classic Synchronization Problems (Readers/Writers); Deadlock
Wed
2/12
LAB 3: Thread programming in Linux and Windows
Fri
2/14
LECTURE 11: Classic Synchronization Recap Shell Assignment due
Week 6
Mon
2/17
Overview of thread programming assignments (grid and producer/consumer) (Hunter)
Wed
2/19
NO LAB - OFFICE HOURS INSTEAD (Marzieh)
Grid Locking
Weds
2/19
Midterm #1
Fri
2/21
FEBRUARY BREAK
Week 7
Mon
2/24
LECTURE 12: Midterm Discussion, The Night Watch, Moving on
Wed
2/26
LECTURE 13: Memory Management
Wed
2/26
LAB 5: CPU scheduling in the Linux Kernel
Fri
2/28
Marzieh returning exams/answering questions
Week 8
Mon
3/2
NO LECTURE
Wed
3/4
NO LECTURE
Wed
3/4
LAB 6: Memory Management in the Linux Kernel
Fri
3/6
LECTURE 14: Memory Management
Week 9
Mon
3/9
LECTURE 15: Memory Management/ Storage Hierarchy
Wed
3/11
LECTURE 16: Storage Hierarchy/ Hard Drives/ SSD
Wed
3/11
LAB 7: Software RAID Producer/Consumer and Sleepy Barber assignment due
Fri
3/13
LECTURE 17: Last in-person lecture; Discussion of challenges facing all of us
Week 10 SPRING BREAK
Week 11
Mon
3/23
LECTURE 18: RAID Overview Grid assignment due (pushed back to 3/30)
Weds
3/25
LAB 8: User-level File System
Fri
3/27
LECTURE 18: RAID Worksheet
Week 12
Mon
3/30
LECTURE 19: File System Basics
Weds
4/1
LECTURE 20: Update in place vs. Write-ahead logging (journaling) RAID worksheet due
Wed
4/1
LAB 9: VFS/vnode interface and various FS in Linux
Fri
4/3
LECTURE 21: FFS and LFS
Week 13
Mon
4/6
LECTURE 22: Garbage Collection in LFS
Weds
4/8
LAB 10: loadable kernel module
Fri
4/10
LECTURE 23: Networking code / Linux Kernel
Week 14
Mon
4/13
LECTURE 24: Protection and Security
Weds
4/15
Wed
4/15
LAB 11:procfs
Fri
4/17
LECTURE 24: Virtualization
Week 15
Mon
4/20
LECTURE 25: Cloud Computing, Cloud Security
Wed
4/22
LAB 12: Virtualization KVM/Xen
Fri
4/24
Midterm #2
Week 16
Mon
4/27
LECTURE 27: Distributed Systems Issues
Weds
4/29
LECTURE 28: Distributed Systems Issues
Wed
4/29
LAB 13: Amazon EC2
Fri
5/1
LECTURE 29: Final exam review
Week 17 Finals
Thursday
May 7 Final Exam, 11:45 AM, SC 362