Idea interessante, ma quella istruzione non fa quello che pensi che faccia. Da Wikipedia :
In the x86 computer architecture, HLT
(halt) is an assembly language instruction which halts the central processing unit (CPU) until the next external interrupt is fired. Interrupts are signals sent by hardware devices to the CPU alerting it that an event occurred to which it should react.
Un driver in modalità kernel potrebbe emettere quell'istruzione, ma il successivo interrupt hardware dovrebbe far riprendere la CPU qualunque cosa stia facendo. Anche da Wikipedia :
For example, pressing a key on the keyboard or moving the mouse triggers hardware interrupts that cause the processor to read the keystroke or mouse position.
Lo scopo reale dell'istruzione è quello di risparmiare energia, poiché l'arresto della CPU consente di risparmiare molta energia rispetto a un loop no-op. Sono certo che il tuo computer utilizzi HLT
molte volte al giorno senza che tu te ne accorga.
Se il sistema deve fermarsi immediatamente, un'opzione più efficace sarebbe quella di attivare un bugcheck (un crash del sistema fatale, come un BSOD su Windows). Un'altra opzione è scribacchiare sui gestori di errori per ottenere un triplice errore , che può causare il riavvio della macchina.