
Ask HN: Real Double Boot - gonvaled
Does any of you know of any possibility (real or theoretical), of having a computer &quot;double boot&quot;. I am specifically <i>not</i> talking about &quot;dual boot&quot;, but <i>Real Double Boot (TM)</i> in the sense:<p>- a single computer, with a single screen, keyboard, ... is being controlled, at the same time, by two different operating systems (say, Windows and Linux)<p>- <i>not</i> related to VM (VirtualBox or similar)<p>- there is a special hotkey to cycle through the different active OSes<p>- whenever an OS gets activated, it takes control of I&#x2F;O<p>- the CPUs &#x2F; cores are &quot;split&quot; between the different OSes. During boot time, one OS gets assigned one of the cores, the other OS the other core, or something similar.<p>This would amount to multiple computers connected to a single I&#x2F;O system.<p>- Is there any research on this?<p>- Are there any examples of this kind of architecture?<p>- If not, why not? I assume there are big complications regarding CPU architecture, and maybe problems setting &#x2F; resetting the I&#x2F;O system each time a handover is performed.<p>My motivation for this is that I am currently using VirtualBox inside Windows 10, and although it works quite well, the VM has sub-par performance compared to the host system.
======
skibz
Setups I've seen/used that come close to what you are describing are either
Xen-based [1], or use virtualisation systems (like VirtualBox, for instance)
with IOMMU [2] configured for passing control of hardware resources to a guest
system (allow your guest VM exclusive use your discrete graphics, for example)

1: [https://en.wikipedia.org/wiki/Xen](https://en.wikipedia.org/wiki/Xen) 2:
[https://en.wikipedia.org/wiki/Input%E2%80%93output_memory_ma...](https://en.wikipedia.org/wiki/Input%E2%80%93output_memory_management_unit)

------
al2o3cr
You could probably get close to this with a hypervisor-based setup, but it's
going to be the hypervisor in control of the hardware farming out bits of it
to both guest OSes.

