Welcome to Operating Systems! For course info and policies, please see the syllabus. For grades, log into Moodle. If you need help or have questions, please contact Dr. Wright.

The source code that accompanies our textbook is available here.

Below is a tentative outline of the course. The "milestones" below refer to the semester project.

Use the following links to make the page easier to view:

∗ hide previous weeks + show all weeks − hide all weeks ↓ jump to current week
January 28 – February 1 − hide
DayTopic/ReadingWhat's DueOther
Monday
Jan. 28
introductionnothing!semester project assigned
Wednesday
Jan. 30
operating systems
read Chapter 1
Chapter 1 exercises
1.5, 1.17, 1.22, 1.25
Chapter 1 PowerPoint
Friday
Feb. 1
no class
February 4–8 − hide
DayTopic/ReadingWhat's DueOther
Monday
Feb. 4
operating-system structures
read Chapter 2
exer. 2.9, 2.12, 2.15, 2.18, 2.23 Chapter 2 PowerPoint
Wednesday
Feb. 6
processes
read Sections 3.1 - 3.3
exer. 3.1, 3.3, 3.6, 3.7 Chapter 3 PowerPoint
Friday
Feb. 8
processes
read Sections 3.4 - 3.7
exer. 3.9, 3.12, 3.14
project milestone 1 due
threads lab assigned
February 11–15 − hide
DayTopic/ReadingWhat's DueOther
Monday
Feb. 11
threads
read Sections 4.1 - 4.3
exer. 4.1, 4.4, 4.7Chapter 4 PowerPoint
Wednesday
Feb. 13
threads
read Sections 4.4 - 4.7
exer. 4.10, 4.11, 4.14
Friday
Feb. 15
CPU scheduling
read Sections 5.1 - 5.3
February 18–22 − hide
DayTopic/ReadingWhat's DueOther
Monday
Feb. 18
CPU scheduling
read Sections 5.4 - 5.6
threads lab due Chapter 5 PowerPoint
Wednesday
Feb. 20
CPU scheduling
read Sections 5.7 - 5.9
exer. 5.6, 5.12, 5.13
Friday
Feb. 22
process synchronization
read Sections 6.1 - 6.5
milestone 2 due Chapter 6 PowerPoint
February 25 – March 1 − hide
DayTopic/ReadingWhat's DueOther
Monday
Feb. 25
process synchronization
read Sections 6.6 - 6.7
exer. 6.8, 6.11, 6.12, 6.17 candy factory lab assigned
Wednesday
Feb. 27
process synchronization
read Sections 6.8 - 6.11
Friday
Mar. 1
synchronization and deadlocks
March 4–8 − hide
DayTopic/ReadingWhat's DueOther
Monday
Mar. 4
deadlocks
read Sections 7.1 - 7.4
Chapter 7 PowerPoint
Wednesday
Mar. 6
deadlocks
read Sections 7.5 - 7.8
exer. 7.5, 7.6, 7.10, 7.11
Friday
Mar. 8
review–bring questions!candy factory lab due
March 11–15 − hide
DayTopic/ReadingWhat's DueOther
Monday
Mar. 11
Exam 1 will cover Chapters 1-7.
Hover here for more info.

You should expect some questions about operating system fundamentals (Chapters 1 and 2), but the exam will focus on process management (Chapters 3-7). The most likely topics for exam questions are those that appeared both in class and in the book.

You should study all materials associated with this course: the book, your notes, PowerPoint slides, homework, programs, etc. Working on the exercises at the end of each chapter would be very good preparation for the exam. The professor recommends that you consider some of the following exercises:

  • Chapter 1, exercises 1, 6, 8, 14, 17, 22, 24
  • Chapter 2, exercises 1, 2, 3, 4, 9, 18, 25
  • Chapter 3, exercises 1, 2, 3, 6, 7, 9
  • Chapter 4, exercises 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 14, 16, 19
  • Chapter 5, exercises 1, 2, 3, 4, 5, 6, 9, 10, 11, 12, 13, 14, 15, 16, 18
  • Chapter 6, exercises 8, 9, 10, 11, 12, 13, 17, 23, 41
  • Chapter 7, exercises 1, 2, 3, 5, 6, 7, 9, 10, 11, 13, 14, 17, 19

Pay special attention to the exercises in bold above—you might not be ready for the test if you can't do these exercises!

