sched_rr_get_interval

SCHED_RR_GET_INTERVAL(2) Руководство программиста Linux SCHED_RR_GET_INTERVAL(2)



ИМЯ
       sched_rr_get_interval - определяет временной интервал SCHED_RR для
       заданного процесса

ОБЗОР
       #include <sched.h>

       int sched_rr_get_interval(pid_t pid, struct timespec * tp);

ОПИСАНИЕ
       Вызов sched_rr_get_interval() записывает циклический квант времени
       процесса pid в структуру timespec, на которую указывает tp. Указанный
       процесс должен запускаться с политикой выполнения SCHED_RR.

       Структура timespec описана следующим образом:

           struct timespec {
               time_t tv_sec;        /* секунды */
               long   tv_nsec;       /* наносекунды */
           };

       Если значение pid равно нулю, то в *tp записывается квант времени
       вызывающего процесса.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
       При удачном выполнении sched_rr_get_interval() возвращается 0. При ошибке
       возвращается -1, а значение errno устанавливается соответствующим
       образом.

ОШИБКИ
       EFAULT Проблема с копированием информации в пространство пользователя.

       EINVAL Неверное значение pid.

       ENOSYS Системный вызов ещё не реализован (только в старых ядрах).

       ESRCH  Не удалось найти процесс с идентификатором, указанном в pid.

СООТВЕТСТВИЕ СТАНДАРТАМ
       POSIX.1-2001, POSIX.1-2008.

ЗАМЕЧАНИЯ
       В системах POSIX, в которых доступен вызов sched_rr_get_interval(),
       определён _POSIX_PRIORITY_SCHEDULING в <unistd.h>.

   Замечания, касающиеся Linux
       В POSIX не определён какой-либо механизм для контроля размера
       циклического кванта времени. В старых ядрах Linux для этого создан
       (непереносимый) метод. Квант можно контролировать подгоняя значение
       любезности процесса (см. setpriority(2)). Назначение отрицательного
       (т.е., высокого) значения любезности приведёт к более длинному кванту;
       назначение положительного (т.е., низкого) значения любезности приведёт к
       сокращению кванта. Квант по умолчанию равен 0.1 секунды; степень, с
       которой значение любезности влияет на квант, различается в разных версиях
       ядра. Данный метод подгонки кванта был удалён начиная с Linux 2.6.24.

       В Linux 3.9 добавлен новый механизм регулировки (и просмотра) кванта
       SCHED_RR: файл /proc/sys/kernel/sched_rr_timeslice_ms отражает квант как
       значение в миллисекундах, по умолчанию равное 100. Запись 0 в этот файл
       сбрасывает квант в значение по умолчанию.

СМОТРИТЕ ТАКЖЕ
       sched(7)



Linux                              2015-08-08           SCHED_RR_GET_INTERVAL(2)