unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (SunOS-4.1.3)
Page:
Section:
Apropos / Subsearch:
optional field

KVM_NEXTPROC(3K)                                              KVM_NEXTPROC(3K)



NAME
       kvm_getproc, kvm_nextproc, kvm_setproc - read system process structures

SYNOPSIS
       #include <&lt;kvm.h>&gt;
       #include <&lt;sys/param.h>&gt;
       #include <&lt;sys/time.h>&gt;
       #include <&lt;sys/proc.h>&gt;

       struct proc *kvm_getproc(kd, pid)
       kvm_t *kd;
       int pid;

       struct proc *kvm_nextproc(kd)
       kvm_t *kd;

       int kvm_setproc(kd)
       kvm_t *kd;

DESCRIPTION
       kvm_nextproc()  may  be  used  to  sequentially  read all of the system
       process structures from the kernel identified by kd (see kvm_open(3K)).
       Each call to kvm_nextproc() returns a pointer to the static memory area
       that contains a copy of the next valid process table entry.   There  is
       no   guarantee  that  the  data  will  remain  valid  across  calls  to
       kvm_nextproc(), kvm_setproc(), or  kvm_getproc().   Therefore,  if  the
       process  structure  must  be saved, it should be copied to non-volatile
       storage.

       For performance reasons, many implementations will cache a set of  sys-
       tem  process  structures.   Since  the system state is liable to change
       between calls to kvm_nextproc(), and since the cache may contain  obso-
       lete  information,  there  is no guarantee that every process structure
       returned refers to an active process, nor is it certain that  all  pro-
       cesses will be reported.

       kvm_setproc() rewinds the process list, enabling kvm_nextproc() to res-
       can from the beginning of the system process table.  kvm_setproc() will
       always  flush  the  process structure cache, allowing an application to
       re-scan the process table of a running system.

       kvm_getproc() locates the proc structure of the  process  specified  by
       pid  and returns a pointer to it.  kvm_getproc() does not interact with
       the process table pointer manipulated  by  kvm_nextproc,  however,  the
       restrictions regarding the validity of the data still apply.

RETURN VALUES
       On  success,  kvm_nextproc()  returns  a  pointer to a copy of the next
       valid process table entry.  On failure, it returns NULL.

       On success, kvm_getproc() returns a pointer to the  proc  structure  of
       the process specified by pid.  On failure, it returns NULL.

       kvm_setproc() returns:

       0      on success.

       -1     on failure.

SEE ALSO
       kvm_getu(3K), kvm_open(3K), kvm_read(3K)



                                21 January 1990               KVM_NEXTPROC(3K)