Process List

Process List — List running processes

Stability Level

Stable, unless otherwise indicated

Functions

pid_t * glibtop_get_proclist ()

Includes

#include <glibtop/proclist.h>

Description

Functions

glibtop_get_proclist ()

pid_t *
glibtop_get_proclist (glibtop_proclist *buf,
                      gint64 which,
                      gint64 arg);

Parameters

buf

Extra return information, see glibtop_proclist.

 

which

Criteria for processes in returned list. See the GLIBTOP_KERN_PROC_* and GLIBTOP_EXCLUDE_* constants.

 

arg

Extra arguments applied to which . Only GLIBTOP_KERN_PROC_* constants take arguments, see each constant definition for particular arg description.

 

Returns

A list of running processes or NULL on error. The returned list is allocated using g_malloc and must be freed using g_free to avoid a memory leak.

Types and Values

GLIBTOP_KERN_PROC_ALL

#define GLIBTOP_KERN_PROC_ALL		0

Return information about all processes


GLIBTOP_KERN_PROC_PID

#define GLIBTOP_KERN_PROC_PID		1

Return all processes with the pid which is passed in arg . You can use this to find out whether some process still exists.


GLIBTOP_KERN_PROC_PGRP

#define GLIBTOP_KERN_PROC_PGRP		2

Return all processes in the process group passed in arg .


GLIBTOP_KERN_PROC_SESSION

#define GLIBTOP_KERN_PROC_SESSION 3

Return all processes in the session passed in arg .


GLIBTOP_KERN_PROC_TTY

#define GLIBTOP_KERN_PROC_TTY		4

Return all processes which have the controlling tty passed in arg (which is interpreted as the device number).


GLIBTOP_KERN_PROC_UID

#define GLIBTOP_KERN_PROC_UID		5

Return all processes with the effective uid passed in arg .


GLIBTOP_KERN_PROC_RUID

#define GLIBTOP_KERN_PROC_RUID		6

Return all processes with the real uid passed in arg .


GLIBTOP_KERN_PROC_MASK

#define GLIBTOP_KERN_PROC_MASK		15

GLIBTOP_EXCLUDE_IDLE

#define GLIBTOP_EXCLUDE_IDLE		0x1000

Exclude idle processes.


GLIBTOP_EXCLUDE_SYSTEM

#define GLIBTOP_EXCLUDE_SYSTEM		0x2000

Exclude system (on most UNIXes root's) processes.


GLIBTOP_EXCLUDE_NOTTY

#define GLIBTOP_EXCLUDE_NOTTY		0x4000

Exclude processes without a controlling terminal.


struct glibtop_proclist

struct glibtop_proclist {
	guint64 flags;
	guint64 number;			/* GLIBTOP_PROCLIST_NUMBER */
	guint64 total;			/* GLIBTOP_PROCLIST_TOTAL */
	guint64 size;			/* GLIBTOP_PROCLIST_SIZE */
};

Members

guint64 flags;

   

guint64 number;

Number of entries in the returned list.

 

guint64 total;

Total size of the returned list (this equals number * size ).

 

guint64 size;

Size of a single entry in the returned list (this equals sizeof(unsigned)).