Difference between revisions of "ERIKA3 on the Jailhouse hypervisor"

From ERIKA WIKI
Jump to: navigation, search
Line 14: Line 14:
 
<ul>
 
<ul>
 
<li> <code>JAILHOUSE_DIR</code> equal to the path of the directory containing the Jailhouse built objects
 
<li> <code>JAILHOUSE_DIR</code> equal to the path of the directory containing the Jailhouse built objects
<li> <code>JAILHOUSE_VERSION</code> equal to the Jailhouse versione (e.g., <code>0.7</code>)
+
<li> <code>JAILHOUSE_VERSION</code> equal to the Jailhouse versione (e.g., <code>0.8</code>)
 
</ul>
 
</ul>
  

Revision as of 09:49, 14 May 2018

Introduction

Jailhouse is a type-1 hypervisor developed by Siemens and released as Open-Source software.

The ERIKA3 RTOS currently supports Jailhouse on the following platforms:


Building ERIKA3 for Jailhouse

To build ERIKA3 for Jailhouse, you need to export the following environment variables:

  • JAILHOUSE_DIR equal to the path of the directory containing the Jailhouse built objects
  • JAILHOUSE_VERSION equal to the Jailhouse versione (e.g., 0.8)

Additionally, in case of cross-compilation, you also need to put the cross-compiler in the PATH and set the JAILHOUSE_AARCH64_GCCPREFIX environment variable equal to the cross-compiler prefix (e.g., aarch64-linux-gnu-).
Note that RT-Druid allows to set these variables also from within Eclipse. Just press the right mouse button on the Eclipse project and select Properties as shown in the following figure.

Figure 1: Eclipse project properties.

Then, select Generator properties, enable project specific settings (as shown in the next figure), and set the desired values.

Figure 2: Generator properties.

The build process (started by the make command within the generated out directory) will link the ERIKA3 object file to the Jailhouse inmate library, and will create a .bin file.

Once Jailhouse has been started, you can:

  1. Create the jailhouse cell for ERIKA3:
    sudo jailhouse cell create <cell_file>
  2. Load the ERIKA binary file in the cell:
    sudo jailhouse cell load <cell_name> <binary_file>
  3. Start ERIKA:
    sudo jailhouse cell start <cell_name>

Please, refer to the platform-specific pages for detailed building instructions.