pmap(9freebsd)

pmap9freebsd

Machine-dependent portion of virtual memory subsystem

Usage

#include <sys/param.h>

#include <vm/vm.h>

#include <vm/pmap.h>

Overview

The pmap module is the machine-dependent portion of the FreeBSD VM (Virtual Memory) sub-system. Each function documented herein must have its own architecture-dependent implementation.

The pmap module is responsible for managing hardware-dependent objects such as page tables, address maps, TLBs, etc.

Machine-dependent code must provide the header file ⟨machine/pmap.h⟩. This file contains the definition of the pmap structure:

struct pmap {
        /* Contents defined by pmap implementation. */
};
typedef struct pmap *pmap_t;

This header file may also define other data structures used by the pmap implementation.

The header file ⟨vm/pmap.h⟩ defines a structure for tracking pmap statistics (see below). This structure is defined as:

struct pmap_statistics {
        long        resident_count; /* number of mapped pages */
        long        wired_count;    /* number of wired pages */
};

The implementation's struct pmap must contain an instance of this structure having the name pm_stats, and it must be updated by the implementation after each relevant pmap operation.

Releases

9 releases since Debian 5.0 (Lenny); the text changed 6 times.

  1. 5.0
  2. 6.0
  3. 7
  4. 8
  5. 9
  6. 10
  7. 11–13

Authors

This manual page was written by Bruce M Simpson ⟨[email protected]⟩.

From freebsd-manpages 12.2-2 in Debian 13 (Trixie). Parsed by carta from the page's mdoc source.