ArticleslgStudy

computer science

OSEK

OSEK is a computer science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand OSEK rather than just read about it. In short: OSEK (Offene Systeme und deren Schnittstellen für die Elektronik in Kraftfahrzeugen; English: "Open Systems and their Interfaces for the Electronics in Motor Vehicles") 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.

Key takeaways

  • OSEK belongs to computer science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect OSEK to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of OSEK from memory before moving on to harder problems.

Reference excerpt

OSEK (Offene Systeme und deren Schnittstellen für die Elektronik in Kraftfahrzeugen; English: "Open Systems and their Interfaces for the Electronics in Motor Vehicles") 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 (ECUs) throughout a car. OSEK was founded in 1993 by a German automotive company consortium (BMW, Robert Bosch GmbH, DaimlerChrysler, Opel, Siemens, and Volkswagen Group) and the University of Karlsruhe. In 1994, the French cars manufacturers Renault and PSA Peugeot Citroën, which had a similar project called VDX (Vehicle Distributed eXecutive), joined the consortium. Therefore, the official name was OSEK/VDX and OSEK was registered trademark of Continental Automotive GmbH (until 2007: Siemens).

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 (OS) ISO 17356-4:2005 Road vehicles—Open interface for embedded automotive applications—Part 4: OSEK/VDX Communication (COM) ISO 17356-5:2006 Road vehicles—Open interface for embedded automotive applications—Part 5: OSEK/VDX Network Management (NM) ISO 17356-6:2006 Road vehicles—Open interface for embedded automotive applications—Part 6: OSEK/VDX Implementation Language (OIL)

before ISO OSEK VDX Portal

OSEK/VDX Operating system(OS) : "event-triggered" Real-time kernel OSEK/VDX Communication(COM) : Application level communication protocol OSEK/VDX Newark Management(NM) : Network management OSEK/VDX OSEK Implementation Language(OIL) : Offline application description and configuration language OSEK/VDX OSEK RTI(ORTI) : 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 OSEK standard specifies interfaces to multitasking functions—generic I/O and peripheral access—and thus remains architecture dependent. OSEK is expected to run on microcontroller without memory management unit (MMU), which is favored for safety-critical systems such as cars, therefore features of an OSEK implementation will be usually configured at compile-time. The number of application tasks, stacks, mutexes, etc. is statically configured; it is not possible to create more at run time. OSEK recognizes two types of tasks/threads/compliance levels: basic tasks and enhanced tasks. Basic tasks never block; they "run to completion" (coroutine). Enhanced tasks can sleep and block on event objects. The events can be triggered by other tasks (basic and enhanced) or interrupt routines. Only static priorities are allowed for tasks. First In First Out (FIFO) scheduling is used for tasks with equal priority. Deadlocks and priority inversion are prevented by priority ceiling (i.e. no priority inheritance). The specification uses ISO/ANSI-C-like syntax; however, the implementation language of the system services is not specified. An Application Binary Interface (ABI) 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 (cooperative scheduling) Mixed mode scheduling Groups of tasks (cooperative)

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 (SEI) at Carnegie Mellon University (CMU), 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.

Open-source derivates Note: Open-source developments are often very limited in scope (targets, conformance classes, characteristics) and are not verified against the specifications unless told otherwise.

ArcCore AUTOSAR OS, by Arctic Core (now part of Vector Informatik) License: Dual GPL/Commercial Firmware de la CIAA (former FreeOSEK), specifically Firmware v1 OSEK, by Chalandi Amine. Lego Mindstorms implementations: ev3OSEK nxtOSEK/JSP TOPPERS Project (Toyohashi OPen Platform for Embedded Real-time Systems) Release: ATK1 Release: ATK2 Targets: m68k, sh1, sh2, sh3, h8, arm 4, m32r, MicroBlaze, tms320c54x, xstormy16, mips3, Nios II, v850, rh850 License: MIT or TOPPERS License Trampoline by IRCCyN. Targets: ARM Cortex, RISC-V, PowerPC, POSIX, AVR, ARM 32bits, MSP430/CPUX, Renesas G4MH License: GPLv2

… excerpt ends here. Continue reading the full article.

Worked examples

Example 1 — a first encounter with OSEK

Start with the simplest possible case. Write down what OSEK claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to OSEK before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about OSEK ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of OSEK

In research
OSEK appears in computer science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses OSEK in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
OSEK is common in secondary-school and first-year university syllabi. It links to neighbouring topics Automotive software, Embedded operating systems, Operating system APIs, so understanding it makes those chapters shorter.
In everyday life
Look for OSEK outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study OSEK in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what OSEK means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain OSEK out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is OSEK in simple terms?

OSEK (Offene Systeme und deren Schnittstellen für die Elektronik in Kraftfahrzeugen; English: "Open Systems and their Interfaces for the Electronics in Motor Vehicles") is a standards body that has produced specifications for an embedded operating system, a communications stack, and a network manag…

Why does OSEK matter?

Because it connects several computer science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study OSEK?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on OSEK.

Tags

  • Automotive software
  • Embedded operating systems
  • Operating system APIs
  • Standards of Germany

Keep exploring