Provided by:
manpages-it_2.80-3_all 
NOME
sysinfo - restituisce informazioni sulle statististiche di sistema
globali
SINTASSI
#include <sys/sysinfo.h>
int sysinfo(struct sysinfo *info);
DESCRIZIONE
Fino a Linux 2.3.16, sysinfo() restituiva informazioni nella seguente
struttura:
struct sysinfo {
long uptime; /* Secondi dall’avvio */
unsigned long loads[3]; /* Carico medio negli ultimi 15, 5, ed 1 minuto */
unsigned long totalram; /* Dimensione totale della memoria principale utilizzabile */
unsigned long freeram; /* Dimensione della memoria disponibile */
unsigned long sharedram; /* Quantità di memoria condivisa */
unsigned long bufferram; /* Memoria usata dai buffer */
unsigned long totalswap; /* Dimensione totale dello spazio di swap */
unsigned long freeswap; /* Spazio di swap ancora disponibile */
unsigned short procs; /* Numero di processi attuali */
char _f[22]; /* Riempie una struttura a 64 byte */
};
e le dimensioni erano in byte.
A partire da Linux 2.3.23 (i386), 2.3.48 (tutte le architetture) la
struttura è
struct sysinfo {
long uptime; /* Secondi dall’avvio */
unsigned long loads[3]; /* Carico medio negli ultimi 15, 5, ed 1 minuto */
unsigned long totalram; /* Dimensione totale della memoria principale utilizzabile */
unsigned long freeram; /* Dimensione della memoria disponibile */
unsigned long sharedram; /* Quantità di memoria condivisa */
unsigned long bufferram; /* Memoria usata dai buffer */
unsigned long totalswap; /* Dimensione totale dello spazio di swap */
unsigned long freeswap; /* Spazio di swap ancora disponibile */
unsigned short procs; /* Numero di processi attuali */
unsigned long totalhigh; /* Dimensione totale della memoria alta */
unsigned long freehigh; /* Dimensione della memoria alta libera */
unsigned int mem_unit; /* Dimensione in byte dell’unità di memoria */
char _f[20-2*sizeof(long)-sizeof(int)]; /* Riempimento per libc5 */
};
e le dimensioni sono indicate come multipli di mem_unit byte.
sysinfo() fornisce un modo semplice per ottenere statistiche globali di
sistema. Questo è più portabile che leggere /dev/kmem.
VALORI RESTITUITI
In caso di successo viene restituito zero, altrimenti -1, e errno verrà
impostato di conseguenza.
ERRORI
EFAULT il puntatore alla struct sysinfo non è valido
CONFORME A
Questa funzione è specifica di Linux, e non dovrebbe essere usata in
programmi che si vogliono portare su altre piattaforme.
Il kernel Linux ha una chiamata di sistema sysinfo() a partire da
0.98.pl6. Linux libc contiene una routine sysinfo() a partire da
5.3.5, e glibc ne ha una da 1.90.
VEDERE ANCHE
proc(5)