6 - Echtzeitsysteme [ID:9810]
50 von 702 angezeigt

Dieser Audiobeitrag wird von der Universität Erlangen-Nürnberg präsentiert.

Weil da muss ich ja davon ausgehen, dass es Zyklen gibt, wo die Periode nicht eingehalten

wird und auch der Termin nicht eingehalten wird, wo ich ein Stück Restarbeit noch in

die nächste Periode verschiebe. Genau, das heißt, das ist alles ein Riesenproblem,

also mit sehr viel Verwaltungsaufwand verbunden, mit sehr viel Arbeit verbunden, mit sehr viel

manueller Arbeit verbunden. Das ist auch tatsächlich das, was man heutzutage immer noch sehr, sehr

häufig sieht in der Praxis. Dass also sehr, sehr, sehr viel Arbeit da drauf geht, das manuell zu tun.

Ich hatte erst neulich eine Masterarbeit bei einem Zulieferer hier aus der Gegend, wo es darum ging,

jetzt nicht die Zeiten zu modellieren und letztendlich diesen Ablaufplan zu automatisieren,

sondern dasselbe Problem gibt es sich natürlich auch bei jeder anderen Art von Ressourcenallokation.

Also stellt euch mal vor, was ist mit Speicher? Speicher muss genauso verwaltet werden zwischen

diesen einzelnen Softwaremodulen wie Zeit. Und da haben sie dann festgestellt, sie verbrauchen in

einem Projekt Größenordnung 800 Arbeitsstunden dafür, dass man in Excel-Tabellen Speicherzuordnungen

festlegt. Das kann man sich gar nicht vorstellen. Von der einzelnen Anwendung, die dieser Zulieferer

herstellt. Und er hat im Prinzip nichts anderes gemacht, als den Prozess zu automatisieren mit

einem kleinen Tool. Im Prinzip das, was wir den Compiler machen lassen, wenn wir das komplette

Softwareprojekt unter Kontrolle haben. Wenn wir alle Sourcen haben und wenn wir einen

Übersetzungsvorgang haben, dann können wir diese Aufgabe den Compiler übernehmen lassen,

beziehungsweise den Linker. Deshalb stellt sich die Frage für uns gar nicht. Aber wenn man so eine

verteilte Entwicklung hat, dann bekommt man eben lauter Softwaremodule zugeliefert und jeder hat

ihr eigenes Speichermapping. Und irgendjemand muss sich hinsetzen und muss dieses Speichermapping

machen. Und er hat dieses Tool geschrieben und hat das Ganze auf acht Minuten reduziert, was das Tool

braucht zum Übersetzen und Rechnen. Das ist für den Betrieb ein Riesenfortschritt. Und im Prinzip

dasselbe Spielchen kann man sich auf der Zeit auch vorstellen. Wie macht man das jetzt in der

Praxis? Was ist sozusagen der aktuelle Stand? Wie wird da vorgegangen? Man hilft sich mit

Spezifikationen. Das ist letztendlich das, was die Automobilisten kennen, was die Maschinenbauer

kennen. Das heißt, die haben den selben Ansatz auf die Softwareübertragung. Wir spezifizieren

einfach das zeitliche Verhalten. Ihr solltet inzwischen, denke ich, ein Gefühl dafür entwickelt

haben, dass das ganz schön knifflig ist, im Vorhinein das zeitliche Verhalten von Software

zu spezifizieren. Aber gut, das ist das, was man macht. Das heißt, man geht von oben nach unten.

Der Hersteller spezifiziert das zeitliche Verhalten von der Anwendung, der Zulieferer spezifiziert

für das Projekt das zeitliche Verhalten von der Softwarekomponente und der Unit-Entwickler,

der Funktionsentwickler, der muss sich halt irgendwie dran halten. Ja gut, das ist halt

wieder dieses klassische Vorgehen mit, ja, wir geben es halt vor und wir verpflichten euch,

dass ihr euch daran haltet, egal ob es geht oder eben nicht. Das ist dieses typische Hollywood-Prinzip.

Rufen Sie uns nicht an, wir rufen Sie an. Ist natürlich aus Sicht des Entwicklers problematisch,

weil er muss sich jetzt an Vorgaben halten, die in Umständen völlig unrealistisch sind. Das heißt,

wir haben jetzt eine globale Planung, die wir vornehmen müssen oder die wir vornehmen sollen

und müssen aber eigentlich lokal mit diesen Zuweisungen, mit diesen Zeitschlitzen, die uns

der Hersteller da vorgibt, müssen wir letztendlich lokal umgehen. Ermöglicht natürlich, dass man jetzt

lokal Probleme löst, das heißt, wenn ich einen festen Zeitschlitz zugewiesen habe, habe ich

zumindest das Problem weg, dass ich mich um irgendwelche Zeiteinheiten kloppen muss, weil

der andere größer wird, wird mein Bereich kleiner, das gibt es dann nicht, sondern jeder hat seinen

zugewiesenen Bereich. Dementsprechend kann ich mich lokal darum kümmern, wenn es nicht reicht,

habe ich natürlich trotzdem ein Problem. Und weiteres Problem ist, wenn ich das sinnvoll machen

will, das heißt, wenn ich nicht im Nachgang feststellen muss, dass mir dieser zugewiesene

Zeitrahmen nicht ausreicht, dann müsste ich ja im Voraus wissen, welcher Zeitbedarf tatsächlich

da ist und dieses, diese globale Ablaufplanung, das heißt, dieses Vorgeben von Zeit durch eine

Spezifikation von oben nach unten, um das durchzuziehen, müsste ich ein globales Wissen

haben, das heißt, dieses typische A priori Wissen, von dem man hier und da mal im Skript liest,

Teil einer Videoserie :

Zugänglich über

Offener Zugang

Dauer

01:08:53 Min

Aufnahmedatum

2018-11-29

Hochgeladen am

2018-12-03 22:09:46

Sprache

de-DE

Durch die Kopplung an die Realzeit, sind Echtzeitsysteme per Definition in die (reale) Umwelt eingebettet. Hier dienen sie typischerweise der Steuerung und Regelung von physikalischen Prozessen, wie beispielsweise dem Airbag eines Fahrzeugs.

Die Entwicklung eines Echtzeitsystems schliesst typischerweise Experten aus verschiedenen Bereichen mit ein. Die Veranstaltung nähert sich der Thematik zwar aus der Sicht der Informatik, ist jedoch grundsätzlich interdisziplinär ausgelegt und richtet sich sowohl an Studierende der Informatik als auch an diejenigen anderer Studiengänge mit einem anwenungsorientierten Bezug wie beispielsweise Mechatronik, Elektrotechnik, I&K, CE, Maschinenbau und Medizintechnik (siehe Vorraussetzungen).

Entsprechend weit spannt sich auch das Themengebiet Echtzeitsysteme auf. Abhängig von der Betrachtungsebene spricht man allgemein von eingebetteten Systemen oder, um den regelungstechnischen Anteil hervorzuheben, von Cyber-Physical Systems. Die Veranstaltung Echtzeitsysteme nimmt hierbei den Standpunkt der Systemsoftware (Echtzeitbetriebssystem) ein und erlaubt dadurch einen querschneidenden Einblick in die gesamte Welt der Echtzeitsystementwicklung. Die Vorlesung vermittelt dabei die notwendigen Grundkenntnisse, Techniken und Mechanismen für die Entwicklung von Echtzeit(betriebs)systemen und schafft damit eine gemeinsame Grundlage für alle Beteiligten.

Ziel der Veranstaltung ist neben einem fundierten theoretischen Überblick auch die tiefgehende Vermittlung von praktischem Wissen und Fähigkeiten, welche als Basis für eine erfolgreiche industrielle bzw. wissenschaftliche Anwendung dienen können.

Einbetten
Wordpress FAU Plugin
iFrame
Teilen