Objektorientierte Daten- und Zeitmodelle für die Echtzeit ...
Objektorientierte Daten- und Zeitmodelle für die Echtzeit ...
Objektorientierte Daten- und Zeitmodelle für die Echtzeit ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
6.3. DIE FUNKTIONALE PROGRAMMBESCHREIBUNG 101<br />
Test <strong>und</strong> ggf. Abbruch mit Statusinformation:<br />
Ø <br />
Ø Ë<br />
Ø <br />
Ø Ë <br />
Ë <br />
Ø Ë <br />
Warten auf Bereitstellung (passiv):<br />
Ø Ø Ë<br />
Ø Ø Ë <br />
Ë Ø Ë <br />
Wert insistent anfordern <strong>und</strong> auf Ergebnis warten:<br />
Ø Ø Ë<br />
Ø Ø Ë <br />
Ë Ø Ë <br />
Prädizieren oder Interpolieren, ggf. wartend oder insistent:<br />
Ø <br />
Ø<br />
Ø <br />
Ø<br />
Ø <br />
Ø<br />
Ë<br />
Ë<br />
Ë<br />
Ë Ø Ë <br />
Ø Ë <br />
Ø<br />
Abbildung 6.7: Darstellungsmittel zur Bestimmung des Verhaltens bei Zugriffen auf fehlende<br />
<strong>Daten</strong>.<br />
kann <strong>die</strong>se auswerten <strong>und</strong> daraufhin z.B. seine Ausführung ebenfalls ohne Ergebnis beenden.<br />
Gekennzeichnet wird <strong>die</strong>ses Verhalten durch <strong>die</strong> Relation Ø <br />
Ø . Diese Zugriffsart impliziert<br />
somit einen Test, ob das geforderte Datum (bereits) verfügbar ist. Schlägt der Test <strong>für</strong> mindestens<br />
ein Eingangsdatum fehl, muß der Funktor zu einem späteren Zeitpunkt — z.B. wenn ein<br />
weiteres Eingangsdatum bereitsteht — erneut angestoßen werden, damit er in <strong>die</strong>sem Zyklus<br />
den Aufrufversuch wiederholen kann.<br />
Alternativ zu <strong>die</strong>ser Möglichkeit wird mit der Relation Ø Ø ausgedrückt, daß beim Zugriff<br />
auf den angeforderten Wert bestanden wird, d.h. der Zugriff insistent ist. Da<strong>für</strong> wird <strong>die</strong><br />
Programmkontrolle an <strong>die</strong> Sequenz übertragen <strong>und</strong> auf ein Ergebnis gewartet. Damit steht<br />
ein Mittel zur Verfügung, <strong>Daten</strong>anfragen durch das Netz bis zu den Eingangsdaten des Moduls<br />
durchzureichen <strong>und</strong> sukzessive abzuarbeiten. Wurde über einen beliebigen Anfrageweg<br />
im Graphen ein Datum einmal berechnet, steht es auch allen anderen Anfragen an <strong>die</strong> Sequenz<br />
zur Verfügung. Es kann über <strong>die</strong> <strong>Daten</strong>- oder Zykluszeit eindeutig identifiziert <strong>und</strong> dann ohne<br />
Verzögerung an den Funktor übergeben werden. Damit wird sichergestellt, daß jedes Datum<br />
pro Zyklus nur einmal berechnet <strong>und</strong> jeder Funktor nur einmal ausgeführt wird.<br />
Werden bestimmte Eingangsdaten durch eine vom betrachteten Funktor unabhängige Komponente<br />
bereitgestellt, ist es unter Umständen erforderlich, beim Zugriff auf <strong>die</strong>se <strong>Daten</strong> einfach<br />
nur zu warten, bis <strong>die</strong> Sequenz aktualisiert wurde. Dies wird mit Hilfe der Ø Ø -Relation spezifiziert.<br />
Und schließlich kann eine Interpolation oder Prädiktion der fehlenden <strong>Daten</strong> aus den in der<br />
Sequenz gespeicherten Werten erforderlich sein, was mit Hilfe der Relation Ø <br />
Ø ausgedrückt<br />
wird. Soll dabei auf den ersten Meßwert nach dem angegebene Zeitpunkt gewartet werden —<br />
<br />
Ø<br />
Ø<br />
Ø<br />
S A<br />
S B<br />
S A<br />
S B<br />
S A<br />
S B<br />
S A<br />
S B<br />
S C<br />
t?<br />
t? -1<br />
t<br />
t -1<br />
t<br />
t-1<br />
t ~<br />
t~<br />
t ~<br />
F<br />
F<br />
F<br />
F