sched_aps_query_thread_parms

Структура, используемая для определения партиции адаптивного планировщика для потока и установки ему метки критической важности

Прототип:

#include <sys/sched_aps.h>
#include <sys/neutrino.h>
typedef struct {
/* in params */
_Int32t pid;
_Int32t tid;
/* out parms: */
_Int16t id;
_Int16t inherited_id;
_Uint32t crit_state_flags;
} sched_aps_query_thread_parms;

Описание:

Структура используется в функции SchedCtl() в сочетании с командой SCHED_APS_QUERY_THREAD для одновременного изменения у потка метки критической важности и партиции адаптивного планировщика.

Структура включает следующие поля:

pid
Идентификатор процесса, которому принадлежит поток или 0 для обозначения вызывающего процесса.
tid
Идентификатор потока или 0 для вызывающего потока.
id
Идентификационный номер партиции, к которой первоначально присоединился поток.
inherited_id
Идентификационный номер партиции, которой в данный момент принадлежит поток. Данное значение может не совподать с полем id, потому что поток мог унаследовать партицию от вызывающего процесса.
crit_state_flags
Комбинация следующих флагов:
APS_QCRIT_PERM_CRITICAL
поток всегда работает как критический.
APS_QCRIT_RUNNING_CRITICAL
поток в настоящее время работает как критический.
APS_QCRIT_BILL_AS_CRITICAL
время выполнения потока рассчитывается из критического бюджета партиции. Если APS_QCRIT_PERM_CRITICAL не установлен, а APS_QCRIT_RUNNING_CRITICAL установлен, это означает, что поток временно унаследовал критическое состояние. Если APS_QCRIT_RUNNING_CRITICAL установлен, а APS_QCRIT_BILL_AS_CRITICAL не установлен, это означает, что поток работает как критический, но не затрачивает допонительные ресурсы, такие как критическое время бюджета партиции.

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

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

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

SchedCtl()




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