Run Windows and Ubuntu at the same time and access them via remote desktop

I am a developer and I am currently working on a project that needs to support macOS, Windows and Linux. I usually work on a MacBook with virtual machines but for this project this just doesn't cut it.

I have a powerful desktop PC under my desk that I used to use for gaming and i am wondering if it is possible to have a setup where I can

  • install Windows and Ubuntu on my PC
  • access both systems via terminal either / or remote desktop using my MacBook
  • here's the catch… at the same time

Running to OSs at the same time sounds barely possible, but I have also heard about Xen Virtualization which I don't quite get so before you just say "no" and mark this question maybe it's possible to explain the possibilities and where things get impossible for this kind of request.


Solution 1:

An operating system (OS) is - among other things - being responsible to manage hardware resources. Imagine there would be two OS's running in parallel and both want to send a network packet at the same time. This would result in both OS's writing to the networks card memory address at the same time and thereby destroying probably both packets. This simple example demonstrates why it is impossible to run two OS's concurrently on bare metal.

However, type 1 hypervisors (like Xen) can be viewed as highly specialized OS's which run directly on the host's hardware with the only purpose to orchestrate and isolate the running guest OS's. Therefore they outperform type 2 hypervisors (like VirtualBox) in many cases.

Difference between hypervisor types

So if you only need to have better performance, my advice would be to try a type 1 hypervisor. If the performance penalty is still to high for your use case or if you need the OS's to run on bare-metal your best bet would to set up a dual-boot system or buy additional hardware.