VMware Communities
AHSommer
Contributor
Contributor

Windows 8 + Workstation + HyperV - working together (or not)

As I went through this pain, thought to just document my findings.

Under Windows 7, you could run Virtual PC and Workstation together without any issues. However, under Windows 8, it is not Hyper-V and unfortunately, they will not work together.

They both try to access the virtualization hardware at the same time and this results in a spectacular crash of the system and a restart.

There is no need to have a dual boot system, you simply have to turn off the Hyper-V service when you want to run a VMWare VM with Workstation.

You must also Upgrade to VMWare Workstation 9

To run a VMWare VM with Workstation or Player, you must stop the Hyper-V Virtual Machine Management and set it to Manual

HyperV.gif

To run a Hyper-V VM, you will need to stop all VMWare VM's and the start the Hyper-V Virtual Machine Management

Cheers

Reply
0 Kudos
19 Replies
admin
Immortal
Immortal

AHSommer wrote:

They both try to access the virtualization hardware at the same time and this results in a spectacular crash of the system and a restart.

When running Workstation as a guest of Hyper-V in the root partition, Workstation doesn't actually see the virtualization hardware, since Hyper-V doesn't virtualize the virtualization hardware.  Workstation is forced to fall back to binary translation.

If your physical CPU has SLAT support (EPT or RVI, depending on the CPU vendor), you should be able to run Workstation as a guest of Hyper-V in the root partition, but you will be limited to 32-bit nested VMs under Workstation.  Does your physical CPU support SLAT?

If your physical CPU does not have SLAT support, then you will get a BSOD of the host if you try to run Workstation as a guest of Hyper-V in the root partition.  This is because Hyper-V imposes some restrictions on guest behavior in the root partition, and it will synthesize a machine check if those restrictions are violated.

Reply
0 Kudos
mfelker
Expert
Expert

Will this  method work with  INSTALLING   WS 9 on a Windows 8 host after Hyper-V has been installed? .  That is after installinig the Hyper-V role  and manually stopping he service will WS know it is not  on a Hyper-V host and install normally?  There is also a script posted on this forum to stop VMware servvices so it would easier to go back and forth between Virutaliztion methods.  I'm  pretty sure Virtualbox is also the same kind of hypervisor as VMware as well..  IF this is possible it would be very muci    better r than dual-booting using bcdedit . I could for example create a Hyper-V .vhd disk and convert to .vmdk or .vdi disk format and vice-versa.

Reply
0 Kudos
AHSommer
Contributor
Contributor

@mfelker

That is exactly what I did.

I upgraded Win7 pro to Win8 Pro, activated Hyper-V and created a Hyper V machine.

Then, after the process of getting WS 9 going, I stopped and set to manual the Hyper-V service as noted, and everything works perfectly.

I am even running the XPMode of Windows Virtual PC inside a Win7 Pro VM running under WS 9

They have been running for 5 days now non-stop - no issues.

Reply
0 Kudos
AHSommer
Contributor
Contributor

@jmattson

No SLAT support.

I wasn't trying to run one inside the other, just side by side - which they didn't like either! Smiley Happy

Switching back and forth between VM Hosts is not a problem for me. I only need one or the other - mostly use the VMWare WS versions as it gives me proper USB support.

Cheers

Reply
0 Kudos
mfelker
Expert
Expert

T

Hi!

"Then,  after the process of getting WS 9 going, I stopped and set to manual  the Hyper-V service as noted, and everything works perfectly"

