Mode Switching
There are three different ways a client can force a mode
switch between protected and real mode:
o Execute the default interrupt reflection handler
o Use the translation services to call real mode
code
o Use a real mode call-back to switch from real to
protected mode
o Use the raw mode switch functions
All mode switches except for the raw mode switches will save
some information on the DPMI host's ring 0 stack. This
means that programs should not terminate while in nested
mode switches unless they are using the raw mode switching
services. However, even programs that use raw mode switches
should not attempt to terminate from a hardware interrupt or
exception handler since the DPMI host performs automatic
mode and stack switching to provide these services.