Modelling Flashcards
Was ist bei der Konstruktion eines Models wichtig?
- Fokus auf wesentliche Eigenschaften
- Gute Spezifikation von Elementen und Beziehungen derer
- Verständlichkeit von Struktur und Funktionen
- Formale Notation
- Explizite Angabe von Modelannahmen
Was ist Assumption Coverage?
- Assumption Coverage ist die Wahrscheinlichkeit, dass die Annahmen das reale Szenario abdecken
- Limitiert die Zuverlässigkeit eines perfekten Entwurfs und den Nutzen der formalen Überprüfung
Was sind die beiden wichtigen Annahmen, die in der requirements specification enthalten sein müssen?
- Load Hypothesis: Spezifikation des peak load, den das System handlen muss
- Faul Hypothesis: Spezifikation der Anzahl und Arten von Fehlern, die ein fehlertolerantes System tolerieren muss
In welche Bereiche lässt sich die Fault Hypothesis unterteilen?
- Fehler, die toleriert werden müssen
- Fehler, die nicht unter die Fehlertoleranzmechanismen fallen
Welche Strategie wird außerhalb der Fault Hypothesis verwendet?
Never-give-up (NGU) Strategie
Was sind die essentiellsten Elemente eines Echtzeitsystem Models?
- Representation of Real-Time
- Semantic Properties of Data Transformations
- Durations of the executions
Was sind unwichtigere Details eines Echtzeitsystem Models?
- Repräsentation der Informationen innerhalb des Systems (Nur wichtig in Interfaces)
- Detaillierte Merkmale von Datentransformationen
- Zeitliche Granularität, die feiner ist als die Anforderungen der Anwendung
Woraus setzt sich ein Echtzeitsystem zusammen?
- Computer System
- Controlled Object
- Operator
Beschreiben Sie den hierarchischen Aufbau eines Echtzeitcomputersystems.
Ein Prozess ist ein Teil eines Nodes, dieser Node wiederum ist Teil eines Clusters und dieses Cluster ist Teil eines Echtzeitcomputersystems
Was ist ein Cluster?
- Ein Cluster ist ein Subsystem eines Echtzeitsystems mit hoher interner Vernetzung
- Ein Set aus Nodes
Was ist ein Prozess?
- Der Prozess ist eine Ausführung eines Programms
- Er beginnt mit dem Lesen von Eingabedaten
- Endet mit der Produktion von Ausgabedaten
Welche zwei Prozesstypen unterscheidet man?
- Simple (S) Prozess
- Complex (C) Prozess
Was sind die Eigenschaften eines Simple (S) Prozess?
- Keine Synchronisationspunkte
- Kann einen internal state haben
- Statelose S-Prozesse nennt man functional
- Sind gut für die Komplexität
Was sind die Eigenschaften eines Complex (C) Prozess?
- Mindestens einen internal Synchronisationspunkt (Beispiel: wait on condition (P) statement)
- Abhängig von anderen Prozessen, daher ist zeitliches Verhalten schwieriger einzuschätzen als bei S-Prozessen
Was ist ein Node?
Ein Node ist eine Hardware-Software Einheit, die aus mehreren Elementen besteht
Aus welchen Bestandteilen setzt sich ein Node zusammen?
- Hardware
- Operating System (Software)
- I-State (initialization state)
- H-State (history state)
- G-State (ground state)
Was ist der History State (H-State)?
H-State umfasst alle Informationen, die erforderlich sind, um einen “leeren” Node (oder Prozess) zu einem bestimmten Zeitpunkt zu starten
Was ist der Ground State (G-State)?
- Minimaler H-State eines Subsystems (Node), wo alle Prozesse inaktiv und alle Channel geleert sind
- Wird für die Reintegration von Nodes benötigt
Wodurch wird ein Interface zwischen zwei Subsystemen (Cluster, Node, etc.) charakterisiert?
- Data properties: Struktur und Semantik der Datenelemente, die die Schnittstelle passieren
- Temporal properties: Zeitliche Bedingungen, die von der Schnittstelle erfüllt werden müssen
- Functional intent: Annahmen über die Funktionen des Schnittstellenpartners
Wie funktioniert Shared Memory?
- Weit verbreitet in Mehrprozessor-Architekturen
- Parallele Verarbeitung auf der Grundlage mehrerer Steuerungsthreads, die gleichzeitig ausgeführt werden und auf gemeinsamen Daten arbeiten
- Synchronisationsmechanismen wie Semaphoren
Was ist der Vorteil von message passing mit verteilten Speichersystemen gegenüber shared memory?
Bietet bessere Skalierbarkeit
Was ist unidirectional message passing?
- Grundlegender Interaktionsmechanismus zwischen Nodes in einem distributed real-time system
- Multicasting wird unterstützt
- Nachrichten werden für Datenaustausch und Synchronisation genutzt
- Shared memory kann aus höherer Ebene realisiert werden, zusätzlich zu einem grundlegenden message passing Service
- Message passing erleichtert die Kapselung und Wiederherstellung
Welche Interfaces hat ein Node (Messages)?
- Diagnostic and management Interface
- Linking Interface (LIF)
- Configuration Planning Interface
- Local Interfaces
Welches ist das wichtigste Interface in Embedded Systems?
- Das Linking Interface ist das wichtigste Interface in Embedded Systems
- Es ist als einziges Interface für die zeitliche Zusammensetzbarkeit relevant
- LIF Spezifikation versteckt die Implementierung
Was muss ein LIF (Bsp. control algorithm) spezifizieren?
- Temporal pre-conditions: Zu welchem Zeitpunkt müssen Eingabeinformationen an ein Modul übergeben werden
- Temporal post-condictions: Zu welchem Zeitpunkt müssen Ausgabeinformationen durch das Modul generiert werden
- Proper model: Eingenschaften der beabsichtigten Informationstransformation, die durch das Modul bereitgestellt werden
Wann verhält sich ein Node, wie ein information transducer (Informationsvermittler)?
Wenn ein Node ein nachrichtenbasiertes Linking Interface und ein Local Interface hat