Operating System Fundamentals

(COSC 3321 Section M Winter 1996)

Under Construction

Please remember to occasionally reload this page as it will be frequently modified.



Harjinder Sandhu

Class Times and Location

Monday, Wednesday, Friday   2:30 - 3:30 COSC 3321    115 CCB


Four Assignments     10% each
Midterm              20%
Final Exam           40%        


Note: As per a request from the Ariel lab monitors, please do not use the compute servers red, green, or blue for operating system assignments. As he says:
   The students should only use the Senior Workstation Lab for these
   assignments.  If they cannot access the workstations in the Senior Lab,
   please send them to a monitor who will arrange for access. 

Assignment 1

Was handed out Monday January 15, and was originally due Monday January 29th. The object of assignment 1 is to learn about processes and inter-process communication.

Here is a postscript version of the assignment

Assignment 2

Hand out Friday February 2, and is due Friday February 16, 1996. This assignment deals with scheduling, and with threads and synchronization.

Here is a postscript version of assignment 2.

See below on Questions/Answers/Hints to learn more about Solaris Threads.

Assignment 3

Due Monday March 25, 1996. Deadline extended to Wednesday March 27.

Here is a postscript version of assignment 3.

Assignment 4

Due Friday April 12, 1996. Here is a postscript version of assignment 4.

Text books

Required Text

Operating System Concepts, Silbershatz and Galvin, Fourth Edition

Highly Recommended

Any book on C Programming in the Unix Environment. For example:

   Kernighan and Pike's  'The Unix Programming Environment'
   Kernighan and Ritchie 'The C Programming Language'
   Nigel Norspool's      'C Programming in the Berkeley Unix Environment'

Note: The first two of these are (or were when I checked Sept 12) available in the bookstore. The last one may or may not be not.

Tentative Outline of Topics

Topics covered in the course will follow the organization in Silbershatz and Galvin Chapters 1-9, selected portions of Chapters 10-12, and, if time permits, some selected section s of 15-17. Lectures will largely cover concepts and theory, while assignments will give practical shape to these concepts. Some lectures will be set aside to discuss issues directly relevant to the assignments.

Topics to be covered

In the Textbook

1. Introduction to Operating Systems: Chapters 1 - 3

2. Processes: Chapter 4

3. Process scheduling: Chapter 5

4. Process synchronization: Chapter 6

5. Deadlock: Chapter 7

6. Memory Management: Chapter 8

7. Virtual Memory: Chapter 9

8. File Systems: Chapters 10-12


Assignment 1 related stuff

Assignment 2 related stuff

Assignment 3 related questions

Note: Due,to Ariel lab problems, deadline has been further extended til Wednesday, in class.

Assignment 4 related questions

Important update: To make life easier, you may assume that in part (a), page size = 32 bytes, free frames = 32, and in part (b) N = 32.

Last modified: February 2, 1996