Since I have Windows  8 Pro RTM from Technet I installed it without an upgrade ("Custom").  I have already  installed WS 9 and VB 4.1.20. So I will uninstall these progralms (good test anyway) - then install Hyper-V role and set it to manual after creating a Hyper-V VM. .Then reinstall WS and VB.  and for exmaple see if I can converft the .vhd to a .vmdk.   I'll try using VMware Converter standalone  perhaps.  If for some reason that doesn't work (doesn't seem likely)  I can re-install Window 8 and   enable Hyper-V  before  installing WS 9 after setting the Hyper-V  service to manual  If I understand you I can then start the Hyper-V service and it will be happy to do its thing. Stopping it I can use VMware and VB.

Seems  you have gotten this setup to work.

-

Reply
0 Kudos
admin
Immortal
Immortal

AHSommer wrote:

I wasn't trying to run one inside the other, just side by side - which they didn't like either! Smiley Happy

Hyper-V is a Type I  hypervisor.  It runs on bare metal, not on a host operating system.

Once you install the Hyper-V role on your system, Windows 8 runs as a virtual machine inside Hyper-V.  It is a privileged guest, but it is a guest nonetheless.  Anything you run on Windows 8 runs inside this Hyper-V VM.  So, if you run Workstation on Windows 8 with the Hyper-V role installed, you are running Workstation inside Hyper-V.

It is not possible to set up a side-by-side configuration of these two hypervisors.

Reply
0 Kudos
AHSommer
Contributor
Contributor

Jim:

I think there is some confusion.

This isn't a bare metal box. This is a laptop which has Win8 Pro 64 bit installed as the boot operating system.

The Hyper-V is a service WITHIN Windows 8 Professional (note - NOT server 2008).

(check the image further up in this discussion)

I have in fact got VMWare running under Windows 8 Professional. And if I shut down VMWare, and start the HyperV service, I can run my HyperV VM's

I have not yet tried installing Hyper-V native (or VMWare Hypervisor for that matter) and then running VM WS on top of that.

Does this make sense?

Reply
0 Kudos
admin
Immortal
Immortal

AHSommer wrote:

Jim:

I think there is some confusion.

This isn't a bare metal box. This is a laptop which has Win8 Pro 64 bit installed as the boot operating system.

The Hyper-V is a service WITHIN Windows 8 Professional (note - NOT server 2008).

(check the image further up in this discussion)

I have in fact got VMWare running under Windows 8 Professional. And if I shut down VMWare, and start the HyperV service, I can run my HyperV VM's

I have not yet tried installing Hyper-V native (or VMWare Hypervisor for that matter) and then running VM WS on top of that.

Does this make sense?

Yes, there is indeed some confusion.

It sounds like you aren't actually running Hyper-V on your laptop.  You're just running the Hyper-V management service.  Is that right?  That would explain two things that I was wondering about.  (1) I thought that Hyper-V R3 required SLAT support. (2) Workstation should have refused to start a VM when running under Hyper-V.

When you say "I can run my Hyper-V VMs," do you mean that you can manage remote VMs?  Or are you saying that you can run Hyper-V VMs on the local machine?  If the latter, then I'm still confused.

Reply
0 Kudos
mfelker
Expert
Expert

If I  understand you correctly then. If you install Hyper-V on Windows 8 even if you shut down the Hyper-V management service you cannot install WS.   without removing the Hyper-V role.  I assume this is what you mean by not being able to run the  2 products side by side?  Can you however run  a dual boot system similar to the link Ulli Hankin provided?.  This still would   not  be useful for me  if the two boot selections (Hyper-V orr VMware enabled) are  not "synced" when new programs  were added or removed in one or the other.  Would not the  virtual disks themselves,m not powered on, be available for conversion . Is this corrrect??

You can still create a VMware eVM or Windows 2008 Server R2   and then create a nested Hyper-V machine iwthin that VM.

Reply
0 Kudos
AHSommer
Contributor
Contributor

Sounds like this is something that will confuse others! Smiley Happy

Just to be clear, I am NOT running them side by side or inside of each other. But, I have got BOTH installed in Windows 8 Professional, and can run either one - just by toggling the Hyper-V service on or off.

An installation note: You MUST turn off your anti-virus and firewall during the installation of VMWare WS 9

As the screen shot is too large to paste in here, I've attached it.

This screen shot shows thate Hyper-V Virtual Machine Manager, (LUGGAGE) and a VM of Win7 Profession N - 64Bit machine (installation starting), with the Hyper-V Services shown above them.

This is all running on a Windows 8 Professional Boot

When I shut down the VM, and stop the Hyper-V Virtual Machine Management Service, I can then run VMWare Workstation Version 9. Without rebooting, without Dual Booting, without doing anything other  thatn stopping the service.

To go back to HyperV, i simply stop VMWare WS, start the service and voila!

An observation - the VMWAre machine installed from the Same ISO file took some 20 minutes to install.

The Hyper-V machine installed in the time it took me to type up this mail!

Cheers

Reply
0 Kudos
admin
Immortal
Immortal

AHSommer wrote:


An observation - the VMWAre machine installed from the Same ISO file took some 20 minutes to install.

The Hyper-V machine installed in the time it took me to type up this mail!

From the lackluster performance, it sounds like Workstation is running nested under Hyper-V, even though the Hyper-V management service has been stopped.  Would you mind posting the vmware.log file?

Reply
0 Kudos
AHSommer
Contributor
Contributor

Jim:

Must apologize - up to this point I had not actually created a HyperV machine - only played with the service settings. The role was installed, but had never really been used.

Once that machine in my previous post was created, I had to do one additional step to get back to VMWare - remove HyperV from the features list.

That of course requires a reboot.

Since removing the role, i was able to run VMWare WS and VM's again. I stopped those, added the Hyper-V role back, and was able to start the Hyper V machine.

So, yes, I can have both, but need to enable / disable the Hyper-V role and restart in between running VM WS and Hyper-V

I've attached the Logs for both the 64 bit Win 7 Pro N and the 32 Bit Win 7 Ultimate as you requested.

All of this of course is just an experiment. Hyper-V was a curiosity thing for me as I have a lot of VMWare WS Machines configured and won't likely swap back and forth. This all started when I enable the Hyper-V feature and had a catastrophic crash moments later. Eventually, turning off the Hyper-V Vitual Machine Management Service solved the problem. Turning it back on re-created the problem. This led me to the erroneous conclusion that only the service needed to be stopped.

So now this is the playing field.

  • To install and run VMWare Workstation Version 9 on Windows 8 Pro
    • Hyper-V must not be enabled
    • Anti-Virus needs to be turned off (only during installation)
    • Virtualization in the BIOS needs to be turned on
  • Once VMWare WS is installed, one can enable the Hyper-V feature and run Hyper-V VM's under Windows 8 Pro
  • To Switch back to using VMWare WS 9 and related VMs
    • Hyper-V features needs to be removed

Sorry for any confusion created (i was the one confuzzled Smiley Sad )

Cheers

Reply
0 Kudos
mfelker
Expert
Expert

Thanks for the  complete instructions concerning the installation  proces.  .  I will follow  them  on my (re)  installation of Windows 8 Pro.  I need to   re-install the OS (I've backed up the  files I need) because when the Hyper-V role was enabled (w/o WS) it could not   find my  NIC - in terms of creatging a virtual switch.  This was probably duo  my using Avast  anivirus which  created something call a miniport   in the device manager - in   fact 35 of them!

I'll use the BitDefender AV next time.

I'll leave off   posting on this thread for some time as I want to    start using WS 9 Linux - I've already creaated a Knoppix VM.  Very neat   OS!

Thank you and Mr Mattson for this    very interesting thread!

Reply
0 Kudos
admin
Immortal
Immortal

You have a Sandy Bridge CPU, which does have SLAT.  So, that clears up the mystery about Hyper-V R3.  I'm still curious about the disastrous crash, though.  Was that with the Hyper-V role installed or just with the Hyper-V management tools installed?  Either way, did Windows leave you with a memory.dmp file?  The crash is unexpected on a system with SLAT, even with the Hyper-V role installed.

I don't have an explanation for the slow install times, but your vmware.log files for 64-bit Win7 Pro N do show significant delays accessing the vmdk file for the virtual disk.  Are these long installation times with anti-virus software running?  If so, do they get better with the anti-virus software disabled?  Do you have whole disk encryption on the drive backing the vmdk files?  Is it local storage or over the network?

Thanks!

Reply
0 Kudos
AHSommer
Contributor
Contributor

Jim:

The crash - according to the gent who handled my support call, is a result of the VMWare hypervisor and the Hyper-V Service trying to access the Virtualization hardware at the same time and causing a catastrophic BSOD!

At the time, the Hyper-V Role was installed, but NO VM's had been created or accessed locally on the machine. Only the Hyper-V Virtual Machine Management Service was running.

Running SystemInfo from the command line gives

Hyper-V Requirements:      VM Monitor Mode Extensions: Yes
                           Virtualization Enabled In Firmware: Yes
                           Second Level Address Translation: Yes
                           Data Execution Prevention Available: Yes

No dump files produced! As I said - catastrophic! Also, with 32GB of RAM, I have no swap file configured.

Slow times - it appears that a few lines needed to be added to my config.ini file, namely:

mainMem.useNamedFile = "no"
prefvmx.minVmMemPct = "100"
prefvmx.allVMMemoryLimit = "15000"
prefvmx.useRecommendedLockedMemSize = "yes"

The slowness was being caused by the .vmem files constant access and pushing the HDD to it's max rate non-stop.

This seems to happen every once in a while, even when not installing. Got so bad this morning, i had to find out why. A little scratching around resulted in the above. Seems to have solved that problem.

Anti-virus has that dir added as an exception, no whole drive encryption, local disk.

Cheers

Reply
0 Kudos
admin
Immortal
Immortal

AHSommer wrote:

The crash - according to the gent who handled my support call, is a result of the VMWare hypervisor and the Hyper-V Service trying to access the Virtualization hardware at the same time and causing a catastrophic BSOD!

I don't believe this is accurate.  With the Hyper-V role installed, it should look to Workstation as if there is no virtualization hardware.  Did you get a BSOD, or did the system just reboot?  If there was a BSOD, it should be possible to get a dump file, though Windows 8 may not produce them out of the box.  If the system just rebooted, due to a processor shutdown/reset, it may be harder to figure out why.

This configuration has worked in the past, though it's largely academic, since Workstation performance nested under Hyper-V is so poor.

Slow times - it appears that a few lines needed to be added to my config.ini file, namely:

mainMem.useNamedFile = "no"
prefvmx.minVmMemPct = "100"
prefvmx.allVMMemoryLimit = "15000"
prefvmx.useRecommendedLockedMemSize = "yes"

The slowness was being caused by the .vmem files constant access and pushing the HDD to it's max rate non-stop.

This seems to happen every once in a while, even when not installing. Got so bad this morning, i had to find out why. A little scratching around resulted in the above. Seems to have solved that problem.

I'm glad you were able to solve that problem, but it is unfortunate that you had to edit your config file to get reasonable performance.  I'll file a bug report on that issue.

Reply
0 Kudos
AHSommer
Contributor
Contributor

Jim:

<snippets>

With the Hyper-V role installed, it should look to Workstation as if there is no virtualization hardware.  Did you get a BSOD, or did the system just reboot? 

I'm glad you were able to solve that problem, but it is unfortunate that you had to edit your config file to get reasonable performance.  I'll file a bug report on that issue.

It actually comes up with a message box that says something to the effect of "Cannot start machine. Remove Hyper-V role and try again"

With no swap file configured, i'm led to believe you won't get a dump file.

I dig around and see if it did create (not put in same place as win7 files AFAIK

Cheers

Reply
0 Kudos
admin
Immortal
Immortal

AHSommer wrote:


It actually comes up with a message box that says something to the effect of "Cannot start machine. Remove Hyper-V role and try again"

You can get around that by adding the following option to your VM configuration file:

vmx.allowNested = TRUE

Now I'm confused about the sequence of events that leads to the BSOD.

Reply
0 Kudos
AHSommer
Contributor
Contributor

Jim:

If i get a chance tomorrow, I'll enable dumps etc., and repeat the exercise.

Will be of some value methinks!

Will let you know

Cheers

Reply
0 Kudos