Saturday, 24 August 2013

Where is guest ring-3 code run in VM environment?

Where is guest ring-3 code run in VM environment?

According to the white paper that VMWare has published, binary translation
techinology is only used in kernel (ring 0 codes), ring 3 code is
"directly executed" on cpu hardware.
As I observed, no matter how many processes are run in the guest OS, there
is always only 1 process in the host OS. So I assume all the guest ring 3
code are run in the single host process context. (for VMWare, it's
vmware-vmx.exe).
So my question here is, how do you execute so many ring 3 code natively in
a single process? Considering most of the windows exe file don't contain
relocation information, it cannot be executed somewhere else, and binary
translation is not used in ring3 code.
Thanks.

No comments:

Post a Comment