![]() |
![]() HP OpenVMS Systemsask the wizard |
![]() |
The Question is: What causes page faulting, how does it affect run time and how can it be minimized? Thanks for your time. The Answer is : A virtual address space is implemented using a combination of physical memory, backing storage, and memory management data structures known as page tables. The operation known as paging is a transition, and refers to the relocation of the contents of memory between physical memory and backing storage, or from the memory allocated to a process to one of the various system-defined pools of pages of physical memory, or from one of these pools to a process, or from one of these pools to backing storage. Examples of events that trigger page faults include references to any portion of virtual address space that is not currently valid, meaning that there is currently no physical memory associated with the virtual memory. Depending on tracking information in the page tables, resolving this page fault may require acquiring and initializing a page of physical memory from a list of free pages, acquiring the previous contents from a cache of modified pages, or acquiring a free physical page and reloading the previous contents of the virtual page from the backing storage area. The page tables track the translation of virtual address space into the associated physical memory, or to the contents of the memory page in the backing storage area. A page fault is an event that is triggered when a page is to be moved. ("Traps" and "faults" are basic reporting mechanisms underlying OpenVMS. A "trap" occurs at the end of the processing of an instruction, while a "fault" occurs during the processing of an instruction. An AST is based on a trap. A page fault occurs during the processing of an instruction, and means that the instruction must be restarted once the paging completes and the virtual memory is valid.) The memory management system also provides the core of system security, as well as providing constructs such as process-private memory, system memory, and shared memory. For information on tuning OpenVMS systems and particularly on a systematic approach at locating and removing system performance bottlenecks, please see the OpenVMS Performance Management Manual. And remember that all virtual memory systems will always have some level of paging activity.
|