Это контролируется с помощью замков.Там нет ничего решающего, когда перевести процессор в спящий режим;приложения удерживают блокировку, чтобы предотвратить переход в спящий режим.Если блокировок пробуждения не удерживается, процессор переходит в спящий режим и не выйдет из спящего режима до тех пор, пока его не разбудит внешнее событие (нажатие кнопки, сетевая активность, будильник).