Wednesday
Mar. 13
main memory
read Sections 8.1 - 8.4
milestone 3 due this week Chapter 8 PowerPoint
Friday
Mar. 15
main memory
read Sections 8.5 - 8.8
exer. 8.3, 8.4, 8.9, 8.11, 8.14memory lab assigned
March 18–22 − hide
DayTopic/ReadingWhat's DueOther
Monday
Mar. 18
main memory and virtual memorymilestone 3 due
Wednesday
Mar. 20
virtual memory
read Sections 9.1 - 9.4
Chapter 9 PowerPoint
Friday
Mar. 22
virtual memory
read Sections 9.5 - 9.11
exer. 9.1, 9.2, 9.14, 9.15, 9.23
March 25–29 − hide
Spring Break
no class
April 1–5 − hide
DayTopic/ReadingWhat's DueOther
Monday
Apr. 1
Easter Break
Wednesday
Apr. 3
file-system interface
read Sections 10.1 - 10.4
Chapter 10 PowerPoint
Friday
Apr. 5
file-system interface
read Sections 10.5 - 10.7
memory lab due
April 8–12 − hide
DayTopic/ReadingWhat's DueOther
Monday
Apr. 8
file-system implementation
read Sections 11.1 - 11.5
Chapter 11 PowerPoint
Wednesday
Apr. 10
file-system implementation
read Sections 11.6 - 11.10
exer. 11.9, 11.11, 11.14
Friday
Apr. 12
mass-storage
read Sections 12.1 - 12.6
April 15–19 − hide
DayTopic/ReadingWhat's DueOther
Monday
Apr. 15
mass-storage
read Sections 12.7 - 12.10
Chapter 12 PowerPoint
Wednesday
Apr. 17
review–bring questions!exer. 12.15, 12.16, 12.22, 12.27a, 12.33
Friday
Apr. 19
Exam 2 will cover Chapters 8-12.
Hover here for more info.

You should study all materials associated with this course: the book, your notes, PowerPoint slides, homework, programs, etc. Working on the exercises at the end of each chapter would be very good preparation for the exam. The professor recommends that you consider some of the following exercises:

  • Chapter 8, exercises 8.3, 8.5, 8.9, 8.11, 8.14, 8.17, 8.19, 8.23, 8.24
  • Chapter 9, exercises 9.1, 9.4, 9.12, 9.14, 9.15, 9.16, 9.20, 9.22, 9.23, 9.28, 9.33
  • Chapter 10, exercises 10.2, 10.3, 10.4, 10.8, 10.10, 10.12, 10.13, 10.15
  • Chapter 11, exercises 11.1, 11.4, 11.5, 11.9, 11.10, 11.11, 11.12, 11.14, 11.15, 11.16, 11.19
  • Chapter 12, exercises 12.2, 12.5, 12.7, 12.8, 12.15, 12.16, 12.20, 12.21, 12.22, 12.23, 12.24, 12.27, 12.33

Pay special attention to the exercises in bold above—you might not be ready for the test if you can't do these exercises!

April 22–26 − hide
DayTopic/ReadingWhat's DueOther
Monday
Apr. 22
I/O systems
read Sections 13.1 - 13.4
Chapter 13 PowerPoint
Wednesday
Apr. 24
I/O systems
read Sections 13.5 - 13.8
Friday
Apr. 26
Linux: theorymilestone 4 dueChapter 21 PowerPoint
April 29 – May 3 − hide
DayTopic/ReadingWhat's DueOther
Monday
Apr. 29
Linux: exploration
read Chapter 21
Linux Exploration
Wednesday
May. 1
Linux: explorationLinux Exploration Linux Exploration II
Friday
May. 3
Linux: explorationLinux Exploration II
May 6–10 − hide
DayTopic/ReadingWhat's DueOther
Monday
May. 6
presentations: Blake, Thomas, Luc, Luke and Volodymyr, Austin, and Seanmilestone 5 due;
milestone 6 due this week
Wednesday
May. 8
presentations: Erdal, Jeremy, Alex W, Elias, Kendall, Nick, Alex H
Friday
May. 10
review–bring questions!
May 13–17 − hide
DayFinal Exam Information
Wednesday
May. 15
10:30am

The Final Exam will be cumulative. About one-third of the exam will be from the last three weeks of the course (chapters 13, 21, and Linux terminal), one-third will be from the Exam 2 content (chapters 8-12), and one-third from the Exam 1 content (chapters 1-7).

You should study all materials associated with this course: the book, your notes, PowerPoint slides, homework, programs, review problems from class, etc. Working on the exercises at the end of each chapter would be very good preparation for the exam. The professor recommends that you consider some of the following exercises:

  • Chapter 13, exercises 13.3, 13.4, 13.5, 13.8, 13.10, 13.12, 13.13, 13.14
  • Chapter 21, exercises 21.3, 21.7, 21.14, 21.16, 21.22

In addition, you should know the general functionality of the following Linux terminal commands: cal, cat, cd, chmod, cut, grep, head, history, less, ls, man, mkdir, more, mv, paste, rm, rmdir, sort, tail, wc.

The exercises listed for the previous exams are still good practice for the final exam.