Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
KINFO_GETVMMAP(3)	 BSD Library Functions Manual	     KINFO_GETVMMAP(3)

NAME
     kinfo_getvmmap -- function	for getting per-process	memory map information

LIBRARY
     System Utilities Library (libutil,	-lutil)

SYNOPSIS
     #include <sys/types.h>
     #include <sys/user.h>
     #include <libutil.h>

     struct kinfo_vmentry *
     kinfo_getvmmap(pid_t pid, int *cntp);

DESCRIPTION
     This function is used for obtaining virtual memory	mapping	information of
     a particular process.

     The pid field contains the	process	identifier.  This should be the	a
     process that you have privilege to	access.	 The cntp field	is allows the
     caller to know how	many records are returned.

     This function is a	wrapper	around sysctl(3) with the KERN_PROC_VMMAP mib.
     While the kernel returns a	packed structure, this function	expands	the
     data into a fixed record format.

CAVEAT
     kinfo_getvmmap() calls can	cause significant CPU consumption because cal-
     culating the residency counts requires iterating over all memory pages of
     the process.  Setting the sysctl variable
     kern.proc_vmmap_skip_resident_count to 1 prevents this calculation.

RETURN VALUES
     On	success	the kinfo_getvmmap() function returns a	pointer	to an array of
     struct kinfo_vmentry structures as	defined	by <sys/user.h>.  The array
     was obtained by an	internal call to malloc(3) and must be freed by	the
     caller with a call	to free(3).  On	failure	the kinfo_getvmmap() function
     returns NULL.

SEE ALSO
     free(3), kinfo_getfile(3),	malloc(3)

BSD				August 18, 2017				   BSD

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | CAVEAT | RETURN VALUES | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=kinfo_getvmmap&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help