threadx Snapshot
  • Industry Leader
  • Over 5.4 Billion Deployments
  • Small-footprint
  • Fast, deterministic execution
  • Simple, easy-to-use
  • Advanced technology
  • Multicore support (AMP & SMP)
  • Memory Protection via ThreadX Modules
  • Fastest Time-To-Market
  • Royalty Free
  • Full, highest-quality source code
  • Pre-certified by TUV and UL to IEC 61508 SIL 4, IEC 62304 Class C, ISO 26262 ASIL D, UL/IEC 60730, UL/IEC 60335, UL 1998, and EN 50128 SW-SIL 4
  • MISRA-C:2004 and MISRA C:2012 Compliant
  • Supports most popular architectures
    (see below)
  • Supports most popular tools
ThreadX Architecture Support
  • ARM
    • ARM7, ARM9, ARM11
    • Cortex-M, Cortex-R, Cortex-A
    • Cortex-Axx 64-bit
  • AndesCore
  • Analog Devices
    • Blackfin BF5xx, BF6xx, BF7xx
    • SHARC
  • Cadence
    • Xtensa
    • Diamond
  • CEVA
    • TeakLite-III
  • EnSilica
    • eSi-RISC
  • NXP
    • ARM (LPC, i.MX, Kinetis)
    • 68K
    • Coldfire
    • PowerPC
  • Imagination
    • MIPS32 4Kx, 24Kx, 34Kx, 1004K
    • microAptiv, interAptiv, proAptiv
    • M-Class
  • Intel
    • ARM (Cyclone SOC, Arria 10 SOC)
    • NIOSII
    • x86PM
  • Microchip
    • ARM (SAM)
    • AVR32
    • PIC24
    • PIC32
  • Renesas
    • ARM (Synergy, RZ)
    • H8/300H
    • RX
    • SH
    • V850
  • Silicon Labs
    • EFM32
  • ST
    • STM32
  • Synopsis
    • ARC 600, 700
    • ARC EM, ARC HS
  • Texas Instruments
    • ARM (Tiva-C, Sitara, OMAP)
    • C5xx
    • C6xx
  • Xilinx
    • ARM (Zynq)
    • MicroBlaze
    • PowerPC

Compatibility for OSEK

Compatibility Kit for OSEK Users by Express Logic

Compatibility Kit Overview

The OSEK Compatibility Kit is designed for current OSEK users. The kit defines the basic OSEK services, with some limitations, and utilizes ThreadX® primitives underneath. The new OSEK compatibility layer should have very high performance, since the Compatibility Kit utilizes internal ThreadX primitives and bypasses basic ThreadX error checking. However, the application will achieve even greater performance and size benefits if actual ThreadX primitives are used instead of OSEK services.

Compatibility Kit Source

The Compatibility Kit source code is designed for simplicity and is comprised of only two files, namely tx_osek.h and tx_osek.c. The tx_osek.h file defines all the necessary OSEK constants and Subroutine prototypes, while tx_osek.c contains the actual OSEK compatibility source. These Compatibility Kit source files are common to all ThreadX support packages.

Compatibility Kit Documentation

The Compatibility Kit User Guide provides an overview of the porting process, including various caveats and pitfalls to watch out for. In addition, each covered OSEK Subroutine is documented, including information about supported/unsupported options, limitations, deviations, and suggestions on how to workaround any limitations.

Compatibility Kit Services

The current release of the Compatibility Kit includes support of the following calls:

Task related Subroutines:

CreateTask, ActivateTask, GetTaskID, TerminateTask, DeleteTask, ChainTask, GetTaskState

Resource related Subroutines:

CreateResource, GetResource, ReleaseResource, DeleteResource

Event related Subroutines:

SetEvents, ClearEvent, GetEvent, WaitEvent

Interrupt related Subroutines:

EnableInterrupt, DisableInterrupt, GetInterruptDescriptor

Counter related Subroutines:

InitCounter, GetCounterValue, CreateCounter, DeleteCounter

Alarm related Subroutines:

CreateAlarm, GetAlarmBase, SetAbsAlarm, SetRelAlarm, CancelAlarm, GetAlarm, DeleteAlarm

COM related Subroutines:

Complete COM and CAN support is coming soon!

Compatibility Kit Error Handing

There is one "error handling" function defined in tx_osek.c and used throughout the Compatibility Kit, as follows:

osek_internal_error

In general this routine is called when a basic usage error occurs. This may be used as a place to catch errors that are not detected if the application source is not checking the return status. The default processing for this routine is a simple spin loop.

Demonstration System

The file osek_demo.c contains a demonstration system that utilizes OSEK services. This Demo application will demonstrate some of the basic OS objects of OSEK such as: Tasks, Events, and Resources. This demo application should be used as an example of how to integrate the Compatibility Kit into your application.

Future Compatibility Kit Phases

Please get in touch with us for next phases of this Compatibility Kit, including the upcoming COM/CAN support.

Trademarks

ThreadX is a registered trademark of Express Logic, Inc., OSEK Compatibility Kit is a trademark of Express Logic, Inc.