Get_Time_Slice_Priority

include vmm.inc

mov ebx, VM ; VM handle

VMMcall Get_Time_Slice_Priority

mov [Flags], eax ; flags from CB_VM_Status

mov [Foreground], ecx ; foreground time-slice priority

mov [Background], edx ; background time-slice priority

mov [CPUTime], esi ; percentage of total CPU time used


The Get_Time_Slice_Priority service returns the time-slice execution flags, the foreground and background priorities, and the percent of CPU usage for a specified virtual machine.

Parameters

VM

Specifies a handle identifying the virtual machine for which to retrieve information.

Return Value

The EAX, ECX, EDX, and ESI registers contain the following information:

Register Description

EAX Specifies status flags from the CB_VM_Status field in the virtual machine's control block. It can be one of the following values:

Value Meaning

VMStat_Exclusive Exclusive execution.
VMStat_Background Background execution.
VMStat_High_Pri_Back High-priority background execution.
Register Description

ECX Specifies the foreground time-slice priority. The high word is always 0.
EDX Specifies the background time-slice priority. The high word is always 0.
ESI Specifies the percentage of total CPU time used by the virtual machine.

Comments

The percentage of CPU time indicates the maximum amount of time the virtual machine can run. If the virtual machine releases its time slice, this actual amount of CPU time will be lower because the system grants the released time to other virtual machines.

Uses

EAX, ECX, EDX, ESI, Flags

See Also

Get_Time_Slice_Granularity, Get_Time_Slice_Info

#ao642ac