Difference between revisions of "ERIKA3 on the Jailhouse hypervisor"

From ERIKA WIKI
Jump to: navigation, search
Line 1: Line 1:
 
[https://github.com/siemens/jailhouse Jailhouse] is a type-1 hypervisor developed by Siemens and released as Open-Source software.
 
[https://github.com/siemens/jailhouse Jailhouse] is a type-1 hypervisor developed by Siemens and released as Open-Source software.
  
To build ERIKA3 for Jailhouse, you just need to export the <code>JAILHOUSE_DIR</code> environment variable equal to the directory containing the Jailhouse built objects.<br>
+
To build the ERIKA3 RTOS for Jailhouse on the supported platforms, you just need to export the <code>JAILHOUSE_DIR</code> environment variable equal to the directory containing the Jailhouse built objects.<br>
The build process (started by the <code>make</code> command) will link the ERIKA object file to the Jailhouse inmate library.
+
The build process (started by the <code>make</code> command within the <code>out</code> directory) will link the ERIKA3 object file to the Jailhouse inmate library.
  
 
In case of cross-compilation, you also need to put the cross-compiler in the <code>PATH</code> and set the <code>JAILHOUSE_AARCH64_GCCPREFIX</code> environment variable equal to the cross-compiler prefix.
 
In case of cross-compilation, you also need to put the cross-compiler in the <code>PATH</code> and set the <code>JAILHOUSE_AARCH64_GCCPREFIX</code> environment variable equal to the cross-compiler prefix.
Line 8: Line 8:
 
The build process will create a <code>.bin</code> file.
 
The build process will create a <code>.bin</code> file.
 
Once Jailhouse has been started, you can:
 
Once Jailhouse has been started, you can:
# Create the jailhouse cell for ERIKA:<br> <code>sudo jailhouse cell create <cell_file></code>
+
# Create the jailhouse cell for ERIKA3:<br> <code>sudo jailhouse cell create <cell_file></code>
 
# Load the ERIKA binary file in the cell:<br> <code>sudo jailhouse cell load <cell_name> <binary_file></code>
 
# Load the ERIKA binary file in the cell:<br> <code>sudo jailhouse cell load <cell_name> <binary_file></code>
 
# Start ERIKA:<br> <code>sudo jailhouse cell start <cell_name></code>
 
# Start ERIKA:<br> <code>sudo jailhouse cell start <cell_name></code>
  
You can refer to the following pages for running ERIKA3 on Jailhouse on some tested platforms:
+
You can refer to the following pages for running ERIKA3 on Jailhouse on some supported platforms:
 
* [[Nvidia Jetson TX1]]
 
* [[Nvidia Jetson TX1]]
 
* [[Xilinx ZCU102]]
 
* [[Xilinx ZCU102]]
  
 
[[Category:Hypervisors]]
 
[[Category:Hypervisors]]

Revision as of 17:03, 1 March 2018

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

To build the ERIKA3 RTOS for Jailhouse on the supported platforms, you just need to export the JAILHOUSE_DIR environment variable equal to the directory containing the Jailhouse built objects.
The build process (started by the make command within the out directory) will link the ERIKA3 object file to the Jailhouse inmate library.

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.

The build process 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>

You can refer to the following pages for running ERIKA3 on Jailhouse on some supported platforms: