CMPT 300: Operating Systems

Old Assignments

Current Assignments.

Week 0 | Week 1 | Week 2 | Week 3 | Week 4 | Week 5 | Week 6 | Week 7 | Week 8 | Week 9 | Week 10 | Week 11 | Week 12 | Week 13

Week 0

Classes haven't begun, but you may want to wander over to the bookstore and look at textbooks. No single textbook will tell you everything you need to know for this course, but several come close. Check out the books page for more information.

Week 1

For Monday, May 3
First class.
First segment: Overview and History
For Wednesday, May 5
Reading
Read Chapter 1 of Silberschatz & Galvin (or Chapter 1 of Stallings).
Read Kernel Traffic (Hint: Check the resources page).
Activities
Learn how to perform basic tasks on a Unix system, including
  • Edit a file with emacs or vi
  • Look up a manual page
  • Compile a C file with gcc
  • Compile a C++ file with g++
For Friday, May 7
Reading
Read Chapter 2 of Silberschatz & Galvin (or Chapter 2 of Stallings).
Activities
Find out about system calls
  • Run truss (on Solaris) or strace (on Linux) on a simple program.

Week 2

For Monday, May 10
Reading
Read Chapter 3 of Silberschatz & Galvin (or Chapter 3 of Stallings).
Activities
Review prerequisite material.
For Friday, May 14
Second segment: Introduction to Unix.
Reading
Read Chapter 3 of Silberschatz & Galvin (or Chapter 3 of Stallings).
Activities
Find out about system calls
  • Run truss (on Solaris) or strace (on Linux) on a simple program.
  • Read the introductory pages of Sections 2 and 3 of the Unix manual (man -2 intro and man -3 intro).
  • Learn about file descriptors (accessed via system calls) and the higher-level FILE stream abstraction provided by the C library.
  • Learn about signals
    • Write a program that catches SIGINT (generated when Control-C is pressed) and exits saying "Goodbye!".

Week 3

For Monday, May 17
Reading
Read Kernel Traffic.
For Wednesday, May 19
Third segment: Computer System Architecture.
Reading
Read Assignment 1.
Activities
Work on Assignment 1. (Due Monday, May 31,1999.)
For Friday, May 21
Reading
Read Chapter 4 of Silberschatz & Galvin (or Chapter 3 of Stallings).
Activities
Work on Assignment 1.

Week 4

For Monday, May 24
Victoria Day -- classes cancelled.
Activities
Keep working on Assignment 1 (due next Monday).
For Wednesday, May 26
Reading
Read Assignment 1.
Activities
Work on Assignment 1. (Due Monday, May 31, 1999.)
For Friday, May 28
Fourth segment: Overview of OS Design.
Reading
Activities
Work on Assignment 1. (Due Monday, May 31, 1999.)

Week 5

For Monday, May 31
Fifth segment: Processes and Threads.
Activities
Assignment 1 is due.
For Wednesday, June 2
Reading
Read the Project (PDF Version).
Activities
Begin working on the Project. (See the calendar for deadlines.)
For Friday, June 4
Reading
Read Chapter 5 of Silberschatz & Galvin (or Chapters 4 and 9 of Stallings).
Activities
Work on Project. (See the calendar for deadlines.)

Week 6

For Monday, June 7
Activities
Continue to work on the Project. (See the calendar for deadlines.)
For Wednesday, June 9
Sixth segment: Processor Scheduling.
Activities
Assignment 2 (PDF Version) assigned.
Continue to work on the Project. (See the calendar for deadlines.)
For Friday, June 11
Activities
Continue to work on the Project. (See the calendar for deadlines.)

Week 7

For Monday, June 14
Seventh segment: Synchronization.
Activities
Continue working on Assignment 2 and the Project. (See the calendar for deadlines.)
For Wednesday, June 16
Activities
Continue working on Assignment 2 and the Project. (See the calendar for deadlines.)
First demo day for Phase I of the Project.
For Friday, June 18
Activities
Continue working on Assignment 2 and the Project. (See the calendar for deadlines.)
Second demo day for Phase I of the Project.

Week 8

For Monday, June 21
Activities
Continue working on the Project and Assignment 2.
Third demo day for Phase I of the Project.
For Wednesday, June 23
Eighth segment: Memory Management.
Reading
Read about memory management, Chapter 8 and 9 of Silberschatz & Galvin (or Chapters 7 and 8 of Stallings).
Activities
Assignment 2 is due.
Continue to work on the Project (PDF Version).
For Friday, June 25
Activities
Continue to work on the Project (PDF Version).
Solutions for Assignment 2 (PDF - 201 KB) are available.

Week 9

For Monday, June 28
Midterm examination.
Activities
Study for the midterm.
Notes (PDF - 132 KB).
For Wednesday, June 30
Activities
Continue working on the Project. (See the calendar for deadlines.)
For Friday, July 2
Activities
Continue working on the Project. (See the calendar for deadlines.)
First demo day for Phase II of the Project.

Week 10

For Monday, July 5
Activities
Continue working on the Project. (See the calendar for deadlines.)
Second demo day for Phase II of the Project.
For Wednesday, July 7
Activities
Continue working on the Project. (See the calendar for deadlines.)
Third demo day for Phase II of the Project.
For Friday, July 9
Activities
Continue working on the Project. (See the calendar for deadlines.)
Assignment 3 (PDF - 117 KB) assigned. (Due Wednesday, July 21.)

Week 11

For Monday, July 12
Activities
Continue working on the Project and Assignment 3. (Demonstrations start next Friday; assignment due next Wednesday.)
For Wednesday, July 14
Ninth segment: Deadlock.
Activities
Continue working on the Project and Assignment 3. (Demonstrations start next Friday; assignment due next Wednesday.)
Reading
Chapter 7 of Silberschatz & Galvin; chapter 6 of Stallings.
For Friday, July 16
Activities
Continue working on the Project and Assignment 3. (Demonstrations start next Friday; assignment due next Wednesday.)

Week 12

For Monday, July 19
Activities
Continue working on Assignment 3 (due Wednesday, July 21).
For Wednesday, July 21
Tenth segment: File and Device Management.
Activities
Assignment 3 is due.
Reading
Chapters 10 and 11 of Silberschatz & Galvin or Chapter 12 of Stallings.
For Friday, July 23
Activities
First demo day for Phase III of the Project.

Week 13 -- Last Week of Class!

For Monday, July 26
Activities
Second demo day for Phase III of the Project.
For Wednesday, July 28
Activities
Third demo day for Phase III of the Project.
Work on your final project report! (Due Friday.)
For Friday, July 30
Last Day of Class.
Activities
Final Project Report due.

Current Assignments.