## CSE 120 -- Homework #3

Out: 11/6
Due: 11/13

1. Chapter 4: 8, 14, 23, 29, 33

2. [Crowley] Suppose we have an average of one page fault every 100,000 instructions, a normal instruction takes 1 microsecond, and a page fault causes the instruction to take an additional 10 milliseconds. What is the average instruction time, taking page faults into account? Redo the calculation assuming that a normal instruction takes 0.5 microseconds instead of 1 microsecond.

3. [Crowley] Suppose we have a computer system with a 44-bit virtual address, page size of 64K, and 4 bytes per page table entry.
1. How many pages are in the virtual address space?
2. Suppose we use two-level paging and arrange for all page tables to fit into a single page frame. How will the bits of the address be divided up?
3. Suppose we have a 4 GB program such that the entire program and all necessary page tables (using two-level pages from above) are in memory. (Note: It will be a lot of memory.) How much memory, in page frames, is used by the program, including its page tables?

4. Nachos VM Worksheet
```
```

voelker@cs.ucsd.edu