IOPL-Sensitive Instructions

The Problem—Instructions with Side Effects

In addition to IO instructions, a DOS task may attempt to execute other instructions that may interfere with the multitasking OS or other tasks that are currently suspended, or that may attempt to call services provided by a non-resident OS (e.g., DOS) or the BIOS. The problematic instructions are:

  • CLI.

  • STI.

  • PUSHF.

  • POPF.

  • INT nn.

  • IRET.

These instructions are described in the following subsections.

CLI (Clear Interrupt Enable) Instruction

Refer to Figure 15-6 on page 346. If the DOS task is permitted to execute the CLI instruction, the interrupt enable bit (EFlags[IF]) is turned off and the processor will not recognize subsequent external hardware interrupts received on its INTR ...

Get The Unabridged Pentium 4 IA32 Processor Genealogy now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.