Virtual Devices (3.1) (vdag31qh.hlp) (Table of Contents; Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software, purely for historical purposes. If you're looking for up-to-date documentation, particularly for programming, you should not rely on the information found here, as it will be woefully out of date.
Begin_Use_Locked_PM_Stack
                                                     Up Next Previous
────────────────────────────────────────────────────────────────────────────
 
include vmm.inc
 
VMMcall Begin_Use_Locked_PM_Stack
 
The Begin_Use_Locked_PM_Stack service locks the protected-mode stack,
preventing demand paging of the stack. Virtual devices use this service to
ensure that a protected-mode application runs on a stack that will not be
demand paged.
 
This service has no parameters.
 
Return Value
 
The Client_SS and Client_SP registers contain the address of the locked
stack if the stack was not already locked. Otherwise, these registers remain
unchanged.
 
Comments
 
Before calling this service, the virtual device must ensure that the current
virtual machine is running in protected mode. This means the VMStat_PM_Exec
value must be specified in the CB_VM_Status field of the control block for
the virtual machine.
 
Since most virtual devices rely on the Begin_Nest_Exec service to switch
stacks, this service is only useful for virtual devices, such as the virtual
PIC device, which explicitly change the execution mode of a virtual
machine.
 
A virtual device can call this service any numbr of times. Only the first
call switches stacks; all subsequent calls increment a counter. If a virtual
device locks the stack, it must eventually unlock it using the
End_Use_Locked_PM_Stack service.
 
Uses
 
Flags
 
See Also
 
Begin_Nest_Exec, End_Use_Locked_PM_Stack