RTEMS

RTEMS (Real-Time Executive for Multiprocessor Systems) is a commercial grade real-time operating system designed for deeply embedded systems. It is a free open-source solution that supports multi-processor systems. RTEMS is designed to support applications with the most stringent real-time requirements while being compatable with open standards. The JamaicaVM is available for RTEMS 4.6 and the following target hardware:

Installation

The RTEMS-Version of Jamaica is installed like described in section "Installation". Additionally the following steps have to be done:

Configuration for installed RTEMS and Board Support Package (BSP)

In the Jamaica configuration file /usr/local/jamaica/etc/jamaica.conf the path of the BSP installation has to be adjusted. The following examples show the changes needed for an rtems-i386 release.

  • Change the include path property include.rtems-* in /usr/local/jamaica/etc/jamaica.conf to the include path of the BSP. E.g.: <BSP_INSTALL_DIR>/i386-rtems/pc686/lib/include

  • Change the -B option of the property XCFLAGS.rtems-* to the path of your BSP library directory. E.g. <BSP_INSTALL_DIR>/i386-rtems/pc686/lib

  • Change the -B option of the property XLDFLAGS.rtems-* to the path of your BSP library directory. E.g. <BSP_INSTALL_DIR>/i386-rtems/pc686/lib

RTEMS Configuration

A RTEMS applications needs to be configured using macros like
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
These definitions can be made in /usr/local/jamaica/target/rtems-*/include/jamaica_target_configuration.h.

Running an application

The Builder generates a bootable image of the application. How to load and run this image depends on the BSP. An application built for the target i386-rtems with the pc686-BSP can, for example, be loaded and run using the GRUB bootloader.