GlibTop — Server initilization

Stability Level

Stable, unless otherwise indicated

Types and Values

struct glibtop
extern glibtop * glibtop_global_server
extern const unsigned long glibtop_server_features


#include <glibtop.h>


You do not need to worry about the glibtop * server structure if you don't need - the library exports a glibtop_global_server which you can use everywhere a glibtop * is expected.

Most of the library and all of the sysdeps function also have an alias (which is the function name without the <suffix>_l</suffix>,

<suffix>_s</suffix> or <suffix>_r</suffix> suffix) which don't

take a glibtop * as argument but uses the glibtop_global_server instead.



#define             LIBGTOP_CHECK_VERSION(major, minor, micro)

glibtop_init ()

glibtop *
glibtop_init (void);

Server initialization.


A glibtop reference.

glibtop_init_r ()

glibtop *
glibtop_init_r (glibtop **server_ptr,
                unsigned long  features,
                unsigned  flags);

glibtop_init_s ()

glibtop *
glibtop_init_s (glibtop **server_ptr,
                unsigned long  features,
                unsigned  flags);

Types and Values



struct glibtop

struct glibtop {
	unsigned flags;
	unsigned method;		/* Server Method */
	unsigned error_method;		/* Error Method */
	int input [2];			/* Pipe client <- server */
	int output [2];			/* Pipe client -> server */
	int socket;			/* Accepted connection of a socket */
	int ncpu;			/* Number of CPUs, zero if single-processor */
	int real_ncpu;			/* Real number of CPUs. Only ncpu are monitored */
	unsigned long os_version_code; /* Version code of the operating system */
	const char *name;		/* Program name for error messages */
	const char *server_command; /* Command used to invoke server */
	const char *server_host; /* Host the server should run on */
	const char *server_user; /* Name of the user on the target host */
	const char *server_rsh;		/* Command used to connect to the target host */
	unsigned long features;		/* Server is required for this features */
	unsigned long server_port; /* Port on which daemon is listening */
	glibtop_sysdeps sysdeps; /* Detailed feature list */
	glibtop_sysdeps required; /* Required feature list */
	pid_t pid;			/* PID of the server */

	uid_t uid;
	uid_t euid;
	gid_t gid;
	gid_t egid;

	glibtop_machine *machine; /* Machine dependent data */


extern glibtop *glibtop_global_server;


extern const unsigned long glibtop_server_features;