Семафор (программирование): различия между версиями
[отпатрулированная версия] | [отпатрулированная версия] |
Содержимое удалено Содержимое добавлено
м →В архитектуре ARM: источники |
м →В архитектуре ARM: источники |
||
Строка 998:
* цикл активного ожидания в случае легковесного семафора, при котором периодически проверяется значение счётчика{{sfn|ARM|loc=1.3.1 Power-saving features|p=9}} с помощью инструкции <code>LDREX</code>;
* блокировка с переводом процессора в энергосберегающий режим ожидания с помощью инструкций ожидания прерывания <code>WFI</code> или ожидания события <code>WFE</code>{{sfn|ARM|loc=1.3.3 Implementing a semaphore|p=4|quote=WAIT_FOR_UPDATE and SIGNAL_UPDATE are described in Power-saving features on page 1-9|p=14}}{{sfn|ARM|loc=1.3.1 Power-saving features|p=9—12}};
* переключение контекста на исполнение другой задачи вместо блокировки процессора
На уровне многозадачной операционной системы может использоваться комбинация перечисленных способов для обеспечения максимальной загрузки процессоров с переходом в энергосберегающий режим во время простоев.
|