This guide is for those who want to use HCC Embedded's OS Abstraction Layer (OAL) for their developments in embedded systems that use the CMX operating system from CMX Systems Inc.

The HCC OAL is an abstraction of a Real Time Operating System (RTOS). It defines how HCC software requires an RTOS to behave and its Application Programming Interface (API) defines the functions it requires. Most HCC systems and modules use one or more components of the OAL.

HCC has ported its OAL to CMX, in the process creating "hooks" which call CMX functions from the HCC abstractions. Once you unzip the files from the oal_os_cmx package into the oal/os folder in the source tree, these files will automatically call the correct functions.

The OAL API defines functions for handling the following elements:

  • Tasks.
  • Events – these are used as a signaling mechanism, both between tasks, and from asynchronous sources such as Interrupt Service Routines (ISRs) to tasks.
  • Mutexes – these guarantee that, while one task is using a particular resource, no other task can pre-empt it and use the same resource.
  • Interrupt Service Routines (ISRs) – in CMX ISRs are platform-specific.