Homework assignments

Unless otherwise indicated, homeworks are due in class on the specified due date. Please be sure to include your name, email address, student number, the homework assignment number (e.g. "Homework 1") and due date with your turned in assignment.

 

Assignment #1 Solution

Due: 4/02
Silberschatz questions 1.4, 2.5 (justify your answers), 2.9, and 3.6

Assignment #2

Due: 4/09
Silberschatz questions 4.6, 4.7 and 5.2

Assignment #3

Due: 4/16
Silberschatz questions 5.9 and 5.10
Additional Question:

If a program (which uses semaphores and spinlocks) does not respond to user input after 10 seconds, does this necessarily mean it is deadlocked? Is there an easy way to figure out? Justify your answers....

Assignment #4

Due: 4/30
Silberschatz questions 8.6 and 8.10
Additional Question:

Assume we have a system with two processes P1 and P2 sharing a common physical page but not necessarily at the same virtual address. P1 has a variable called X allocated in this shared page and sets X to point to itself. void *X; X = &X; a) What problems can be encountered with this scheme if P2 wants to share X with P1? b) Propose a solution where P1 and P2 can share pages at different virtual addresses and still deal with pointers.

Assignment #5

Due: 5/7
Silberschatz questions 9.1, 9.5 and 9.20

Assignment #6

Due: 5/21
Silberschatz questions 11.8, 13.14

Part 1: What would be the problems if you keep the File Allocation Table structure in memory and did a lazy write back for the FAT?
Part 2: What advantage is there to caching the FAT and Directories compared to any other sector?