Quick Overview of INTEGRITY

INTEGRITY is a POSIX-like operating system for the embedded space. An application can use several address spaces with protection between them, or they can be linked directly into the kernel. INTEGRITY also supports downloading of address spaces. Each address space is a fully linked application (possibly with use of shared libraries between the address spaces). Applications must be put together using an integration tool before they can be downloaded to the target.

We are using MULTI project files to compile, link, and integrate C and C++ files.

The following documentation on INTEGRITY and MULTI is relevant to our products:

  • INTEGRITY Development Guide
  • Target Connection User's Guide for PowerPC
  • Embedded PowerPC Development Guide
  • Green Hills Installation and Licensing Guide
  • INTEGRITY Installation Addendum
  • Integrate User's Guide
  • INTEGRITY BSP User's Guide
  • Green Hills C/C++ User's Guide
  • Getting Started with MULTI 2000
  • MULTI 2000 User's Guide
  • MULTI 2000 User's Guide Addendum
  • INTEGRITY EventAnalyzer User's Guide

In the following, it is assumed that all the hosted tools for INTEGRITY is installed under /usr/ghs or C:\ghs.

With INTEGRITY, you have the option to use a real target or a simulator. The simulator is a simulator that simulates the instruction set of the architecture. It is not an environment using your host instruction set with a BSP on top of your host OS to emulate the INTEGRITY environment.

With INTEGRITY, there are different options on how to get your code running on a board or a simulator:

  • - A kernel that can dynamically download and load applications. When you are done, the application can be unloaded.
  • - Compile your application together with the kernel using the kernel's address space.
  • Use several address spaces - for example, one for the kernel, one for the virtual file system server, one for the TCPIP stack, and one for the application.

In the following, we will focus on the first approach using "Single Address Space POSIX."