Provided by:
manpages-pl-dev_20051117-1_all 
NAZWA
sysinfo - zwraca informacje statystyczne dotyczące całego systemu
SKŁADNIA
#include <sys/sysinfo.h>
int sysinfo(struct sysinfo *info);
OPIS
Aż do Linuksa 2.3.16 sysinfo zwracało informacje w następującej
strukturze:
struct sysinfo {
long uptime; /* ilość sekund od startu systemu */
unsigned long loads[3]; /* średnie obciążenie w ciągu 1, 5 i 15min.*/
unsigned long totalram; /* ilość pamięci */
unsigned long freeram; /* ilość wolnej pamięci */
unsigned long sharedram; /* ilość pamięci wspólnej */
unsigned long bufferram; /* pamięć wykorzystywana przez bufory */
unsigned long totalswap; /* ilość pamięci wymiany */
unsigned long freeswap; /* ilość wolnej pamięci wymiany */
unsigned short procs; /* ilość procesów */
char _f[22]; /* dopełnienie do 64 bajtów */
};
i rozmiary były podawane w bajtach. Począwszy od Linuksa 2.3.23 (i386),
2.3.48 (wszystkie architektury) struktura ta ma postać
struct sysinfo {
long uptime; /* ilość sekund od startu systemu */
unsigned long loads[3]; /* średnie obciążenie w ciągu 1, 5 i 15min.*/
unsigned long totalram; /* ilość pamięci */
unsigned long freeram; /* ilość wolnej pamięci */
unsigned long sharedram; /* ilość pamięci wspólnej */
unsigned long bufferram; /* pamięć wykorzystywana przez bufory */
unsigned long totalswap; /* ilość pamięci wymiany */
unsigned long freeswap; /* ilość wolnej pamięci wymiany */
unsigned short procs; /* ilość procesów */
unsigned long totalhigh; /* ilość pamięci wysokiej */
unsigned long freehigh; /* ilość wolnej pamięci wysokiej */
unsigned int mem_unit; /* wielkość jednostki pamięci w bajtach */
char _f[20-2*sizeof(long)-sizeof(int)]; /* dopełnienie dla libc5 */
};
i rozmiary są podawane jako wielokrotności mem_unit bajtów.
sysinfo w prosty sposób udostępnia ogólnosystemowe statystyki. Metoda
ta jest bardziej przenośna niż odczytywanie /dev/kmem. Przykład użycia
można znaleźć w intro(2).
WARTOŚĆ ZWRACANA
W razie pomyślnego zakończenia zwracane jest zero. W przypadku błędu
zwracane jest -1 i odpowiednio ustawiane errno.
BŁĘDY
EFAULT wskaźnik do struct sysinfo jest nieprawidłowy
ZGODNE Z
Ta funkcja jest specyficzna dla Linuksa i nie powinna być
wykorzystywana w programach, które mają być przenośne.
Jądro Linuksa dysponuje wywołaniem systemowym sysinfo od wersji
0.98.pl6. Linoksowa boblioteka libc zawiera funkcję sysinfo() od
wersji 5.3.5, a glibc od 1.90.
ZOBACZ TAKŻĘ
proc(5)