get_nprocs(3) возвращает количество процессоров

Other Alias

get_nprocs_conf

ОБЗОР

#include <sys/sysinfo.h>

int get_nprocs(void);
int get_nprocs_conf(void);

ОПИСАНИЕ

Функция get_nprocs_conf() возвращает количество процессоров, настроенных операционной системой.

Функция get_nprocs() возвращает количество процессоров, доступных в системе. Это значение может быть меньше чем возвращаемое get_nprocs_conf(), так как процессоры могут быть выключены (например, в системах с подключением на ходу).

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

Как указано в ОПИСАНИИ.

АТРИБУТЫ

Описание терминов данного раздела смотрите в attributes(7).
ИнтерфейсАтрибутЗначение
get_nprocs(),
get_nprocs_conf()
безвредность в нитяхбезвредно (MT-Safe)

СООТВЕТСТВИЕ СТАНДАРТАМ

Эти функции являются расширениями GNU.

ЗАМЕЧАНИЯ

Текущая реализация этих функций не оптимальна, так как при каждом вызове открываются и обрабатываются файлы в файловой системе /sys.

Следующие вызовы sysconf(3) возвращают тоже что и описанные здесь функции.

    np = sysconf(_SC_NPROCESSORS_CONF);     /* настроенных процессоров */
    np = sysconf(_SC_NPROCESSORS_ONLN);     /* доступных процессоров */

ПРИМЕР

В следующем примере показано использование get_nprocs() и get_nprocs_conf().

#include <stdlib.h>
#include <stdio.h>
#include <sys/sysinfo.h>
int
main(int argc, char *argv[])
{
    printf("В системе настроено %d процессоров и "
            "%d процессоров доступно.\n",
            get_nprocs_conf(), get_nprocs());
    exit(EXIT_SUCCESS);
}