Um die in der Beschreibung der Softwarekomponenten enthaltenen Kommunikations- und Aufrufmechanismen realisieren zu können, wird eine effiziente Laufzeitumgebung (RTE) benötigt.

Erzeugung der RTE

Dank der formalen Beschreibung der SWCs eröffnet sich die Möglichkeit, das Software Design automatisch zu analysieren, daraus eine optimierte Laufzeitumgebung abzuleiten und zu generieren. In dieser formalisierten Beschreibung eines Softwaredesigns ist beispielsweise enthalten, in welchem Kontext ein Runnable Entity aufgerufen wird, und ebenfalls wie es mit anderen Teilen derselben oder einer anderen SWC in Interaktion tritt.

Wenn man weitere Randbedingungen wie die Konfiguration der Basissoftware betrachtet, kann man Entscheidungen treffen, wie ein Funktionsaufruf optimal implementiert werden kann.

Festlegungen

Es müssen grundsätzlich Entscheidungen getroffen werden über

  • die Verwendung und die Auswahl des Sperrmechanismus gegen den nebenläufigen Zugriff aus anderen Runnable Entities.
  • die Methode des Aufrufs.
    Er erfolgt entweder direkt (als Makro oder C-Funktionsaufruf) oder mittelbar durch ein RTE Event, das mit Hilfe des Betriebssystems ausgelöst wird.
  • die Art und Weise eines Schreib- oder Lesezugriffs.
    Dies kann entweder der Zugriff auf eine Variable sein, oder auch der Aufruf einer API der Basissoftware. Die Semantik verschiedener Zugriffsarten ist hier ebenso zu berücksichtigen wie die Mechanismen, mit denen sie umgesetzt sind.

Je nach Konfiguration kann diese Auswahl mehr oder weniger günstig getroffen werden.

Optimierungen

Im Allgemeinen sollte der Generator der Laufzeitumgebung für einen sparsamen Einsatz von OS Events und Alarmen sorgen. Durch eine geschickte Konfiguration des Systems können jedoch zusätzliche, wesentlich größere Einsparungen beim Ressourcenverbrauch und der Laufzeit erzielt werden. Dazu ist es nötig, die Auswirkungen bestimmter Entwurfsentscheidungen während der Designphase der Softwarekomponenten zu kennen.

Zuletzt geändert: Donnerstag, 26. April 2018, 15:22