SYSINFO(3)

NAME

SYSINFO - GNU interface for gathering system information

SYNOPSIS

#include <sys/sysinfo.h>
int sysinfo(struct sysinfo *info);

DESCRIPTION
The sysinfo() function returns common information about the configuration and state of the system:
struct sysinfo {
  long uptime;                  /* Seconds since boot */
  unsigned long loads[3];       /* 1, 5, and 15 minute load averages */
  unsigned long totalram;       /* Total usable main memory size */
  unsigned long freeram;        /* Available memory size */
  unsigned long sharedram;      /* Amount of shared memory */
  unsigned long bufferram;      /* Memory used by buffers */
  unsigned long totalswap;      /* Total swap space size */
  unsigned long freeswap;       /* swap space still available */
  unsigned short procs;         /* Number of current processes */
  unsigned short pad;           /* leaving this for linux compatibility */
  unsigned long totalhigh;      /* Total high memory size */
  unsigned long freehigh;       /* Available high memory size */
  unsigned int mem_unit;        /* Memory unit size in bytes */
  /* leaving this for linux compatibility */
  char _f[20-2*sizeof(long)-sizeof(int)];
};
sysinfo() is a high-level GNU interface for retrieving information otherwise provided by sysconf(3) and sysctl(3).

RETURNS
0 on success, -1 if full data cannot be collected.

SEE ALSO
sysconf(3), sysctl(3)

STANDARDS
sysinfo() is not portable, and is provided mainly as a bridge for porting GNU programs.

AUTHOR
Kostas Petrikas