FreeBSD manual
download PDF document: vm_fault_prefault.9.pdf
VM_FAULT_PREFAULT(9) FreeBSD Kernel Developer's Manual VM_FAULT_PREFAULT(9)
NAME
vm_fault_prefault - cluster page faults into a process's address space
SYNOPSIS
#include <sys/param.h>
#include <vm/vm.h>
#include <vm/pmap.h>
void
vm_fault_prefault(pmap_t pmap, vm_offset_t addra, vm_map_entry_t entry);
DESCRIPTION
The vm_fault_prefault() function provides a means of clustering
pagefaults into a process's address space. It operates upon the physical
map pmap. The entry argument specifies the entry to be prefaulted; the
addra argument specifies the beginning of the mapping in the process's
virtual address space.
It is typically called by vm_fault() after the first page fault. It
benefits the execve(2) system call by eliminating repetitive calls to
vm_fault(), which would otherwise be made to bring the process's
executable pages into physical memory.
IMPLEMENTATION NOTES
This is a machine-independent function which calls the machine-dependent
pmap_is_prefaultable(9) helper function to determine if a page may be
prefaulted into physical memory.
SEE ALSO
execve(2), pmap_is_prefaultable(9)
AUTHORS
This manual page was written by Bruce M Simpson <bms@spc.org>.
FreeBSD 14.0-RELEASE-p11 July 21, 2003 FreeBSD 14.0-RELEASE-p11