From: Honghai Liu (liu789_at_hotmail.com)
Date: Tue Feb 10 2004 - 23:41:11 PST
Review: Honghai Liu
Virtual Memory Management in the VAX/VMS Operating System
The paper presents the virtual memory management in VAX/VMS, especially on
how to improve the performance of the paging and process replacement.
The process in VAX is 32-bit and the first highest two bits were used to identify the
different regions: basically the half the address is the system region, and the other half
is for process region (P0,P1). Each region is defined by a page table. So interestingly
enough, the user process only have the half of the address space to use in 32-bit, and
the other half(system part) is used to mange the process(e.g. contains PTEs) and
shareable across the different process managed by the OS.
The page table entry consists of valid bit, protection bit, modify bit, system-used field
and physical page frame number bits. Specifically, the page frame number is used to
locate the page in the physical memory. Each page is defined by base address registers
and a length register. It appears to me that the length register is a offset rather than a limit
of the page size because it was mentioned in the beginning the size of page is fixed (512-byte).
A lot of performance improvements have been made, however, the key and novel idea
is that delaying the modified pages to the paging file on the disk, and this enables optimal
algorithm because 1)modified page could be brought back quickly if it's re-referenced 2)
cluster of pages can be output into disk in operations to minimize I/O traffic 3). Pages can
be arranged in the page file. 4) pages wouldn't have to be kept if program terminates.
Overall, the memory management in VMS contributes to the robustness and effectiveness
of this one of the most popular commercial OS.
This archive was generated by hypermail 2.1.6 : Tue Feb 10 2004 - 23:41:20 PST