sysinfo(2) 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

VERSIONI

Il Kernel Linux ha una chiamata di sistema sysinfo() dalla versione 0.98.pl6.

CONFORME A

Questa funzione è specifica di Linux, e non dovrebbe essere usata in programmi che si vogliono portare su altre piattaforme.

COLOPHON

Questa pagina fa parte del rilascio 3.73 del progetto Linux man-pages. Una descrizione del progetto, le istruzioni per la segnalazione degli errori, e l'ultima versione di questa pagina si trova su http://www.kernel.org/doc/man-pages/.

La versione italiana fa parte del pacchetto man-pages-it v. 3.73, a cura di: ILDP "Italian Linux Documentation Project" http://www.pluto.it/ildp
Per la traduzione in italiano si può fare riferimento a http://www.pluto.it/ildp/collaborare/
Segnalare eventuali errori di traduzione a [email protected]