Basic Information

This course serves as the introduction to operating systems concepts, such as process management, synchronization, system calls, memory management, file systems, kernels, and drivers.

This website is subject to change as more content is added. Check it often!

Date Suggested Readings Session Links and Announcements Exercises and Projects
1/14
Chapter 1.1 -1.9 Session One - Introduction and History Watch short video 1, video 2, video 3 before next time. (Video ppt notes)
1/16 Section 15.1 Lab 0 Work Day Lab 0 (do this first) -- due in class on 1/23, may not be late, can be done in partners

Project 0 (do this second) -- due on 1/23 at 11:59pm on eLearning, must be done individually (may be up to 2 days late)
1/18   Lab 0 Work Day Extra Credit - Want more of a challenge?
1/21 No Class    
1/23 Section 3.1 Session Two - Basics of Processes and Threads Exercise #1 (due 1/30)
[over Sessions 1-2]
Answers
1/25 Chapter 2.1 and 2.10 Session Three - Boot Process
1/28 Section 3.3 Session Four [programming] - Shell Parsing and Exec
example shell - copy this executable to the Linux server and run it to see how the shell should work
Project 1 Specification
Project 1 Partners must be picked by tonight - send me an email with both your names (or just your name if you intend to work alone)
1/30 Work Day and Answer Questions about Project 1 Exercise #2 (due 2/8)
[Sessions 3-5]
Answers
2/1 Chapter 6.1 - 6.3 Session Five - CPU Scheduling  
2/4 Section 4.1 Session Six - Cooperating Threads and Synchronization
Too Much Milk presentation
2/6 Session Seven [programming] - cd command and shell variables Project 1 First Half Due (submit on eLearning by 11:59:59pm)
2/8 Sections 5.1-5.2 Session Eight - Implementing Mutual Exclusion Exercise #3 (due 2/15)
[Session 6-9]
Answers
2/11 Sections 5.3-5.4 Session Nine - Semaphores and Bounded Buffer  
2/13 Work Day and Answer Project Questions Project 1 due at 11:59:59pm
2/15 Sections 5.5-5.9 Session Ten - More on Semaphores
2/18   Exam 1 Review  
2/20   Snow Day, work on installing VMWare  
2/22   Exam 1 Exam 1
2/25   Session Eleven [configuration] - Intro to Linux Kernels Project 2 Specification
2/27 Gone to SIGCSE -
official class does not meet
Direct link to video
Work Day
Send me questions and I will send video answers
3/1 Gone to SIGCSE -
official class does not meet
Direct link to video
Session Twelve - Monitors, Condition Variables, Readers-Writers Exercise #4 (due 3/13 in class)
[Session 13-14]
Answers
3/4 Session Thirteen - Deadlocks
3/6 Section 18.3 Session Fourteen [programming] - Intro to Kernel Modules and /proc
3/8 Chapter 7 No class due to professor sickness. Finish Project 2 and look at class announcement to start project 3
3/11 Chapter 7 Session Fifteen [programming] - Project 3 Project 3 Specification (due 3/28 at 11:59pm on eLearning)
Project3-README.docx
3/13 Continue previous session, answer questions  
3/15 Sections 8.1-8.6 Session Seventeen - Concurrency Conclusion, Memory Protection
3/25   Session Eighteen - Address Translation Exercise #5 (due 4/1)
[Sessions 18-19]
Answers
3/27   Finish previous session
3/29 Session Nineteen - Caching and TLBs  
4/1   Session Twenty - Exam 2 Review  
4/3   Exam 2 Exam 2
4/5 Sections 9.1-9.6 Session Twenty One - Virtual Memory Exercise #6 (due 4/12)
[Sessions 21-22]
Answers
4/8 Sections 10.1-10.4, 13.1-13.3.2 Session Twenty Two - Device Management and Disk Management  
4/10  

Session Twenty Three - File Systems

 
4/12
4/15 Chapter 10 Session Twenty Four - Naming and Directories Exercise #7 (due 4/22)
[Sessions 23-24]
Answers
4/17   Session Twenty Five - Boot Sectors, Files and Directories, File I/O Project 4 Specification(due 5/3 at 11:59pm on eLearning)
Project4-README.docx
4/19 Session Twenty Six - More about Project 4
4/22 Section 9.7 Session Twenty Eight - FAT32 Directory Entries, Project Operations
4/24   Work day and answer questions on Project 4
4/26 Session Twenty Nine - Transactions and Reliability Exercise #8 (due 5/3)
[Session 28-30]
Answers
4/29 Chapter 14, Sections 13.4-13.7 Session Thirty - Protection and Security
5/1 Work Day and Answer Questions about Project
Go over homeworks 6 and 7 answers
5/3   Go over homework 8 answers
Final Review
Final Project 3 Due 5/3 at 11:59pm
5/6
Final Exam: 3:00-4:50pm