ОБЗОР
#include <sys/platform/ppc.h>
void __ppc_set_ppr_med(void);
void __ppc_set_ppr_very_low(void);
void __ppc_set_ppr_low(void);
void __ppc_set_ppr_med_low(void);
void __ppc_set_ppr_med_high(void);
ОПИСАНИЕ
Эти функции предоставляют доступ к Program Priority Register (PPR, регистру приоритета программы) архитектуры Power.PPR — это 64-битный регистр, которой управляет приоритетом программы. Изменяя значение PPR, программист может улучшить системную производительность, сделав использование системных ресурсов более эффективным, особенно в ситуациях конкурентного доступа. Доступные непривилегированные состояния достигаются следующими функциями:
- *
- Функция __ppc_set_ppr_med() устанавливает регистр приоритета программы равным среднему значению (по умолчанию).
- *
- Функция __ppc_set_ppr_very_low() устанавливает регистр приоритета программы равным очень низкому значению.
- *
- Функция __ppc_set_ppr_low() устанавливает регистр приоритета программы равным низкому значению.
- *
- Функция __ppc_set_ppr_med_low() устанавливает регистр приоритета программы равным значению ниже среднего.
Привилегированное состояние выше среднего также может быть установлено на определённые временные интервалы (непривилегированными) программами в режиме задачи (problem-state) следующей функцией:
- *
- Функция __ppc_set_ppr_med_high() устанавливает регистр приоритета программы равным значению выше среднего.
Если приоритет программы выше среднего и истёк временной интервал или если выполняется попытка назначить приоритет выше среднего в неразрешённый момент, то приоритет устанавливается в среднее значение.
ВЕРСИИ
Функции __ppc_set_ppr_med(), __ppc_set_ppr_low() и __ppc_set_ppr_med_low() имеются в glibc начиная с версии 2.18. Функции __ppc_set_ppr_very_low() и __ppc_set_ppr_med_high() впервые появились в glibc в версии 2.23.АТРИБУТЫ
Описание терминов данного раздела смотрите в attributes(7).Интерфейс | Атрибут | Значение |
__ppc_set_ppr_med(),
__ppc_set_ppr_very_low(), __ppc_set_ppr_low(), __ppc_set_ppr_med_low(), __ppc_set_ppr_med_high() | безвредность в нитях | безвредно (MT-Safe) |