HP OpenVMS Systems

ask the wizard
Content starts here

What is a page fault? (memory management)

» close window

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.

answer written or last revised on ( 11-FEB-2000 )

» close window