16.08.2013 Aufrufe

Objektorientierte Daten- und Zeitmodelle für die Echtzeit ...

Objektorientierte Daten- und Zeitmodelle für die Echtzeit ...

Objektorientierte Daten- und Zeitmodelle für die Echtzeit ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

8 KAPITEL 1. EINFÜHRUNG<br />

1.4 Ausgangssituation <strong>und</strong> verwandte Arbeiten<br />

Bei der Umsetzung dynamischer <strong>Echtzeit</strong>systeme wird man mit zwei gegensätzlichen, wenn<br />

nicht gar sich widersprechenden Forderungen konfrontiert: Die Notwendigkeit einer optimalen<br />

Ausnutzung der Systemressourcen steht dem Wunsch nach einer effizienten Programmentwicklung<br />

mit standardisierten Werkzeugen <strong>und</strong> Komponenten entgegen. Aufgr<strong>und</strong> der hohen<br />

Anforderungen an <strong>die</strong> Hardware, <strong>die</strong> bisher immer an ihren Leistungsgrenzen betrieben wurde,<br />

hat <strong>die</strong> Laufzeiteffizienz i.d.R. den Vorrang vor allgemeinen, wiederverwendbaren <strong>Daten</strong>strukturen<br />

erhalten. So basieren <strong>die</strong> in der Vergangenheit entwickelten Lösungen meist auf teurer<br />

Spezialhardware <strong>und</strong> sind mit Software ausgestattet, <strong>die</strong> speziell auf eine konkrete Anwendung<br />

zugeschnitten <strong>und</strong> <strong>für</strong> <strong>die</strong>se optimiert wurde.<br />

Diese enge Ausrichtung von Entwicklungen auf eine ganz bestimmte Anwendung <strong>und</strong> einen<br />

stark spezialisierten Hardwareaufbau spiegelt sich auch in den zugr<strong>und</strong>eliegenden Modellen<br />

wider. Diese sind i.d.R. stark vereinfacht <strong>und</strong> beschränken sich auf einige wenige Aspekte der<br />

Anwendungsdomäne. Viele Annahmen über das System wandern dabei als implizites Wissen<br />

in <strong>die</strong> Implementierung. Das macht eine Wiederverwendung der entwickelten Komponenten<br />

nahezu unmöglich <strong>und</strong> selbst kleine Veränderungen des Einsatzgebietes oder der Austausch<br />

von Hardware erfordern <strong>die</strong> Neuentwicklung großer Teile des Systems nahezu von Gr<strong>und</strong> auf.<br />

Diese Vorgehensweise ist höchst unwirtschaftlich <strong>und</strong> stellt ein Haupthindernis <strong>für</strong> eine schnelle<br />

<strong>und</strong> effiziente Programmentwicklung dar.<br />

Ansätze <strong>für</strong> ein allgemeines applikationsunabhängiges Bildfolgensystem müssen sich daher<br />

zuerst mit der Modellierung der zentralen Größen <strong>und</strong> Komponenten von Bildfolgenprogrammen<br />

auseinandersetzen. Zu <strong>die</strong>sen Größen zählen vor allem <strong>die</strong> Zeit <strong>und</strong> zeitliche Ausdrücke,<br />

weiterhin <strong>die</strong> dynamischen, über <strong>die</strong> Zeit zu beobachtenden <strong>Daten</strong>, Möglichkeiten <strong>für</strong> <strong>die</strong> Einbindung<br />

der Operatoren, <strong>die</strong> <strong>die</strong>se <strong>Daten</strong> bereitstellen oder verarbeiten <strong>und</strong> schließlich aktive<br />

Komponenten, <strong>die</strong> <strong>für</strong> <strong>die</strong> Steuerung des Programmablaufs verantwortlich sind.<br />

In den folgenden Abschnitten wird untersucht, auf welche Vorarbeiten hinsichtlich der Modellierung<br />

<strong>die</strong>ser Größen zurückgegriffen <strong>und</strong> aufgebaut werden kann. Begonnen wird im Abschnitt<br />

1.4.1 mit einer Übersicht über verschiedene Arbeiten zur rechnerinternen Repräsentation<br />

zeitlicher Ausdrücke. Im darauf folgenden Abschnitt werden bestehende Ansätze zur Repräsentation<br />

von Bildfolgen untersucht. Abschnitt 1.4.3 beleuchtet <strong>die</strong> Aspekte Parallelität <strong>und</strong><br />

Nebenläufigkeit in Bildfolgensystemen. Hier werden vor allem <strong>die</strong> inhärente Parallelität sowie<br />

Möglichkeiten, <strong>die</strong>se darzustellen <strong>und</strong> auf parallele Hardware zu übertragen, untersucht.<br />

Die objektorientierte Programmierung stellt ein mächtiges Werkzeug <strong>für</strong> <strong>die</strong> Repräsentation<br />

komplexer Zusammenhänge auf hohem Abstraktionsniveau dar. Auf deren Stellung <strong>und</strong> Einsatzmöglichkeiten<br />

in der Bildverarbeitung wird in Abschnitt 1.4.4 eingegangen.<br />

1.4.1 Repräsentation von Zeit<br />

Ansätze <strong>für</strong> eine explizite Repräsentation von Zeit <strong>und</strong> zeitlichen Ausdrücken in Computerprogrammen<br />

findet man vor allem im Bereich temporaler Logiken <strong>und</strong> wissensbasierter Systeme.<br />

Erstere stellen Operatoren bereit, <strong>die</strong> z.B. <strong>für</strong> <strong>die</strong> Spezifikation <strong>und</strong> Verifikation nebenläufiger<br />

Programme eingesetzt werden [Hai82, Lam83, Krö87]. In wissensbasierten Systemen werden<br />

zeitliche Aussagen insbesondere im Bereich der temporalen Planung verwendet, wozu auch das<br />

temporale Schließen <strong>und</strong> <strong>die</strong> Terminplanung gehören. Unter temporaler Planung versteht man

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!