Getting Started

The QNX Hypervisor 2.0 program makes available reference images that you can transfer to a supported hardware platform and boot.

QNX Hypervisor 2.0 reference images are delivered as disk images that include a bootable IFS for your hypervisor host in a bootable partition, and the IFSs for the guests in a data partition.

Getting started with a reference image

To get started with the QNX Hypervisor 2.0 reference image, all you need to do is:

  1. On your host system (Linux, macOS or Windows), install QNX SDP 7.0 and set up your QNX SDP 7.0 work space (see the QNX SDP 7.0 Quickstart Guide).
  2. Download the appropriate, board-specific reference image to a convenient location on your development host system.
  3. Copy the disk image file to a removable storage medium (e.g., USB key, SD card).
  4. Insert the removable medium with the reference image into your target platform.
  5. Boot the hypervisor.
  6. Boot the guests.

If you will be modifying and rebuilding a QNX Neutrino 6.6 guest, you will also need to install QNX SDP 6.6 at a separate location on your host system, and set up a QNX SDP 6.6 work space (see the QNX SDP 6.6 Quickstart Guide). QNX SDP 6.6 isn't required if you will simply use the QNX Neutrino 6.6 guest.

Available reference images

QNX Software Systems makes available architecture- and board-specific reference images of QNX Hypervisor 2.0 systems for the following hardware platforms:

ARM
Renesas R-Car H3 (Salvator-X and Starter Kits)
We have tested the hypervisor on the R-Car H3 Salvator-X and Starter Kit Premier boards, but not on the R-Car M3 Starter Kit Pro board.
x86
Intel Broadwell NUC
Intel Gordon Ridge MRB

The board-specific reference images are named according to the following model:

QHYP_2_0_DISK_IMAGE_build_timestamp_SDP700_board, where build is the build number, timestamp is the date and time of the build in the format: yyyymmddhhmm, and board is the board for which the reference image has been built (e.g., QHYP_2_0_DISK_IMAGE_2530_201801311116_SDP700_NUC).

Downloading a reference image

Hypervisor reference images are available as compressed *.qpkg package files from the QNX Software Center:

  1. On your host system, launch the QNX Software Center.
  2. Follow the instructions to download the QNX Hypervisor package.
  3. From the QNX Software Center, download the reference image for your board.
Figure 1. Hypervisor reference images in the QNX Software Center.

The QNX Software Center will place the reference image in your QNX SDP 7.0 installation directory (e.g., ~/qnx700/targetImages/hypervisor/). It should contain a disk image file, which you will copy to your removable media and transfer to your target board to boot.

Note: A QNX Hypervisor disk image includes the same number of IFSs as are in the standard (not hypervisor-specific) BSP for the relevant board. This means that most disk images include multiple IFSs. For example, the disk image for the Intel Gordon Ridge MRB board includes two IFSs: one IFS with graphics components, and another IFS without these graphics components.

Contents of a hypervisor reference image

The contents of hypervisor reference images vary depending on factors such as each target platform's peripherals and the applications implemented. Nonetheless, every reference image includes at least:

Hypervisor microkernel

The QNX Hypervisor kernel is a standard QNX Neutrino OS kernel (e.g., for Hypervisor 2.0, the QNX Neutrino 7.0 microkernel); it runs the minimum services required to support a hypervisor system. This kernel starts after the boot loader has loaded the boot image. The boot image runs only what is necessary to provide console access to the host, to support the guest OSs (e.g., PCI server, network, disk drivers).

Hypervisor-specific binaries

The hypervisor-specific binaries include core binaries:

Some of these binaries (e.g., libmod_qvm.a) are linked into the hypervisor host microkernel when an IFS is created. They will not, therefore, be present as separate files in the reference image.

Other hypervisor-specific binaries include:

Libraries, such as libhyp*.a, that are needed to build applications that use hypervisor services are included by default with the QNX Hypervisor.

VirtIO drivers

Hypervisor-aware (VirtIO) drivers or other hypervisor-specific files may be required to demonstrate specific hypervisor features. For example, devb-virtio can use a vdev-virtio-blk device that is included in the guest's qvm configuration file. These drivers may be downloaded separately from the QNX Software Center as “Addon” packages.