QNX Hypervisor Virtualization Software
Consolidate multiple operating systems on a single embedded system on a chip.
QNX Hypervisor
Consolidate diverse embedded systems with different reliability and security requirements onto a single system on a chip (SoC) with the QNX® Hypervisor. You can also move unmodified legacy code onto the latest hardware simply by running it in an appropriately configured hypervisor virtual machine.
Just as easily, you can innovate with Android™ and Linux®. With guest OSs safely and securely contained in QNX Hypervisor virtual machines, you can run the apps and services you need with the OSs you choose.
With the QNX Hypervisor, you’ll implement the features your designs require, on the OSs you prefer, all while reducing system power consumption, the need for thermal dissipation and costs of both initial development and long-term ownership.
QNX Accelerate
Develop Mixed-Criticality systems with QNX Hypervisor in the Cloud
QNX® Accelerate is an initiative that lets you develop mission-critical embedded systems based on BlackBerry® QNX® technology. By harnessing the agility, speed, and scale of the cloud, it empowers developers in new ways—enabling better collaboration, increasing development efficiencies, and reducing time-to-market.
Isolate and Protect Your Critical Systems
The QNX Hypervisor offers a comprehensive virtualization solution, including virtual memory, CPUs, interrupt controllers, devices and para-virtualized devices. Adding virtual machine management to the QNX® Neutrino® RTOS microkernel provides reliability and performance—proven over 40 years in hundreds of millions of mission-critical systems.
The QNX Hypervisor protects itself and your system from both internal faults and outside interference, including those of guests in virtual machines. If a guest attempts to overstep the boundaries you set, the hypervisor prevents them from completing the action. It also includes the SMMU manager service which works with hardware System Memory Management Units to ensure that Direct Memory Access devices are contained.
Versatile Virtualization Model
The QNX Hypervisor leverages the latest ARMv8 and x86-64 virtualization extensions to offer versatile virtualization solutions with guest systems and the hypervisor itself contained and isolated.
OSs and their applications can run as guests in thin virtual machines, limiting the hypervisor to handling events and exceptions. Just as easily, guest systems can be supported by a full host environment running directly on the hypervisor (“bare metal”) that provides the backend services and removes the need for a complex service OS.
Devices in a QNX Hypervisor system can be physical devices (including pass-through devices) or virtual devices, including emulation and para-virtualized devices from our virtual device library. Diverse OSs share the same SoC and can share physical devices, reducing hardware costs.
Familiar Development Environment
The QNX Hypervisor includes a virtual device developer’s API reference and a virtual device developer’s guide, complete with examples of virtual device source code you can use as models for developing your own virtual devices, including para-virtualized devices designed and built to the VIRTIO standards.
If you’re familiar with the QNX Neutrino RTOS you’ll require no ramp-up time to begin your hypervisor development work: the QNX Hypervisor is fully API-compatible with the QNX Neutrino RTOS API.
You’ll be able to develop non-safety as well as safety-critical applications on the same foundations, and of course you’ll be able to continue working in the QNX Software Development Platform’s POSIX-compliant environment and using the QNX Momentics® Tool Suite.
QNX Advanced Virtualization Frameworks
The QNX Advanced Virtualization Frameworks enable the complex sharing and abstraction of underlying hardware required to combine functions in a hypervisor environment for systems like automotive digital cockpits, domain controllers, and advanced medical or industrial controllers. As an add-on to the QNX Hypervisor, the solution provides pre-built sharing of graphic chips, audio systems, video streams, input devices such as touchscreens, USB ports and more. The frameworks are built on a combination of VIRTIO, device emulation and client/agent design, supporting an unmodified drop-in of an Android or Linux guest. Using it is easy – simply set your sharing policy and go.
The solution’s backend support follows the QNX driver and services model, which ensures priority-based sharing and real-time response. Backend services do not require an additional service OS or Domain0. For example, a fully interactive touchscreen display is available immediately after boot, and the Android guest can then join in the device sharing after its boot has completed. If the guest fails, the backend service continues, and the graphic display remains responsive.