The pmap parameters

QNX SDP8.0System ArchitectureDeveloperUser

The pmap file provides details about memory mapping and other process information.

The pmap output includes the following parameters:

vaddr
Virtual memory address.
size
This is the size of the virtual address range that the region occupies (i.e., the region extends from vaddr to vaddr + size).
flags
Mapped memory flags. See mmap() for details on the flags.
prot
Page protection flags, right shifted by 8 bits. See mmap() for details on the flags.
maxprot
The maximum value that prot can have, right shifted by 8 bits.
dev
Device ID of mapped objects.
ino
Inode of mapped object.
offset
The offset from the start of the mapped object.
rsv
The amount of memory reserved for the region. Adheres to the following rules:
  • A non-lazy private region's rsv value should be equal to its size value. The flags parameter contains the MAP_PRIVATE flag, but not the MAP_LAZY flag.
  • A lazy region shows how much memory was referenced. The flags parameter contains the MAP_LAZY flag.
  • A shared region can have a zero (0) value for reasons including, but not limited to: being backed by a non-allocated, explicit physical address range, or being backed by a file or a shared object. The flags parameter may contain the MAP_PHYS flag.
guardsize
Mapping guard size.
refcnt
Number of references to each object.
mapcnt
Number of unique mappings to the object.
path
The name of the object that backs the mapping.
asinfo
The name of the asinfo entry that backs the mapping. For more information about the asinfo section of the system page, go to asinfo in the Building Embedded Systems guide.

For a discussion of how to use pmap information to find out how much memory is reserved by a process, go to Memory reservation from reading the pmap file.

Page updated: