Deleted Added
full compact
1.\" Copyright (c) 2011 Sergey Kandaurov <pluknet@FreeBSD.org>
2.\" All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\" notice, this list of conditions and the following disclaimer.

--- 8 unchanged lines hidden (view full) ---

17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23.\" SUCH DAMAGE.
24.\"
25.\" $FreeBSD: head/lib/libprocstat/libprocstat.3 235286 2012-05-11 20:06:46Z gjb $
25.\" $FreeBSD: head/lib/libprocstat/libprocstat.3 249666 2013-04-20 07:47:26Z trociny $
26.\"
27.Dd April 1, 2012
28.Dt LIBPROCSTAT 3
29.Os
30.Sh NAME
31.Nm procstat_open_core ,
32.Nm procstat_open_kvm ,
33.Nm procstat_open_sysctl ,
34.Nm procstat_close ,
35.Nm procstat_getfiles ,
36.Nm procstat_getprocs ,
37.Nm procstat_freefiles ,
38.Nm procstat_freeprocs ,
39.Nm procstat_get_pipe_info ,

--- 61 unchanged lines hidden (view full) ---

101.Ft "struct kinfo_proc *"
102.Fo procstat_getprocs
103.Fa "struct procstat *procstat"
104.Fa "int what"
105.Fa "int arg"
106.Fa "unsigned int *count"
107.Fc
108.Ft "struct procstat *"
109.Fn procstat_open_core "const char *filename"
110.Ft "struct procstat *"
111.Fn procstat_open_kvm "const char *nlistf" "const char *memf"
112.Ft "struct procstat *"
113.Fn procstat_open_sysctl void
114.Sh DESCRIPTION
115The
116.Nm libprocstat
117library contains the API for runtime file and process information
118retrieval from the running kernel via the
119.Xr sysctl 3
120library backend, and for post-mortem analysis via the
121.Xr kvm 3
119library backend.
122library backend, or from the process
123.Xr core 5
124file, searching for statistics in special
125.Xr elf 3
126note sections.
127.Pp
128The
129.Fn procstat_open_kvm
130and
131.Fn procstat_open_sysctl
132functions use the
133.Xr kvm 3
134or
135.Xr sysctl 3
136library routines, respectively, to access kernel state information
137used to retrieve processes and files states.
138The
139.Fn procstat_open_core
140uses
141.Xr elf 3
142routines to access statistics stored as a set of notes in a process
143.Xr core 5
144file, written by the kernel at the moment of the process abnormal termination.
145The
146.Fa filename
147argument is the process core file name.
148The
149.Fa nlistf
150argument is the executable image of the kernel being examined.
151If this argument is
152.Dv NULL ,
153the currently running kernel is assumed.
154The
155.Fa memf
156argument is the kernel memory device file.
157If this argument is
158.Dv NULL ,
159then
160.Pa /dev/mem
161is assumed.
162See
163.Xr kvm_open 3
164for more details.
148Both functions dynamically allocate and return a
165The functions dynamically allocate and return a
166.Vt procstat
167structure pointer used in the rest of the
168.Nm libprocstat
169library routines until the corresponding
170.Fn procstat_close
171call that cleans up the resources allocated by the
172.Fn procstat_open_*
173functions.

--- 88 unchanged lines hidden (view full) ---

262.Nm procstat_get_shm_info
263.El
264.Sh SEE ALSO
265.Xr fstat 1 ,
266.Xr fuser 1 ,
267.Xr pipe 2 ,
268.Xr shm_open 2 ,
269.Xr socket 2 ,
270.Xr elf 3 ,
271.Xr kvm 3 ,
272.Xr queue 3 ,
273.Xr sysctl 3 ,
274.Xr pts 4 ,
275.Xr core 5 ,
276.Xr vnode 9
277.Sh HISTORY
278The
279.Nm libprocstat
280library appeared in
281.Fx 9.0 .
282.Sh AUTHORS
283.An -nosplit
284The
285.Nm libprocstat
286library was written by
287.An Stanislav Sedov Aq stas@FreeBSD.org .
288.Pp
289This manual page was written by
290.An Sergey Kandaurov Aq pluknet@FreeBSD.org .