sysinfo(2)

ИМЯ
sysinfo - возвращает информацию о системе

БИБЛИОТЕКА
Стандартная библиотека языка C (libc, -lc)

СИНТАКСИС
#include <sys/sysinfo.h>

int sysinfo(struct sysinfo *info);

ОПИСАНИЕ
Вызов sysinfo() возвращает некоторую статистику использования памяти и области подкачки, а также среднюю загруженность.

До Linux 2.3.16 вызов sysinfo() возвращал следующую структуру:

    struct sysinfo {
        long uptime;             /* Количество секунд, прошедшее
                                    с загрузки системы */
        unsigned long loads[3];  /* средняя 1, 5 и 15-минутная загруженность
                                    системы */
        unsigned long totalram;  /* Общий объём доступной оперативной памяти */
        unsigned long freeram;   /* Объём свободной памяти */
        unsigned long sharedram; /* Объём общей памяти */
        unsigned long bufferram; /* Объём памяти, использованной под буферы */
        unsigned long totalswap; /* Общий объём области подкачки */
        unsigned long freeswap;  /* Объём свободного пространства в области
                                    подкачки */
        unsigned short procs;    /* Текущее количество процессов */
        char _f[22];             /* Дополнение структуры до 64 байтов */
    };

В приведённой выше структуре размеры полей памяти и подкачки приводятся в байтах.

Начиная с Linux 2.3.23 (i386) и Linux 2.3.48 (остальные архитектуры), структура следующая:

    struct sysinfo {
        long uptime;             /* Количество секунд, прошедшее с загрузки
                                    системы */
        unsigned long loads[3];  /* средняя 1,  и 15-минутная загруженность
                                    системы */
        unsigned long totalram;  /* Общий объём доступной оперативной памяти */
        unsigned long freeram;   /* Объём свободной памяти */
        unsigned long sharedram; /* Объём общей памяти */
        unsigned long bufferram; /* Объём памяти, использованной под буферы */
        unsigned long totalswap; /* Общий объём области подкачки */
        unsigned long freeswap;  /* Объём свободного пространства в области
                                    подкачки */
        unsigned short procs;    /* Текущее количество процессов */
        unsigned long totalhigh; /* Общий объём дальней (high) памяти */
        unsigned long freehigh;  /* Объём свободной дальней памяти */
        unsigned int mem_unit;   /* Размер элемента памяти в байтах */
        char _f[20-2*sizeof(long)-sizeof(int)];
                                 /* Дополнение до 64 байт */
    };

В приведённой выше структуре размеры полей памяти и подкачки приводятся умноженными на mem_unit байт.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
On success, sysinfo() returns zero. On error, -1 is returned, and errno is set to indicate the error.

ОШИБКИ

EFAULT
    Аргумент info не содержит допустимого адреса.

СТАНДАРТЫ
Linux.

ИСТОРИЯ
Linux 0.98.pl6.

ПРИМЕЧАНИЯ
Вся информация, предоставляемая этим системным вызовом также доступна через /proc/meminfo и /proc/loadavg.

СМОТРИТЕ ТАКЖЕ
proc(5)

ПЕРЕВОД
Русский перевод этой страницы руководства разработал(и) Alexander Golubev <fatzer2@gmail.com>, Azamat Hackimov <azamat.hackimov@gmail.com>, Hotellook, Nikita <zxcvbnm3230@mail.ru>, Spiros Georgaras <sng@hellug.gr>, Vladislav <ivladislavefimov@gmail.com>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>

Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских переводчиков (<debian-l10n-russian@lists.debian.org>).