JOSEK: An Open-Source Implementation of the OSEK/VDX API
JOSEK is an open-source operating system that implements the API as specified by the
OSEKoperating system specification.
JOSEK features a code generator. The JOSEK code generator
takes as input an
OSEK Implementation Language
(OIL) file and generates a couple of ANSI-C
output files which resemble an operating system variant that is fitted to the application's requirements.
Currently, the primary platform of JOSEK is the 8-bit AVR architecture. JOSEK also provides support for
running an OSEK/VDX-application in a process on top of a x86-Linux system.
JOSEK was originally developed to serve as a base for KESO on AVR targets.
Besides its original purpose, it is today used in lectures and other research projects where an
OSEK/VDX-like operating system is useful as infrastructure software.
As of now, JOSEK supports OSEK/VDX conformance classes BCC1 and BCC2, i.e. support for extended tasks and
events is currently missing. Support for these requires the use of multiple stacks, which still needs to
be implemented and might be a problem on devices with very little memory. At the moment, a single stack
is shared by all the basic tasks. The focus in developing JOSEK is to use a little resources as possible.
JOSEK is distributed under the terms of the GNU Lesser General Public License, version 3.