OSEK
OSEK is a standards body that has produced specifications for an embedded operating system, a communications stack, and a network management protocol for automotive embedded systems. It has produced related specifications, namely AUTOSAR. OSEK was designed to provide a reliable standard software architecture for the various electronic control units throughout a car.
OSEK was founded in 1993 by a German automotive company consortium and the University of Karlsruhe. In 1994, the French cars manufacturers Renault and PSA Peugeot Citroën, which had a similar project called VDX, joined the consortium. Therefore, the official name was OSEK/VDX and OSEK was registered trademark of Continental Automotive GmbH.
Standards
OSEK is an open standard, published by a consortium founded by the automobile industry. Some parts of OSEK are standardized in ISO 17356.- ISO 17356-1:2005 Road vehicles—Open interface for embedded automotive applications—Part 1: General structure and terms, definitions and abbreviated terms
- ISO 17356-2:2005 Road vehicles—Open interface for embedded automotive applications—Part 2: OSEK/VDX specifications for binding OS, COM and NM
- ISO 17356-3:2005 Road vehicles—Open interface for embedded automotive applications—Part 3: OSEK/VDX Operating System
- ISO 17356-4:2005 Road vehicles—Open interface for embedded automotive applications—Part 4: OSEK/VDX Communication
- ISO 17356-5:2006 Road vehicles—Open interface for embedded automotive applications—Part 5: OSEK/VDX Network Management
- ISO 17356-6:2006 Road vehicles—Open interface for embedded automotive applications—Part 6: OSEK/VDX Implementation Language
before ISO
- OSEK/VDX Operating system : "event-triggered" Real-time kernel
- OSEK/VDX Communication : Application level communication protocol
- OSEK/VDX Newark Management : Network management
- OSEK/VDX OSEK Implementation Language : Offline application description and configuration language
- OSEK/VDX OSEK RTI : Debugging interface
- OSEK/VDX Binding Specification: Binding document
- MODISTARC
- * OSEK/VDX Conformance Testing Methodology
- * OSEK/VDX Operating System Test Plan
- * OSEK/VDX Operating System Test Procedure
- * OSEK/VDX Communication Test Plan
- * OSEK/VDX Communication Test Procedure
- * OSEK/VDX Communication Test Suites
- * OSEK/VDX Network Management Test Plan
- * OSEK/VDX Network Management Test Procedure
- * OSEK/VDX direct Network Management Test Suites
- * OSEK/VDX indirect Network Management Test Suites
OSEK Functioning
The specification uses ISO/ANSI-C-like syntax; however, the implementation language of the system services is not specified. An Application Binary Interface is also not specified.
OSEK-OS scheduling can be configured as:
- Preemptive, a task can always be preempted by means of a higher priority task
- Non-preemptive, a task can only be preempted in prefixed compile-time points
- Mixed mode scheduling
- Groups of tasks
State of the art
AUTOSAR
Currently the AUTOSAR consortium reuses the OSEK specifications as part of the Classic Platform.The operating system is a backwards compatible superset of OSEK OS which also covers the functionality of OSEKtime, and the communication module is derived from OSEK COM. OSEKtime specifies a standard for optional time-triggered real-time operating systems. If used, OSEKtime triggered callbacks run with higher priority than OSEK tasks.
Research
There is also a limited amount of active research, e. g. in the area of systems engineering and OSEK / VDX RTOS or in relation to the compatibility between OSEK and AUTOSAR.Quality
In a 48-page report from 2003 by the Software Engineering Institute at Carnegie Mellon University, the specifications were examined and possible weaknesses in the areas of alarm and event mechanisms were identified with possible solutions. The potential of OSEK was also mentioned.Implementations
Note: A limited number of implementations and vendors exist. Most products are only commercially sold and licensed, others are freely available with open-source license for a limited number of controllers. See also: Comparison of real-time operating systems.| Vendor | Products | License | Targets | Other information |
| Elektrobit Automotive GmbH |
| Infineon AURIX TC38XQ, etc. | Former product names: ProOSEK and ProOSEK/time by 3SOFT | |
| ERIKA Enterprise | ARM Cortex, Intel x86, Infineon AURIX, etc. | and | ||
| ETAS Group | Various architectures | |||
| NXP Semiconductors | PowerPC 5xxx, S12/S32, etc. | Former product names: OSEKturbo | ||
| Siemens | Various architectures | |||
| Vector Informatik | Various architectures | Supporting software: DaVinci Configurator Pro |
Open-source derivates
Note: Open-source developments are often very limited in scope and are not verified against the specifications unless told otherwise.- ArcCore AUTOSAR OS, by Arctic Core
- *License: Dual GPL/Commercial
- Firmware de la CIAA, specifically
- , by Chalandi Amine.
- Lego Mindstorms implementations:
- *
- *nxtOSEK/JSP
- TOPPERS Project ''
- *Release: ATK1
- *Release: ATK2
- *Targets: m68k, sh1, sh2, sh3, h8, arm 4, m32r, MicroBlaze, tms320c54x, xstormy16, mips3, Nios II, v850, rh850
- *License: MIT or
- by IRCCyN.
- *Targets: ARM Cortex, RISC-V, PowerPC, POSIX, AVR, ARM 32bits, MSP430/CPUX, Renesas G4MH
- *License: GPLv2
Defunct, not active, unknown status
- for Microchip PIC18F4550
- PicOS18 etc. - formerly available and hosted at picos18.com
- was a commercial implementation