OSEK
OSEK ( Open Offene S ysteme und deren Schnittstellen für die E lektronik in K raftfahrzeugen ; engelska: " Systems and their Interfaces for the Electronics in Motor Vehicles") är ett standardorgan som har tagit fram specifikationer för ett inbyggt operativsystem , en kommunikationsstack och ett nätverkshanteringsprotokoll för inbyggda bilsystem . Den har tagit fram relaterade specifikationer, nämligen AUTOSAR . OSEK designades för att tillhandahålla en pålitlig standardprogramvaruarkitektur för de olika elektroniska styrenheterna ( ECU) i en bil.
OSEK grundades 1993 av ett tyskt bilföretagskonsortium ( BMW , Robert Bosch GmbH , DaimlerChrysler , Opel , Siemens och Volkswagen Group ) och universitetet i Karlsruhe . 1994 anslöt sig de franska biltillverkarna Renault och PSA Peugeot Citroën , som hade ett liknande projekt kallat VDX ( V ehicle D istributed e X ecutive), i konsortiet. Därför var det officiella namnet OSEK/VDX och OSEK var ett registrerat varumärke som tillhör Continental Automotive GmbH (fram till 2007: Siemens AG ).
Standarder
OSEK är en öppen standard , publicerad av ett konsortium grundat av bilindustrin . Vissa delar av OSEK är standardiserade i ISO 17356 .
- ISO 17356-1:2005 Vägfordon – Öppet gränssnitt för inbyggda fordonstillämpningar – Del 1: Allmän struktur och termer, definitioner och förkortade termer
- ISO 17356-2:2005 Vägfordon – Öppet gränssnitt för inbyggda fordonsapplikationer – Del 2: OSEK/VDX-specifikationer för bindning av OS, COM och NM
- ISO 17356-3:2005 Vägfordon – Öppet gränssnitt för inbyggda fordonsapplikationer – Del 3: OSEK/VDX Operativsystem (OS)
- ISO 17356-4:2005 Vägfordon – Öppet gränssnitt för inbyggda fordonsapplikationer – Del 4: OSEK/VDX Communication (COM)
- ISO 17356-5:2006 Vägfordon – Öppet gränssnitt för inbyggda fordonsapplikationer – Del 5: OSEK/VDX Network Management (NM)
- ISO 17356-6:2006 Vägfordon – Öppet gränssnitt för inbyggda fordonsapplikationer – Del 6: OSEK/VDX Implementation Language (OIL)
före ISO
OSEK VDX Portal
- OSEK/VDX Operativsystem(OS): "händelseutlöst" Realtidskärna
- OSEK/VDX Communication(COM) : Kommunikationsprotokoll på applikationsnivå
- OSEK/VDX Newark Management(NM) : Nätverkshantering
- OSEK/VDX OSEK Implementation Language (OIL) : Offlineapplikationsbeskrivning och konfigurationsspråk
- OSEK/VDX OSEK RTI(ORTI) : Felsökningsgränssnitt
- OSEK/VDX Bindningsspecifikation: Bindande dokument
- MODISTARC
- OSEK/VDX Conformance Testing Methodology
- OSEK/VDX Operativsystem Testplan
- Testprocedur för OSEK/VDX Operativsystem
- OSEK/VDX kommunikationstestplan
- Testprocedur för OSEK/VDX kommunikation
- OSEK/VDX Communication Test Suites
- OSEK/VDX Network Management Test Plan
- Testprocedur för OSEK/VDX Network Management
- OSEK/VDX Direct Network Management Test Suites
- OSEK/VDX indirekt Network Management Test Suites
OSEK Fungerar
OSEK-standarden specificerar gränssnitt för multitasking-funktioner – generisk I/O och perifer åtkomst – och förblir därför arkitekturberoende. OSEK förväntas köras på mikrokontroller utan minneshanteringsenhet ( MMU ), vilket är gynnsamt för säkerhetskritiska system som bilar, därför kommer funktioner i en OSEK-implementering vanligtvis att konfigureras vid kompilering. Antalet applikationsuppgifter, stackar, mutexes etc. är statiskt konfigurerat; det är inte möjligt att skapa fler under körning. OSEK känner igen två typer av uppgifter/trådar/efterlevnadsnivåer: grundläggande uppgifter och förbättrade uppgifter. Grundläggande uppgifter blockerar aldrig; de "kör till slut" (coroutine). Förbättrade uppgifter kan sova och blockera på händelseobjekt. Händelserna kan utlösas av andra uppgifter (grundläggande och förbättrade) eller avbrottsrutiner. Endast statiska prioriteringar är tillåtna för uppgifter. Först in först ut (FIFO) schemaläggning används för uppgifter med samma prioritet. Deadlocks och prioritetsinvertering förhindras av prioritetstak (dvs inget prioritetsarv ).
Specifikationen använder ISO/ANSI-C-liknande syntax; implementeringsspråket för systemtjänsterna är dock inte specificerat. Ett Application Binary Interface (ABI) är inte heller specificerat.
OSEK-OS schemaläggning kan konfigureras som:
- Förebyggande, en uppgift kan alltid förebyggas med hjälp av en högre prioriterad uppgift
- Icke-förebyggande, en uppgift kan endast förebyggas i prefixerade kompileringstider (samarbetsschemaläggning)
- Schemaläggning för blandat läge
- Grupper av uppgifter (kooperativ)
Toppmodern
AUTOSAR
För närvarande återanvänder AUTOSAR -konsortiet OSEK-specifikationerna som en del av den klassiska plattformen.
Operativsystemet är en bakåtkompatibel superuppsättning av OSEK OS som också täcker funktionaliteten hos OSEKtime och kommunikationsmodulen är härledd från OSEK COM. OSEKtime specificerar en standard för valfria tidsutlösta realtidsoperativsystem . Om de används OSEKtime- utlösta återuppringningar med högre prioritet än OSEK-uppgifter.
Forskning
Det finns också en begränsad mängd aktiv forskning, t.ex. inom området systemteknik och OSEK/VDX RTOS eller i relation till kompatibiliteten mellan OSEK och AUTOSAR.
Kvalitet
I en 48-sidig rapport från 2003 av Software Engineering Institute (SEI) vid Carnegie Mellon University (CMU) undersöktes specifikationerna och möjliga svagheter inom områdena larm och händelsemekanismer identifierades med möjliga lösningar. Potentialen hos OSEK nämndes också.
Genomföranden
Obs: Det finns ett begränsat antal implementeringar och leverantörer. De flesta produkter säljs endast kommersiellt och licensieras, andra är fritt tillgängliga med öppen källkod för ett begränsat antal kontroller. Se även: Jämförelse av realtidsoperativsystem .
Säljare | Produkter | Licenstyp | Mål | Annan information |
---|---|---|---|---|
Elektrobit Automotive GmbH (del av Continental AG) |
|
Kommersiell | Infineon AURIX TC38XQ, etc. | Tidigare produktnamn: ProOSEK och ProOSEK/time by 3SOFT (3SOFT köptes av Elektrobit) |
ERIKA Enterprise |
|
Kommersiell, GPLv2 eller GPLv2+ (med undantag för länkning) | ARM Cortex, Intel x86, Infineon AURIX, etc. | Officiellt certifierad på ARM Cortex-M4 och Infineon TriCore AURIX |
ETAS Group (del av Robert Bosch GmbH ) |
|
Kommersiell | Olika arkitekturer | |
NXP Semiconductors (tidigare Freescale ) | AUTOSAR 3.0, 4.0, 4.2, 4.3 | Kommersiell | PowerPC 5xxx (t.ex. e200 ), S12/S32, etc. | Tidigare produktnamn: OSEKturbo |
Siemens (genom förvärv av Mentor Graphics Automotive-arm) | Huvudstad VSTAR OS | Kommersiell | Olika arkitekturer | |
TTTech Computertechnik AG |
|
Kommersiell | Olika arkitekturer | |
Vektor Informatik |
|
Kommersiell | Olika arkitekturer | Stödprogram: DaVinci Configurator Pro |
Öppen källkod-derivat
Obs: Utvecklingar med öppen källkod är ofta mycket begränsad i omfattning (mål, överensstämmelseklasser, egenskaper) och verifieras inte mot specifikationerna om inte annat anges.
- ArcCore AUTOSAR OS av Arctic Core (nu en del av Vector Informatik )
- Licens: Dual GPL/commercial
- Firmware de la CIAA (tidigare FreeOSEK), specifikt Firmware v1 (värd på GitHub)
- OSEK av Chalandi Amine värd på GitHub
-
Lego Mindstorms implementeringar:
- ev3OSEK (senaste utgåvan på GitHub: maj 2016)
- nxtOSEK (senaste utgåvan på SourceForge ( nxtOSEK/JSP ): januari 2013)
-
TOPPERS - ( T oyohashi OP en plattform för inbyggda realtidssystem ) projekt
- Utgivning: ATK1 (2008)
- Utgivning: ATK2 (2013)
- Mål: m68k, sh1, sh2, sh3, h8, arm 4, m32r, MicroBlaze , tms320c54x, xstormy16, mips3 , Nios II , v850, rh850
- Licens: MIT eller TOPPERS Licens
-
Trampolin av IRCCyN (Research Institute in Communications and Cybernetics of Nantes)
- Mål: Infineon C166 , PowerPC
- Licens: LGPL
Nedlagd, inte aktiv, okänd status
- mKernel för Microchip PIC18F4550 (tidigare https://sourceforge.net/projects/mkernel/ - inte tillgänglig eller tillgänglig från oktober 2021 )
- openOSEK (inga filer, värd på SourceForge , senaste uppdatering: 2013)
- PicOS18 etc. - tidigare tillgänglig och värd på picos18.com
- Trioztech OSEK var en kommersiell implementering
Vidare läsning
- Berkely EE249 på OSEK (Presentation i PDF-format)
- Christian Michel Sendis. OSEK/RTOS & OSEKturbo Introduktion (PDF, mars 2009, NXP Semiconductors )
- Joseph Lemieux: Programmering i Osek/VDX-miljön. Mcgraw-Hill Professional, 2001, ISBN 1578200814
Se även
- AUTOSAR
- COMASSO-förening (AUTOSAR BSW-konsortium)
- Jämförelse av realtidsoperativsystem
- Controller Area Network (CAN)
- Inbyggda system
- IEC 61508 är en standard för programmerbara elektroniska säkerhetsrelaterade system.
- ISO 26262 Säkerhetsnorm för vägfordon
- Säkerhetsföreskrifter
externa länkar
- AUTOSAR hemsida
- Original OSEK-VDX