cli jump $
Alex Iliynsky, 2:5020/23

 p   ,     ⮬ p (p  FAQ  :)

  286-   pp,   ⢥   p
 Vm86(386+)  ⠪ ⨥ IOPL - Input Output Privilege Level -
 "p" ⥬, p p,  p p (0-3)
 pp襭 p    뢮  ⠪  cli/sti.
    ⮣, ⮡ p  p  p p뢠, 
   p p <= IOPL,    믮, 
 䮫⠭.
   ᠭ  饭 p, 筮  ᯮ cli/sti,
  ᪫祭 pp, 祣  ᪠  Vm86 (DOS᪨  ᥣ) -
 ᪮  real mode    祬  p筮.  Vm86 ᥣ 
  p쥬   - PL==3. ᫨ IOPL==3,  p 믮 
 Vm86  CLI, p pp뢠   p   p,
   ⮩   p STI. ᫨ ᯮ짮 IOPL!=3,  
 ᫥ 믮 CLI/STI  䮫⠬, p   뢠,  
 p   ᪮p 믮  Vm86   ﭭ p室
  饭 p  p⭮ p  䮫.

 p IOPL==3,  VM86 , 맢襩 cli   pp 襩,  
  뢥 pp  ⮣ ﭨ, p NMI, p  ᪨p
  CLI.
  H ⮬ p樯 ᤥ fail-safe (watchdog) NMI timer  EISA/MCA. p
 ppp  p p, ᫥ p p室 NMI,
 p  蠭 p樮 ⥬ p,   - ⠭
  ,  pp ( ).  ⮬,
 OS/2, p ᯮ IOPL==3  ᭥  p筮  
 EISA  MCA 設. ,  p樨  FS NMI timers  筮
 ISA,   p   蠫.

 Intel,  㡨p ⮣ "" ᢮ pp,  㤠 ᯥ樠
  - VME - Virtual Mode Extension, p  p  ᥪp p
 Intel  뤠     p襭. pp   ᫥ -
   䫠 VIP  VIF - Virtual Interrupt Pending  Virtual Interrupt
 Flag.    - p p  ⮬,  VM86  
 pp,  p -  p㠫⧮  IF - Interrupt Flag, p
  ⠢/᭨ cli/sti. p , 砥 p㠫뢠
 IF p VM86 ,    䥪  騩 IF,   ᫥⢨ 設
  ᭥  cli/jmp. VIP, p⭥ ᥣ p祭  㢥祭
 ᪮p p⪨ pp뢠  VM86  - p  pp뢠,
 (     믮 VM86 ),   p뢠
 p protected mode interrupt handler,  믮 p⢥  VM86
 .  p樮 pp  ᥬ p,   .

 뢮 - OS/2  ᭥ p 믮 cli/Jmp $  ᫥ ᫮:
  - p ᯮ EISA(EISA/PCI)/MCA 設. p PCI 祣   ᪠
     - 㯭  祣  .
  - ⮨ pp, p騩 VME -  ᥣ, 
    pp  Intel( p㣨 pp ᥩ   祭),
    p ⢥砥  CPUID.
