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.
Claim_Critical_Section
                                                     Up Next Previous
────────────────────────────────────────────────────────────────────────────
 
include vmm.inc
 
mov     eax, Claims             ; number of times to claim critical section
mov     ecx, Flags              ; flags for servicing interrupts
VMMcall Claim_Critical_Section
 
The Claim_Critical_Section service increments the claim count by the
specified value. It has the same effect as calling the
Begin_Critical_Section service repeatedly.
 
Parameter  Description
────────────────────────────────────────────────────────────────────────────
 
Claims     Specifies the number of times to claim the critical section. Zero
           is a valid number, but is ignored.
 
Flags      Specifies actions to take when interrupts occur while the virtual
           machine is blocked waiting for the critical section. This
           parameter can be a combination of the following values:
 
           Value                     Meaning
           ─────────────────────────────────────────────────────────────────
           Block_Svc_Ints            Service interrupts in the virtual
                                     machine even if the virtual machine is
                                     blocked.
 
           Block_Svc_If_Ints_Locked  Service interrupts in the virtual
                                     machine even if the virtual machine is
                                     blocked and the VMStat_V86IntsLocked
                                     flag is set.
 
           Block_Enable_Ints         Service interrupts in the virtual
                                     machine even if the virtual machine
                                     does not currently have interrupts
                                     enabled. This forces interrupts to be
                                     enabled. This value is only relevant if
                                     either Block_Svc_Ints or
                                     Block_Svc_If_Ints_Locked is set.
 
           The Block_Poll value is reserved and must not be used with this
           service.
 
Return Value
 
This service has no return value.
 
Uses
 
Flags
 
See Also
 
Adjust_Exec_Priority, Begin_Critical_Section, End_Critical_Section