SchedInfo(), SchedInfo_r()

Получить параметры планирования

Прототип:

#include <sys/neutrino.h>
int SchedInfo( pid_t pid,
int policy,
struct _sched_info *info );
int SchedInfo_r( pid_t pid,
int policy,
struct _sched_info *info );

Аргументы:

pid
A process ID, or 0 to get information about the current process.
policy
One of the following:
SCHED_FIFO
a fixed-priority scheduler in which the highest priority, ready thread runs until it blocks or is preempted by a higher-priority thread.
SCHED_RR
the same as SCHED_FIFO, except threads at the same priority level timeslice (round robin) every 4 × the clock period (see ClockPeriod()).
SCHED_OTHER
currently the same as SCHED_RR.
SCHED_SPORADIC
sporadic scheduling.
info
A pointer to a struct _sched_info where the function can store the scheduler information.

Библиотека:

libc

Описание:

These kernel calls return information about the kernel's thread scheduler, including the minimum and maximum thread priority, for the process ID specified by pid when using the specified scheduling policy. If pid is 0, the scheduler information for the current process is returned. In either case, the struct _sched_info pointed to by info is filled in with the appropriate information.

The SchedInfo() and SchedInfo_r() functions are identical except in the way they indicate errors.


Note: Instead of using these kernel calls directly, consider calling sched_get_priority_max(), sched_get_priority_min(), or sched_rr_get_interval().

Возвращаемое значение:

SchedInfo()
Если возникла ошибка функция возвращает -1, код ошибки записывается в errno. Любое другое возвращенное значение считается успешным завершением.
SchedInfo_r()
EOK возвращается при успешном завершении. Функция НЕ устанавливает errno. При возникновении ошибки функция возвращает один из представленных ниже кодов.

Коды ошибок:

EINVAL
The pid or policy is invalid.
ENOSYS
The SchedInfo() function isn't supported by this system.
ESRCH
The process specified by pid doesn't exist.

Классификация:

ЗОСРВ «Нейтрино»

Точка остановки потока
Нет
Обработчик прерываний
Нет
Обработчик сигналов
Да
В потоке
Да

Тематические ссылки:

struct _sched_info, sched_get_priority_max(), sched_get_priority_min(), sched_rr_get_interval(), SchedGet(), SchedSet()




Предыдущий раздел: Описание API системной библиотеки