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:
| 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 |