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

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

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

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

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

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

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

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

Ссылки[править | править вики-текст]

  1. Intel ® 64 and IA-32 Architectures Software Developer’s Manual С. 1003.