zentralübung automotive software engineering – Übungsblatt 1

Post on 14-Jan-2016

34 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Zentralübung Automotive Software Engineering – Übungsblatt 1. Sascha Schwind. Aufgabe 1: Eingebettetes System. Beispiele Waschmaschine, Handy, Kaffeemaschine, MP3-Player, usw Definition - PowerPoint PPT Presentation

TRANSCRIPT

Fakultät für InformatikLehrstuhl IV: Software & Systems Engineering 1

Zentralübung Automotive Software Engineering – Übungsblatt 1

Sascha Schwind

Aufgabe 1: Eingebettetes System

• Beispiele

– Waschmaschine, Handy, Kaffeemaschine, MP3-Player, usw

• Definition

– SW-System eingebettet in einen speziellen technischen oder physikalischen Kontext und unterliegen häufig Echtzeit-Bedingungen

• Aufgaben

– Regeln, steuern oder überwachen

• Einsatzgebiete

– Motorsteuerung, Komfortelektronik, Airbag, Fensterheber, usw.

• Besonderheiten

– Interaktionen mit Sensoren oder Aktuatoren

– Strenge Anforderungen an Kosten, Ausmaße oder Stromverbrauch

– Kommunikation über spezielle Bussysteme

Aufgabe 1: Eingebettetes System

• Unterschiede bezüglich Automotive Software

– Sicherheitskritisch

– Hoher Grad der Vernetzung

• 60 – 80 Steuergeräte in Premium Fahrzeugen

• Bis zu 5 verschiedene Bussysteme

• Reaktivität

– Aperiodische Ereignisse, z.B. Tastendruck zum Öffnen der

Fenster

Aufgabe 1: Eingebettetes System

• Echtzeit– Correctness depends not only on the logical result(s) of a

computation, but also on the time at which the results are produced.

[Schütz, W.: The Testability of Distributed Real-Time Systems]

• Harte Echtzeit– Ergebnis muss vor der Deadline vorliegen

– Verletzungsrisiko, Todesfolge oder hoher finanzieller Verlust

– Sicherheitskritisch, z.B. Airbag innerhalb 80ms

• Weiche Echtzeit– Überschreiten der Deadline ohne schwerwiegenden

Konzequenzen

Fakultät für InformatikLehrstuhl IV: Software & Systems Engineering 5

Aufgabe 2: Zeit- vs. Ereignissteuerung

TT ET

Durchsatz Gut bei hoher Last, u.U. nicht

optimale Reaktionszeiten

Durchsatzoptimierend

Sicherheit/Echtzeit • Leicht nachweisbare

Einhaltung des

Echtzeitverhaltens (des

Schedulings),

• u.U. kritische Reaktionen auf

WCET-Überschreitungen

• Nicht Determinismus

• Echtzeitnachweis schwieriger

• Keine Information über das

Zeitverhalten der Ereignisse

notwendig (=> nicht

Determinismus)

Applikationsdomänen • Harte Echtzeit,

• Regelungstechnik (z.B.

Motorsteuerung)

• Eher weiche Echtzeit

• z.B. Komfortelektronik

Fakultät für InformatikLehrstuhl IV: Software & Systems Engineering 6

Aufgabe 3: CAN-Frame

Aufgabe 3: Wichtige Begriffe

Erkläre folgende Begriffe:

• CSMA/CA

• TDMA

• Broadcast

• Multicast

Fakultät für InformatikLehrstuhl IV: Software & Systems Engineering 7

Aufgabe 3: CAN

• CAN-Übertragungsraten

Fakultät für InformatikLehrstuhl IV: Software & Systems Engineering 8

Bitrate Kabellänge

10 Kbit/s 6,7 km

20 Kbit/s 3,3 km

50 Kbit/s 1,3 km

125 Kbit/s 530 m

250 Kbit/s 270 m

500 Kbit/s 130 m

1 Mbit/s 40 m

Fakultät für InformatikLehrstuhl IV: Software & Systems Engineering 9

Blatt 1, Aufgabe 4: OSEK NM

Fakultät für InformatikLehrstuhl IV: Software & Systems Engineering 10

Aufgabe 5: Präemptivität

Nicht-präemptives Scheduling:

Präemptives Scheduling:

Fakultät für InformatikLehrstuhl IV: Software & Systems Engineering 11

Aufgabe 5: Prioritätsinversion

• Verzögerung von Prozessen durch Prozesse mit

niedrigerer Priorität, z.B.:

Fakultät für InformatikLehrstuhl IV: Software & Systems Engineering 12

Aufgabe 5: Priority Inheritance

• Ein Prozess, der eine Ressource in Anspruch nimmt,

erbt die Priorität des höchstprioren Prozesses, der auf

die Ressource wartet.

• Problem: Deadlocks möglich !!!

S2

Aufgabe 5: Priority Ceiling

• …. Lösung: Nur verschachtelten Zugriff auf die Ressourcen zu

(z.B. lock S1, lock S2, . . . , unlock S2, unlock S1)

• Betriebsmittel bekommen Ceiling Priority (Prio des höchtprioren

Prozesses, der das Betriebsmittel nutzt)

• Instant Inheritance Algorithm: „Ceiling Priority“ eines kritischen

Bereichs muss hierbei höher sein als die Priorität der Tasks,

welche die Ressource nutzen. Gleichzeitig soll sie kleiner als die

niedrigste Priorität der Prozesse sein, welche die Ressource

nicht beanspruchen, und höher als der höchstpriore, die

Ressource nutzende Task (entsprechend der OSEK-

Spezifikation).

Fakultät für InformatikLehrstuhl IV: Software & Systems Engineering 13

Aufgabe 5: Priority Ceiling

Fakultät für InformatikLehrstuhl IV: Software & Systems Engineering 14

top related