Исходный код процесса простоя системы - PullRequest
3 голосов
/ 14 мая 2010

Просто из интереса: каков исходный код процесса простоя системы? Какие инструкции выполняются? Как ЦПУ удалось войти в режим энергосбережения?

1 Ответ

5 голосов
/ 15 мая 2010

System Idle Process непрерывно выполняет KiIdleLoop с одним потоком для каждого процессора. Это можно увидеть с помощью средства просмотра процессов, такого как Process Explorer. Эта функция, по существу, проверяет список отложенных вызовов процедур (DPC) и выполняет все ожидающие элементы (например, для таймеров и компонентов оборудования). Затем он вызывает управление питанием (PoIdle), которое вызывает HAL (HalProcessorIdle), чтобы можно было войти в «режим энергосбережения». Это в системах x86 просто состоит из разрешения прерываний (sti) и затем инструкции hlt.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...