Top Banner
1 OSEK-OS Oliver Botschkowski [email protected] PG AutoLab Seminarwochenende 21.-23. Oktober 2007 AutoLab
25

OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Jan 08, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

11

OSEK-OS

Oliver Botschkowski

[email protected]

PG AutoLabSeminarwochenende 21.-23. Oktober 2007

AutoLab

Page 2: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 22„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

Überblick Einleitung

Motivation Ziele Vorteile

Einführung in OSEK-OS Architektur Task Management Interrupt Processing Event Mechanism Resource Management

Quellen Fragen

Page 3: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 33„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

Thema

OSEK/VDX – OS

Offene Systeme und deren Schnittstellen für die Elektronik im Kraftfahrzeug

Vehicle Distributed eXecutive

Page 4: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 44„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

Initiale Partner

Ca. 50 weitere Firmen die im Automotive Bereich tätig sind...

Page 5: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 55„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

Einleitung

Page 6: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 66„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

Einleitung - Motivation Wiederkehrende Kosten für die Entwicklung und

Anpassung von Control Unit Software Inkompatibilitäten von Control Units die von

verschiedenen Firmen hergestellt werden

Page 7: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 77„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

Einleitung - Ziele Portabilität und Wiederverwendbarkeit von

Anwendungssoftware gewährleisten durch: Abstrakte Interfaces die so anwendungsunabhängig wie möglich

gestaltet sind (Bereiche: Real Time OS, Kommunikation, Netzwerk Management)- Spezifikation eines User Interfaces unabhängig der Hardware und des

Netzwerk Effizientes Architektur-Design: Konfigurierbar, Skalierbar, um

optimal auf die Anwendung abgestimmt zu werden Verifikation der Funktionalitäten und Implementation von

Prototypen in Pilot Projekten

Page 8: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 88„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

Einleitung - Vorteile Einsparung von Kosten und Entwicklungszeit Standardisiertes Interface für verschiedene Control Units Verbesserte Qualität der Software von verschiedenen

Control Units Spezifikation schreibt die Implementation nicht vor →

individuelle Implementierung möglich

Page 9: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 99„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

Einführung in OSEK-OS

Page 10: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 1010„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

OSEK-OS - Architektur OSEK-OS wird bei Erzeugung einmal statisch

konfiguriert und skaliert (z.B. Anzahl an Tasks und benötigter Services)

Real-Zeit Ausführung mehrerer paralleler Prozesse

Page 11: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 1111„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

OSEK-OS - Task Management Basic Task

Page 12: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 1212„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

OSEK-OS - Task Management Prioritäten

Page 13: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 1313„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

OSEK-OS - Task Management Extended Tasks

Page 14: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 1414„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

OSEK-OS - Task Management Full Preemptive Scheduling Scheduling bei:

Terminierung eines Tasks Aktivierung eines Tasks auf Task-Level Transition in den Waiting State Event bei einem wartenden Task Freigabe von Ressourcen auf Task Level Rückkehr von Interrupt auf Task Level

Page 15: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 1515„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

OSEK-OS - Task Management Non Preemptive Scheduling Scheduling bei:

Terminierung eines Tasks Expliziten Aufruf des Schedulers Transition in den Waiting State

Page 16: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 1616„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

OSEK-OS - Task Management Mixed Preemptive Scheduling Jeder Task kann preemptive oder non preemptive

gescheduled werden

Page 17: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 1717„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1

ISR benutzt keine OS-Services Unterbrochener Kontrollfluss wird fortgesetzt Wenig Overhead

Kategorie2 ISR kann einige OS-Services nutzen Evtl. Aufruf des Schedulers

Page 18: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 1818„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

OSEK-OS - Event Mechanism Events = Objekte die durch das OS gehandhabt werden Gehören jeweils zu einem Extended Task Erwirkt Zustandsübergänge von Waiting zu Ready Werden zur Kommunikation zwischen Tasks genutzt

Page 19: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 1919„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

OSEK-OS - Event Mechanism Wie durch Events synchronisieren? T1 hat höhere Priorität als T2

Page 20: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 2020„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

OSEK-OS - Event Mechanism T1 hat höhere Priorität als T2

Page 21: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 2121„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

OSEK-OS - Resource Management Koordination konkurrierender Tasks beim Zugriff auf

Resourcen Resource Management sichert folgendes zu:

Zwei Tasks können nicht die gleiche Resource zur selben Zeit haben

Keine Priority Inversion Kein Deadlock Der Zugriff auf Resourcen endet nicht im Waiting State

Bei Erweiterung auf ISR: Zwei Taks oder ISR´s können nicht die gleiche Resource zur selben

Zeit nutzen

Page 22: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 2222„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

OSEK-OS - Resource Management Priority Ceiling Protocol

Page 23: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 2323„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

OSEK-OS - Architektur Skalierung wird durch Conformance Classes

abgesichert

Page 24: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 2424„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

Quellen www.osek-vdx.org OSEK/VDX Operating System Specification 2.2.3 OSEK/VDX Binding Specification 1.4.2 http://de.wikipedia.org/wiki/OSEK http://de.wikipedia.org/wiki/OSEK-OS

Page 25: OSEK-OS - TU Dortmund · OSEK-OS – Interrupt Processing ISR (Interrupt Service Routine) Mehrere Interrupts auch mit Prioritäten Gescheduled durch die Hardware Kategorie1 ISR benutzt

Oliver Botschkowski <[email protected]> 2525„OSEK -OS“, PG AutoLab, Seminarwochenende 21.-23.10.2007

AutoLab

?Fragen?

Danke für eure Aufmerksamkeit!