Skip Navigation

QNX Hypervisor 

Consolidate multiple operating systems on a single embedded SoC

PRODUCT BRIEF

QNX Hypervisor

With the QNX® Hypervisor you can consolidate multiple embedded systems with diverse OSs and different reliability and security requirements onto a single System on a Chip (SoC). You can easily 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, without jeopardizing the integrity of your overall system.

Whatever your overall system requirements, with the QNX Hypervisor you’ll be able to implement the features your designs require, on the OSs you prefer, all the while reducing system power consumption and the need for thermal dissipation, and—especially—reducing both initial development costs and long-term cost of ownership.

Isolate and Protect Your Critical Systems
Versatile Virtualization Model
Familiar Development Environment

Isolate and Protect Your Critical Systems 

The QNX Hypervisor offers a comprehensive virtualization solution, including virtual memory, virtual CPUs, virtual interrupt controllers, and virtual and para-virtualized devices. It adds virtual machine management (VMM) to the QNX Neutrino® Real-time Operating System (RTOS) microkernel. So, when you design a system with the QNX Hypervisor, you are building on a foundation whose reliability and performance have been 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 from guests in its virtual machines. If through error or malicious intent a guest system attempts to overstep the boundaries you set, the QNX Hypervisor prevents the guest from completing the action.

The QNX Hypervisor includes the SMMU manager service (SMMUMAN), which works with your hardware System Memory Management Units (SMMUs) to ensure that Direct Memory Access (DMA) devices are contained.

Versatile Virtualization Model

The QNX Hypervisor leverages the latest ARMv8 and x86-64 hardware virtualization extensions to provide a supremely versatile virtualization solution. With the QNX Hypervisor you can run your OSs and their applications as guest systems in thin virtual machines, limiting your hypervisor to handling events and exceptions. Just as easily, you can run one or more guest systems in virtual machines, while also implementing a full system, including resource managers, drivers and applications, directly on the hypervisor (“bare metal”).

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. Not only can diverse OSs share the same SoC, they can share physical devices, reducing product hardware costs.

Whichever model you select as most appropriate for your project, the QNX Hypervisor ensures that the guest systems and the hypervisor itself are contained and isolated from the other systems on the SoC.

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.

Advanced Virtualization

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.

Talk to Us

Technical Resources

BlackBerry QNX Professional Services

If you’re uncertain about how to see your virtualized system through to market, our virtualization, security and safety experts can assist you at every stage—from design to certification.

Board Support Packages (BSP)

View our extensive library of BSPs for a broad selection ARMv7, ARMv8 and x86-64 boards.

Related Products

QNX Hypervisor for Safety

Need to run a safety-certified system alongside a non-safety system? The QNX Hypervisor for Safety is certified to IEC 61508 SIL 3 and ISO 26262 ASIL D.

QNX Neutrino RTOS

The QNX Neutrino real-time operating system (RTOS) powers hundreds of millions of embedded systems in every industry where reliability matters.

QNX OS for Safety

Need to safety-certify your system? The QNX OS for Safety is the only embedded OS certified to IEC 61508 SIL3, IEC 62304 for Class C devices, and ISO 26262 at ASIL D.