Software Archive
Read-only legacy content
17061 Discussions

Question about sysenter/sysexit

hamedn
Beginner
499 Views
Hi; in (http://www.intel.com/technology/itj/...3-software.htm ) it's declared that
Executions of SYSENTER by a guest application cause transitions to the VMM and not to the guest OS. The VMM must emulate every guest execution of SYSENTER.
It means that execution of sysenter instruction cause a VM Exit and transfer control to VMM to handle guest's system calls. Please say me how VMM handles guest's system calls?
Dose VMM uses guest system calls handler routines to handle guest's system calls?
0 Kudos
1 Reply
hellfire
New Contributor I
499 Views
Quoting - hamedn
Hi; in (http://www.intel.com/technology/itj/...3-software.htm ) it's declared that
Executions of SYSENTER by a guest application cause transitions to the VMM and not to the guest OS. The VMM must emulate every guest execution of SYSENTER.
It means that execution of sysenter instruction cause a VM Exit and transfer control to VMM to handle guest's system calls. Please say me how VMM handles guest's system calls?
Dose VMM uses guest system calls handler routines to handle guest's system calls?

This statement is related only to software virtualization approach. For this case, Ring0 code runs at Ring1 or Ring3 level. Developer has to virtualize these instructions in order to achieve proper guest execution. Usually, VM exit handler of SYSENTER/SYSEXIT changes virtual CPU state (current privilege level, CS, EIP and ESP) and resumes guest execution.

If Intel VT hardware virtualization is used, SYSENTER and SYSEXIT instructions do not cause VM exits and execute transparently.

0 Kudos
Reply