Virtualization Software Development

Finding out if "Unrestricted Guest" supported at runtime

Hi there,

is there an option to find out at runtime (e.g. with means of CPUID or something else) if the "Unrestricted Guest" feature is supported on the CPU? In the developer manual I can only find which flags control the UG feature (i.e. "25.8. Unrestricted Guests" ff), but I don't see anywhere how to determine if the feature is actually supported. Historically, at which processor family was "Unrestricted Guest" introduced? Is there a easy way to tell which processors contian the feature from the timeline?

Best regards,
Joe

Is it possible to use Intel NPT to do cross ISA memory translation?

O.K., I know Intel virtualization techniques are used to help better performance for same ISA, i.e., x86, virtualization. But I am curious if we can use NPT to help us to do cross ISA memory translation. For example, I can run a ARM guest on x86 host by using QEMU, but the memory translation inside QEMU is pure software. Is it possible to leverage underlying hardware to speedup the translation?

Any comments are welcome. Thanks!

Performance Counter Uncore issues

Trying to implement performance counting on my bare-metal hypervisor. Particularly I am interested in the L3 cache misses for an intel i7 06_1Eh processor. There are two methods that should give me the same result, the non-architectural MEM_LOAD_RETIRED.L3_MISS performance event and the uncore UNC_l3_MISS.ANY performance event. I assign either of these events to the IA32_PERFEVTSEL0, set the USR, OS, and EN bits, or the MSR_UNCORE_PERFEVTSEL0 setting the EN bits. And then I set their respective enable bits in their respective global performance control MSRs.

Cloud Computing Via Virtualization

Dear Friends,
Now a Days Cloud Computing takes a lead in IT industry. We all Knows How Cloud Works.
First We need to setup one server that creats main node or cluster (Master) and Others are Supporting Node.
I have some idea about Infrastructure as a service via Ubuntu server.

In
IaaS we have some Actual Processors and Chunks of Hardware but Through
Virtualization We can Create a Node. And Friend If You have any Idea
About Clusters,Nodes and Virtual Server than You can Post Here.

Now a days i m developing Cluster Monitoring System.

Cloud Computing Via Virtualization

Dear Friends,
Now a Days Cloud Computing takes a lead in IT industry. We all Knows How Cloud Works.
First We need to setup one server that creats main node or cluster (Master) and Others are Supporting Node.
I have some idea about Infrastructure as a service via Ubuntu server.

In IaaS we have some Actual Processors and Chunks of Hardware but Through Virtualization We can Create a Node. And Friend If You have any Idea About Clusters,Nodes and Virtual Server than You can Post Here.

Now a days i m developing Cluster Monitoring System.

MSR-Bitmaps

Having problems with the MSR bitmaps.
I read the IA32_VMX_PROCBASED_CTLS MSR, set bit 28 and stored it into the vmcs's Primary proc-based VM-execution controls field.
I then have the following structure in the vmcs header file:

struct MSR_BITMAP
{
u64 MSR_READ_LO[128];
u64 MSR_READ_HI[128];
u64 MSR_WRITE_LO[128];
u64 MSR_WRITE_HI[128];
} __attribute__ (( aligned (4096) ));

Using SYSCALL/SYSRET in a 64bit guest OS (running as a VM) causes #UD

Hi

I have an RTOS 64bit which uses SYSCALL/SYSRET for system calls. They work fine if this OS is executed "native" on an Intel machine.

Now if I use a VMM (under development, 64bit) and start the OS as 64bit guest VM the SYSCALL causes an invalid opcode exception. The EFER.SCE bit is set and no LOCK prefix is used. I've also tried to use SYSENTER/SYSEXIT in this OS and they work just fine.

I'm not sure if I have setup the VMCS correctly. Are there any hints or special settings in VMCS regarding SYSCALL/SYSRET when running virtualized?

Suscribirse a Virtualization Software Development