O. Babaoglu and W. Joy @ Cornell
Proceedings of the Eighth ACM Symposium on Operating System Principles, December 1981, pages 78-86
Berkeley guys wanted to make their Unix on VAX-11/780(VMS) a paging system | |
VAX-11/780 supports paging (has page table and valid bit) but does NOT have reference bit |
Implement
a page replacement algorithm such as LRU or Clock
|
on hardware which does not have reference bit on page table
Reference
bit unset: unset valid bit -> the page becomes reclaimable
|
|||||||||
Reference
bit set:
|
|||||||||
Reference
bit simulation is a lot slower than hardware implementation ->
|
Partition frames into a free pool of pages and pages being involved in the loop of clock | |||||||
The size of the free pool drops below threshold -> Clock policy is triggered | |||||||
Also
scan rate is controlled based on the amount of free pages
|
Simple & fast | |
Load control can get a hint from the size of the free pool | |
Writing dirty pages back to disk distributes uniformly over time due to scan rate control |
Address
space copying at the time of fork could be very expensive
|
|||||
Pages of the process are brought into memory on demand |
Swap-out
criterion: the oldest amongst the n largest processes
|
|||||
Swap-in criterion: the smallest job first with aging | |||||
Swap-in does not bring pages of the process. Pages will get brought into memory on demand |
When
a page is brought into memory, adjacent blocks are pre-paged
|
|||||
The
set of modified pages are clustered and cleaned together
|
Pros
|