SYSINFO(2) Podręcznik programisty Linuksa SYSINFO(2)

sysinfo - zwraca informacje dotyczące systemu

#include <sys/sysinfo.h>
int sysinfo(struct sysinfo *info);

sysinfo() zwraca niektóre statystyki dotyczące użycia pamięci fizycznej, użycia pamięci przestrzeni wymiany oraz średniego obciążenia systemu.

Aż do Linuksa 2.3.16 sysinfo() zwracało informacje w następującej strukturze:


struct sysinfo {

long uptime; /* Liczba 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; /* Liczba procesów */
char _f[22]; /* Dopełnienie do 64 bajtów */ };

W powyższej strukturze rozmiary pamięci fizycznej i przestrzeni wymiany są podawane w bajtach

Począwszy od Linuksa 2.3.23 (i386) i 2.3.48 (wszystkie architektury) struktura ta ma postać:


struct sysinfo {

long uptime; /* Liczba sekund od startu systemu */
unsigned long loads[3]; /* Średnie obciążenie w ciągu 1, 5 i 15 minut */
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 do 64 bajtów */ };

W powyższej strukturze rozmiary pamięci fizycznej i przestrzeni wymiany są podawane jako wielokrotności mem_unit bajtów.

On success, sysinfo() returns zero. On error, -1 is returned, and errno is set to indicate the error.

info nie jest poprawnym adresem.

sysinfo() pojawiło się w Linuksie 0.98.pl6.

Ta funkcja jest specyficzna dla Linuksa i nie powinna być wykorzystywana w programach, które mają być przenośne.

Wszystkie informacje dostarczane przez to wywołanie systemowe są także dostępne w /proc/meminfo i /proc/loadavg.

proc(5)

Angielska wersja tej strony pochodzi z wydania 5.13 projektu Linux man-pages. Opis projektu, informacje dotyczące zgłaszania błędów oraz najnowszą wersję oryginału można znaleźć pod adresem https://www.kernel.org/doc/man-pages/.

Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Adam Byrtek <alpha@irc.pl>, Andrzej Krzysztofowicz <ankry@green.mf.pg.gda.pl> i Robert Luberda <robert@debian.org>

Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres manpages-pl-list@lists.sourceforge.net.

22 marca 2021 r. Linux