SYSINFO(2)

NOME
sysinfo - restituisce informazioni di sistema

SINTASSI
#include <sys/sysinfo.h>

int sysinfo(struct sysinfo *info);

DESCRIZIONE
sysinfo() restituisce alcune statistiche sull'uso della momoria e della swap, e anche sul carico medio.

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 */
    };

Nella struttura appena vista, le dimensioni della momoria e dei campi swap sono in byte.

A partire da Linux 2.3.23 (i386) e Linux 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 a 64 byte */
    };

Nella struttura di cui sopra le dimensioni della momoria e dei campi della swap sono indicate come multipli di mem_unit byte.

VALORI RESTITUITI
In caso di successo sysinfo() restituisce zero, In caso di errore viene restituito -1, e errno verrà impostato di conseguenza.

ERRORI

EFAULT
    info non è un indirizzo valido

VERSIONI
sysinfo() apparve per la prima volta in Linux 0.98.pl6.

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

NOTE
Tutte le informazioni fornite da questa chiamata di sistema sono disponibili anche attraverso /proc/meminfo e /proc/loadavg.

VEDERE ANCHE
proc(5)

COLOPHON
Questa pagina fa parte del rilascio 5.06 del progetto Linux man-pages. Una descrizione del progetto, le istruzioni per la segnalazione degli errori, e l'ultima versione di questa pagina si trovano su https://www.kernel.org/doc/man-pages/. La versione italiana fa parte del pacchetto man-pages-it v. 5.06, 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 ildp@pluto.it