Я хотел бы добавить комментарий о 'cli', так как я был укушен этим пару раз в прошлом. Инструкция «cli» не блокирует все прерывания - она блокирует только маскируемые. Возможно, система все еще может быть разбужена из-за немаскируемого прерывания (NMI).
Поскольку один из комментариев указывает на то, что компьютер готов к выключению, я ожидаю, что в системе нет других потоков / процессов / задач, готовых для запуска (в противном случае NMI может привести к перепланировке). Для описываемого вами сценария NMI маловероятен; однако в зависимости от вашего уровня паранойи что-то пойдет не так, вы можете захотеть добавить петлю для защиты от этой возможности.
sysSuspend:
cli
hlt
jmp sysSuspend