CS350 - Fall 2009 Homework & Lab Assignments

Text: Stallings, Operating Systems., 6th Ed., ISBN:978-013-600632-9

All labs are done in normal user-space. No special system privileges (such as "root") are required. Send all lab assignments (including design docs) directly to the TA. Homework assignments come to me in class on the due date.

The labs have been listed with the chapters that cover that material. Since we will be covering a chapter per week, you may actually be working on more than one lab at a time. Please label homework by CHAPTER NUMBER, not sequential assignment number.

Notes:

NOTE: All homework assignments come from the section labeled, "Problems", UNLESS preceded by the letter "Q" to indicate they come from the "Review Questions".
Legend for Lab Assignments:
W Windows: XP, NT, or 2K
L Linux via Putty or TightVNC to TJW
P Linux or (Windows with Pthreads)
*x any UNIX-like system (BSD, Linux, Solaris)

Chapter Problem #'s Assign Due date Lab Assignments Lab# Lab Due Date
1 1, 4, 8, 10 9/17  
2 2, 3, 4, 5 " Single-threaded Producer/Consumer [W & L] 1 09/24
3 3, 8, 11, 12"  
4 Q2, 4, 8, 9 " A Multi-process Application [L] 2A 10/08
5 4, 7, 8, 13, 22 Due: 10/15 A Multi-threaded Application [W & L]
This problem is the same as lab 2A, except it is to be solved using threads, instead of Processes. Also, it does NOT use the Shared Memory API. Recall our lecture on the differences between threads & Processes.
2B 10/22
6 1, 5, 11, 17 Due: 10/20 Readers and Writers Using a Monitor [P] 3 11/12
7 2,6,8,12,14 Due: 11/5  
8 1.b, 5, 11, 12 Due: 12/1
9 11, 14 Due: 12/1 Producer/Consumer with Threads [P] 4 12/7
10 TBD Due: tbd Effects of program design on paging 5 N/A
11 TBD Due: tbd  
12 TBD Due: tbd
13 TBD