Science Fair Project Encyclopedia
A page fault is an exception which is raised by the memory management unit when a needed page is not mapped in physical memory. This exception is passed on to the operating system which will bring the required page into physical memory.
Contrary to what its name might suggest, a page fault is usually not a fatal error. In fact, it is a relatively normal occurrence in operating systems which utilise virtual memory in order to increase the amount of memory available to programs. However, an abnormally large number of page faults can be a symptom of thrashing, which can degrade performance.
If a process requests a page in memory and the system cannot find it at the requested location, this constitutes a page fault. If the page is elsewhere in memory, the fault is called a soft page fault. If the page must be retrieved from disk, the fault is called a hard page fault. Hard page faults only occur when using a virtual memory technique. Since there is more virtual memory than physical memory, not all memory pages are actually held in physical memory at one particular time. If your process tries to access a piece of data, it first must look at what page the data is in. Then, if that page of data is not located in physical memory, it must be read from the disk. This is a page fault. Since the mapping of data between the physical local memory and the swapped memory on the hard disk is managed by the operating system, a poorly designed process from a user application does not cause these faults. Basically it's the OS's swapping algorithm that is not well enough designed. Improved page replacement algorithms including some additional strategies like prepaging may decrease the number of page faults.
The contents of this article is licensed from www.wikipedia.org under the GNU Free Documentation License. Click here to see the transparent copy and copyright details