Команда останова

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

Команда приостановки процессора до тех пор, пока не возникнет аппаратное прерывание. Когда процессор находится в стадии исполнения этой команды, он потребляет минимальное количество энергии, и, следовательно, почти что не выделяет тепла. В процессорах, совместимых с i386, эта команда на языке ассемблера записывается как HLT, от англ. halt — остановка и имеет опкод 0xF4[1]

Не стоит путать эту команду с командой NOP.

Принцип действия[править | править код]

Почти каждый современный набор инструкций процессора включает в себя инструкцию ожидания, который останавливает процессор до тех пор, пока больше работы не потребуется. В процессорах с прерываниями эта инструкция останавливает работу CPU до тех пор, пока не будет получено внешнее прерывание. На большинстве архитектур выполнение такой команды позволяет процессору значительно сократить потребление энергии и, следовательно, тепловую мощность.

Использование в операционных системах[править | править код]

Так как инструкция HLT относится к привилегированным, её может исполнить только то программное обеспечение, которое имеет доступ к кольцу 0, например, ядро системы. Эта команда используется операционной системой во время бездействия.

Примечания[править | править код]