I can help with some of these questions, as I manage the Real-Time Hypervisor product for NI.
In theory, you could potentially use a variety of bare-metal hypervisors (hypervisors that don't depend on a host OS) to run LabVIEW Real-Time and another OS in parallel. However, this may take substantial integration work on your part.
You could also try to use hosted virtualization software such as VMWare Workstation on top of Windows to run LabVIEW Real-Time, although it would not perform deterministically in this case and you may run into compatibility issues with the emulated Ethernet devices, etc. I/O will also be limited to USB/Serial/Ethernet in most cases.
When creating the Real-Time Hypervisor, NI used a low-level hypervisor similar to the one that was mentioned in a previous post (called VirtualLogix VLX). Work was done on top of this low-level component to:
- Make dynamically partitioning I/O devices and RAM easy through a graphical utility called the Real-Time Hypervisor Manager
- Support soft-rebooting LabVIEW Real-Time without rebooting Windows XP (I/O devices also must intelligently reset in this case)
- Expose virtual Ethernet and Virtual Console (COM) connections between OSs
- Host the hard drive under Windows XP, and allow LabVIEW Real-Time to access files through the hypervisor on an independent partition
Therefore, the short story is that although using a bare-metal hypervisor to set up a system that boots LabVIEW Real-Time and other OSs in parallel is very much possible, you can probably expect some integration work (not an out-of-box experience). The Real-Time Hypervisor aims to help users avoid this work, as systems are shipped preconfigured and graphical utilities ease any adjustments that customers would like to make.
You are correct, however, that the Real-Time Hypervisor does not yet support 3rd party PCs. Because virtualization is closely tied to system hardware, we have thus far prioritized development on NI hardware platforms that we closely control (known interrupt line configurations, components, etc). However, we are looking at what it would take to support generic PCs in the future.
Please let me know if you have any questions, and have a great week everyone!
Product Manager, LabVIEW Real-Time