NAME
sysinfo - return system information
SYNOPSIS
#include <sys/sysinfo.h> int sysinfo(struct sysinfo *info);
DESCRIPTION
sysinfo() returns certain statistics on memory and swap usage, as well as the load average. Until Linux 2.3.16, sysinfo() returned information in the following structure: 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 */ char _f[22]; /* Pads structure to 64 bytes */ }; In the above structure, the sizes of the memory and swap fields are given in bytes. Since Linux 2.3.23 (i386) and Linux 2.3.48 (all architectures) the structure is: 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 long totalhigh; /* Total high memory size */ unsigned long freehigh; /* Available high memory size */ unsigned int mem_unit; /* Memory unit size in bytes */ char _f[20-2*sizeof(long)-sizeof(int)]; /* Padding to 64 bytes */ }; In the above structure, sizes of the memory and swap fields are given as multiples of mem_unit bytes.
RETURN VALUE
On success, sysinfo() returns zero. On error, -1 is returned, and errno is set to indicate the cause of the error.
ERRORS
EFAULT info is not a valid address.
VERSIONS
sysinfo() first appeared in Linux 0.98.pl6.
CONFORMING TO
This function is Linux-specific, and should not be used in programs intended to be portable.
NOTES
All of the information provided by this system call is also available via /proc/meminfo and /proc/loadavg.
SEE ALSO
proc(5)
COLOPHON
This page is part of release 4.09 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at https://www.kernel.org/doc/man-pages/.
More Linux Commands
manpages/glMultiTexCoord1dARB.3gl.html
glMultiTexCoord1dARB(3gl) - set the current texture coordina
glMultiTexCoordARB specifies texture coordinates in one, two, three, or four dimensions. glMultiTexCoord1ARB sets the current texture coordinates to (s, 0, 0, 1
manpages/time.3am.html
time(3am) time functions for gawk - Linux manual page.......
The time extension adds two functions named gettimeofday() and sleep(), as follows. gettimeofday() This function returns the number of seconds since the Epoch a
manpages/XIGetProperty.3.html
XIGetProperty(3) - change, retrieve or delete a device's pro
The XIGetProperty function returns the actual type of the property; the actual format of the property; the number of 8-bit, 16-bit, or 32-bit items transferred;
manpages/getafm.1.html
getafm(1) - create an AFM file for a PostScript font........
Getafm generates a PostScript file which prints an AFM file for a font to the printers output channel. The output of getafm should be sent to a printer, or to G
manpages/name_to_handle_at.2.html
name_to_handle_at(2) obtain handle for a pathname and open f
The name_to_handle_at() and open_by_handle_at() system calls split the functionality of openat(2) into two parts: name_to_handle_at() returns an opaque handle t
manpages/ldap_errlist.3.html
ldap_errlist(3) - LDAP protocol error handling routines.....
The ldap_err2string() routine provides short description of the various codes returned by routines in this library. The returned string is a pointer to a static
manpages/glConvolutionFilter1D.3gl.html
glConvolutionFilter1D(3gl) - define a one-dimensional convol
glConvolutionFilter1D builds a one-dimensional convolution filter kernel from an array of pixels. The pixel array specified by width, format, type, and image is
manpages/cycbuff.conf.5.html
cycbuff.conf(5) - Configuration file for INN CNFS storage me
This file defines the cyclical buffers that make up the storage pools for CNFS (Cyclic News File System). Some options controlling the behavior of the CNFS stor
manpages/XStoreBuffer.3.html
XStoreBuffer(3) - manipulate cut and paste buffers (ManPage)
The data can have embedded null characters and need not be null-terminated. The cut buffers contents can be retrieved later by any client calling XFetchBytes. X
manpages/chem.1.html
chem(1) - groff preprocessor for producing chemical structur
chem produces chemical structure diagrams. Todays version is best suited for organic chemistry (bonds, rings). The chem program is a groff preprocessor like eqn
manpages/gs-stp.1.html
gs-stp(1) - Ghostscript device driver for ESC/P, ESC/P2, RTL
Options for the stp driver are given in normal Ghostscript manner. The resolution of the image calculated by Ghostscript is not bound to the resolution of th...
manpages/openlog.3.html
openlog(3) - send messages to the system logger (Man Page)
closelog() closes the descriptor being used to write to the system logger. The use of closelog() is optional. openlog() opens a connection to the system logger
