1.\" $NetBSD: kinfo_getvmmap.3,v 1.1 2015/09/24 14:39:20 christos Exp $ 2.\" 3.\" Copyright (c) 2008 Peter Wemm 4.\" All rights reserved. 5.\" 6.\" Redistribution and use in source and binary forms, with or without 7.\" modification, are permitted provided that the following conditions 8.\" are met: 9.\" 1. Redistributions of source code must retain the above copyright 10.\" notice, this list of conditions and the following disclaimer. 11.\" 2. Redistributions in binary form must reproduce the above copyright 12.\" notice, this list of conditions and the following disclaimer in the 13.\" documentation and/or other materials provided with the distribution. 14.\" 15.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 16.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 17.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 18.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 19.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 20.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 21.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 22.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 23.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 24.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 25.\" SUCH DAMAGE. 26.\" 27.\" $FreeBSD: head/lib/libutil/kinfo_getvmmap.3 283622 2015-05-27 17:51:06Z jhb $ 28.\" 29.Dd September 16, 2015 30.Dt KINFO_GETVMMAP 3 31.Os 32.Sh NAME 33.Nm kinfo_getvmmap 34.Nd function for getting per-process memory map information 35.Sh LIBRARY 36.Lb libutil 37.Sh SYNOPSIS 38.In sys/types.h 39.In sys/sysctl.h 40.In util.h 41.Ft struct kinfo_vmentry * 42.Fn kinfo_getvmmap "pid_t pid" "size_t *cntp" 43.Sh DESCRIPTION 44This function is used for obtaining virtual memory mapping information 45of a particular process. 46.Pp 47The 48.Ar pid 49field contains the process identifier. 50This should be the a process that you have privilege to access. 51The 52.Ar cntp 53field is allows the caller to know how many records are returned. 54.Pp 55This function is a wrapper around 56.Xr sysctl 3 57with the 58.Dv KERN_PROC_VMMAP 59mib. 60While the kernel returns a packed structure, this function expands the 61data into a fixed record format. 62.Sh RETURN VALUES 63On success the 64.Fn kinfo_getvmmap 65function returns a pointer to an array of 66.Vt struct kinfo_vmentry 67structures as defined by 68.In sys/sysctl.h . 69The array was obtained by an internal call to 70.Xr malloc 3 71and must be freed by the caller with a call to 72.Xr free 3 . 73On failure the 74.Fn kinfo_getvmmap 75function returns 76.Dv NULL . 77.Sh SEE ALSO 78.Xr free 3 , 79.\" .Xr kinfo_getfile 3 , 80.Xr malloc 3 81