Структура, используемая для получения информации о разделе адаптивного планировщика
#include <sys/sched_aps.h>
#include <sys/neutrino.h>
typedef struct {
_Int16t id;
_Uint64t budget_cycles;
_Uint64t critical_budget_cycles;
char name[APS_PARTITION_NAME_LENGTH+1];
_Int16t parent_id;
_Uint16t budget_percent;
_Int32t notify_pid;
_Int32t notify_tid;
_Uint32t pinfo_flags;
_Int32t pid_at_last_bankruptcy;
_Int32t tid_at_last_bankruptcy;
} sched_aps_partition_info;
Структура используется в функции SchedCtl() в сочетании с командой SCHED_APS_QUERY_PARTITION и определяет параметры существующей партиции адаптивного планировщика.
Структура включает следующие поля:
- id
- Номер партиции, которую необходимо запросить.
- budget_cycles
- Бюджет, в циклах. Для возможности использования данного значения, его необходимо преобразовать со значением cycles_per_ms из команды SCHED_APS_QUERY_PARMS
- critical_budget_cycles
- Критический бюджет, в циклах.
- name
- Имя раздела.
- parent_id
- Номер партиции, являющейся родительской для запрашиваемой партиции. Идентификационный номер системной партиции —
APS_SYSTEM_PARTITION_ID
. - budget_percent
- Бюджет партиции, в процентах.
- notify_pid
- notify_tid
- Идентификатор потока и идентификатор родительского процесса, которым должны быть отправлены уведомления о перегрузке и банкротстве или
-1
, если он не установлен. - pinfo_flags
- Набор флагов, дающих дополнительную информацию о партиции:
- SCHED_APS_PINFO_BANKRUPTCY_NOTIFY_ARMED
- См. SCHED_APS_ATTACH_EVENTS
- SCHED_APS_PINFO_OVERLOAD_NOTIFY_ARMED
- См. SCHED_APS_ATTACH_EVENTS
- pid_at_last_bankruptcy
- tid_at_last_bankruptcy
- Идентификаторы процесса и потока на момент последнего банкротства или
-1
, если предыдущего банкротства не было.
ЗОСРВ «Нейтрино»
SchedCtl()
Предыдущий раздел: Описание API системной библиотеки