include vmm.inc mov ebx, VM ; VM handle VMMcall Set_Execution_Focus jc focus_not_set ; carry flag set if the focus cannot be set |
The Set_Execution_Focus service assigns the execution focus to the specified virtual machine.
VM
Specifies a handle identifying the virtual machine to receive the execution focus.
The carry flag is clear if the execution focus was set to the specified virtual machine. Otherwise, the carry flag is set.
When a virtual machine has the execution focus, it executes using its foreground priority. If the specified virtual machine has exclusive execution priority, it is the only virtual machine to receive time slices. If the specified virtual machine does not have exclusive execution priority, the system schedules background virtual machines as well.
When a virtual machine receives the execution focus, the system suspends all other virtual machines except the system virtual machine and background virtual machines.
Only the system virtual machine can assign the execution focus to other virtual machines; a nonsystem virtual machine can only assign the execution focus to itself.
Flags
Get_Execution_Focus, Set_Time_Slice_Granularity, Set_Time_Slice_Priority