# Andrew S. Tanenbaum (OS) Edition 4 Exercise 3 Question 26 (Page No. 256)

34 views
A student in a compiler design course proposes to the professor a project of writing a compiler that will produce a list of page references that can be used to implement the optimal page replacement algorithm. Is this possible? Why or why not? Is there anything that could be done to improve paging efficiency at run time?

## Related questions

1
31 views
One of the first timesharing machines, the $DEC\: PDP-1,$ had a (core) memory of $4K\: 18-bit$ ... drum. The drum could start writing (or reading) at any word, rather than only at word $0.$ Why do you suppose this drum was chosen?
1 vote
How long does it take to load a $64-KB$ program from a disk whose average seek time is $5\: msec,$ whose rotation time is $5 msec,$ and whose tracks hold $1\: MB$ for a $2-KB$ page size? for a $4-KB$ page size? The pages are spread randomly around the disk and the number of cylinders is so large that the chance of two pages being on the same cylinder is negligible.
Suppose that the virtual page reference stream contains repetitions of long sequences of page references followed occasionally by a random page reference. For example, the sequence$: 0, 1, \dots, 511, 431, 0, 1, \dots , 511, 332, 0, 1, \dots$ consists of ... $500$ page frames, describe a page replacement approach that would perform much better than the $\text{LRU, FIFO, or clock}$ algorithms.
A machine has $48-bit$ virtual addresses and $32-bit$ physical addresses. Pages are $8\: KB.$ How many entries are needed for a single-level linear page table?