Requesting System Services

As previously mentioned, MVDM isolates some VDM-specific code and places it into the DOS Emulation kernel in the VDM's address space. This code provides those DOS services which can be supported in V86 mode, such as memory management services. Other services which require protected mode execution are provided by additional code which runs in protected mode.

When the DOS Emulation kernel requires protected mode services, it specifies the kernel procedure via an index, and executes a processor instruction which causes a general protection exception. The OS/2 Version 2.0 general protection exception handler traps the exception and invokes the 8086 Emulation component, which in turn transfers control to the specified kernel procedure. This is explained in detail in 8086 Emulation.


[Back: Initialization and VDM Creation]
[Next: System Service Call Behavior]