Modelling Flashcards

1
Q

Was ist bei der Konstruktion eines Models wichtig?

A
  • Fokus auf wesentliche Eigenschaften
  • Gute Spezifikation von Elementen und Beziehungen derer
  • Verständlichkeit von Struktur und Funktionen
  • Formale Notation
  • Explizite Angabe von Modelannahmen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Was ist Assumption Coverage?

A
  • 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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Was sind die beiden wichtigen Annahmen, die in der requirements specification enthalten sein müssen?

A
  • 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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

In welche Bereiche lässt sich die Fault Hypothesis unterteilen?

A
  • Fehler, die toleriert werden müssen
  • Fehler, die nicht unter die Fehlertoleranzmechanismen fallen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Welche Strategie wird außerhalb der Fault Hypothesis verwendet?

A

Never-give-up (NGU) Strategie

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Was sind die essentiellsten Elemente eines Echtzeitsystem Models?

A
  • Representation of Real-Time
  • Semantic Properties of Data Transformations
  • Durations of the executions
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Was sind unwichtigere Details eines Echtzeitsystem Models?

A
  • 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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Woraus setzt sich ein Echtzeitsystem zusammen?

A
  • Computer System
  • Controlled Object
  • Operator
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Beschreiben Sie den hierarchischen Aufbau eines Echtzeitcomputersystems.

A

Ein Prozess ist ein Teil eines Nodes, dieser Node wiederum ist Teil eines Clusters und dieses Cluster ist Teil eines Echtzeitcomputersystems

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Was ist ein Cluster?

A
  • Ein Cluster ist ein Subsystem eines Echtzeitsystems mit hoher interner Vernetzung
  • Ein Set aus Nodes
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Was ist ein Prozess?

A
  • Der Prozess ist eine Ausführung eines Programms
  • Er beginnt mit dem Lesen von Eingabedaten
  • Endet mit der Produktion von Ausgabedaten
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Welche zwei Prozesstypen unterscheidet man?

A
  • Simple (S) Prozess
  • Complex (C) Prozess
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Was sind die Eigenschaften eines Simple (S) Prozess?

A
  • Keine Synchronisationspunkte
  • Kann einen internal state haben
  • Statelose S-Prozesse nennt man functional
  • Sind gut für die Komplexität
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Was sind die Eigenschaften eines Complex (C) Prozess?

A
  • 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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Was ist ein Node?

A

Ein Node ist eine Hardware-Software Einheit, die aus mehreren Elementen besteht

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Aus welchen Bestandteilen setzt sich ein Node zusammen?

A
  • Hardware
  • Operating System (Software)
  • I-State (initialization state)
  • H-State (history state)
  • G-State (ground state)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Was ist der History State (H-State)?

A

H-State umfasst alle Informationen, die erforderlich sind, um einen “leeren” Node (oder Prozess) zu einem bestimmten Zeitpunkt zu starten

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Was ist der Ground State (G-State)?

A
  • Minimaler H-State eines Subsystems (Node), wo alle Prozesse inaktiv und alle Channel geleert sind
  • Wird für die Reintegration von Nodes benötigt
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Wodurch wird ein Interface zwischen zwei Subsystemen (Cluster, Node, etc.) charakterisiert?

A
  • 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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Wie funktioniert Shared Memory?

A
  • 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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Was ist der Vorteil von message passing mit verteilten Speichersystemen gegenüber shared memory?

A

Bietet bessere Skalierbarkeit

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Was ist unidirectional message passing?

A
  • 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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Welche Interfaces hat ein Node (Messages)?

A
  • Diagnostic and management Interface
  • Linking Interface (LIF)
  • Configuration Planning Interface
  • Local Interfaces
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Welches ist das wichtigste Interface in Embedded Systems?

A
  • 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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

Was muss ein LIF (Bsp. control algorithm) spezifizieren?

A
  • 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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

Wann verhält sich ein Node, wie ein information transducer (Informationsvermittler)?

A

Wenn ein Node ein nachrichtenbasiertes Linking Interface und ein Local Interface hat

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

Was verwendet man, um nicht übereinstimmende Eigenschaften an Interfaces aufzulösen?

A

Ein Interface System (IS)

28
Q

Welche zwei Interfaces kann man bei einem unidirektionalen Datenfluss zwischen zwei Teilsystemen unterscheiden?

A
  • Elementary Interface: Control und Daten fließen in die gleiche und auch nur in eine Richtung
  • Composite Interface: Control fließt in beide Richtungen, Daten nur in eine
  • Elementary Interfaces sind generell einfacher als Composite Interfaces
29
Q

Was ist ein Information Push Interface?

A
  • Informationsproduzent gibt Informationen an den Informationskonsumenten weiter
  • Beispiele: Telefon, Interrupt
  • In Echtzeitsystemen besser für den Erzeuger
30
Q

Was ist ein Information Pull Interface?

A
  • Verbraucher von Informationen fordert bei Bedarf Informationen an
  • E-Mail
  • In Echtzeitsystemen besser für den Empfänger
31
Q

Was ist eine Real Time Entity?

A

Eine Real Time Entity ist eine Zustandsvariable von Interesse für den gegebenen Zweck, die ihren Zustand in Abhängigkeit von der Echtzeit ändert

32
Q

Welche Real Time Entities unterscheidet man?

A
  • Continuous RT Entities
  • Discrete RT Entities
33
Q

Welche Beispiel für Real Time Entities kennen Sie?

A
  • Durchfluss in einer Rohrleitung (continuous)
  • Position eines Schalters (discrete)
  • Von einem Operator gewählter Sollwert
  • Beabsichtigte Position eines Actuators
34
Q

Was sind Merkmale einer RT-Entity?

A
  • Static Attributes: Name, Type, Value Domain, Maximum Rate of Change
  • Dynamic Attributes: Wert, der zu einem bestimmten Zeitpunkt gesetzt wird
35
Q

Was ist eine Sphere of Control (SOC)?

A
  • Kontrollbereich
  • Jede RT-Entity befindet sich in einer SOC eines Subsystems, welches die Berechtigung hat die Werte der Entity zu setzen
  • Außerhalb der SOC kann eine RT-Entity nur beobachtet, aber nicht verändert werden
  • Auf dieser Abstraktionsebene sind Änderungen in der Darstellung einer RT-Entity nicht von Bedeutung
36
Q

Wozu dient eine Observation?

A
  • Informationen über den Zustand einer RT-Entity zu einem bestimmten Zeitpunkt werden in einer Observation festgehalten
  • Atomic Triple: Name, Time, Value
  • Werden in Messages transportiert
37
Q

Was bezeichnet man als State Observation?

A
  • Observation value enthält den vollen oder teilweisen state der RT-Entity
  • Zeitpunkt einer state observation bezeichnet den Zeitpunkt, zu dem die RT-Entity abgetastet wird
38
Q

Was bezeichnet man als Event Observation?

A
  • Observation value enthält die Differenz zwischen dem “alten state” und dem “neuen state”
  • Zeitpunkt einer event observation bezeichnet den Zeitpunkt, des L-Events des “neuen states”
39
Q

Was sind RT-Images?

A
  • Ist ein Bild einer RT-Entity
  • Gültig zu einem bestimmten Zeitpunkt, wenn es eine genaue Darstellung in den Bereichen value und time der entsprechenden RT-Entity ist
  • Kann auf einer observation oder einem state estimation basieren
  • Können in data objects gespeichert werden
40
Q

Was ist ein RT-Object?

A
  • Ist ein Container für ein RT-Image oder eine RT-Entity in einem Computer System
  • Hat eine zugehörige Echtzeituhr, deren Granularität mit der Dynamik der RT-Einheit übereinstimmen
  • Aktiviert eine Objektprozedur, wenn die Zeit einen voreingestellten Wert erreicht
41
Q

Was ist ein synchrones RT-Object?

A

Wenn es keine andere Möglichkeit gibt, eine Objektprozedur zu aktivieren als durch das periodische Ticken der Uhr

42
Q

Was sind distributed RT-Objects?

A
  • Eine Gruppe von replizierten RT-Objects, die sich an verschiedenen Standorten befinden
  • Jede lokale Instanz eines verteilten RT-Objects bietet einen bestimmten Dienst für seinen lokalen Standort
43
Q

Was sind Beispiele für distributed RT-Objects?

A
  • Clock Synchronisierung mit einer bestimmten Genauigkeit
  • Membership Service mit einem bestimmten Delay
44
Q

Was muss man beachten, wenn ein RT-Objekt durch Beobachtungen geupdatet wird?

A

Wenn ein RT-Objekt durch Beobachtungen geupdatet wird, dann gibt es immer einen Delay zwischen dem Status der RT-Entity und dem des RT-Objektes

45
Q

Wann nennt man ein data element parametric oder phase insensitive?

A

d_update + WCET_send + WCCOM + WCET_rec < d_acc

46
Q

Was ist d_update?

A

Updateintervall des data elements

47
Q

Wann nennt man ein data element phase sensitive?

A

WCET_send + WCCOM + WCET_rec < d_acc ≤ d_update + WCET_send + WCCOM + WCET_rec

48
Q

Wie kann man eine gute Genauigkeit eines RT-Objektes erreichen?

A

Häufiges Sampling der RT-Entity oder State Estimation

49
Q

Was ist State Estimation?

A
  • Innerhalb eines RT-Objektes wird regelmäßig eine Schätzung des aktuellen Zustandes des RT-Objektes berechnet
  • Häufig besteht die Möglichkeit, einen Kompromiss zwischen Rechen- und Kommunikationsressourcen zu finden
50
Q

Was sind die Timing Requirements für die State Estimation?

A

Ein State Estimation Programm benötigt den Zeitpunkt der Beobachtung einer RT-Entity und den geplanten Zeitpunkt der Betätigung, um den Delay ausgleichen zu können

51
Q

Wovon hängt die Qualität der State Estimation ab?

A
  • Genauigkeit der Clock Synchronization
  • Größe der Latenz und Qualität der Latenz-Messung
  • Qualität des State Estimation Model
52
Q

Wozu kann die Latency Guarantee verwendet werden und wie wird sie erreicht?

A
  • Zusammensetzbarkeit einer verteilten time-triggered Architektur kann verbessert werden, wenn der Absender die Latenzzeit zwischen dem Punkt der Abtastung und dem Punkt der Übertragung garantiert
  • Empfänger kann diese bekannte Latenzzeit in seinem State Estimation Model korrigieren
  • Alternativ kann der Sender “zeitgesteuerte” Nachrichten senden, die das Intervall zwischen Beobachtung und Übertragung enthalten
53
Q

Was ist Permanence (Beständigkeit)?

A
  • Permanence ist eine Beziehung zwischen einer gegebenen Nachricht, die bei einem RT-Objekt angekommen ist, und allen Nachrichten, die in zeitlicher Reihenfolge vor dieser Nachricht an das Objekt gesendet werden
  • Die Nachricht wird permanent, sobald alle zuvor gesendeten Nachrichten bei dem Objekt angekommen sind
  • Inkonsistentes Verhalten, wenn Aktionen auf nicht permanente Nachrichten durchgeführt werden
54
Q

Wie kann man das maximale action delay in verteilten Echtzeitsystemen ohne globale Zeit berechnen?

A

d_max + Jitter = 2*d_max - d_min

55
Q

Wie lautet die Formel für den Jitter in verteilten Echtzeitsystemen ohne globale Zeit?

A

Jitter = d_max - d_min

56
Q

Wie kann man das maximale action delay in verteilten Echtzeitsystemen mit globaler Zeit berechnen?

A

d_max + 2g

57
Q

Wodurch wird die Reaktionsfähigkeit in distributed RT Systemen bestimmt?

A

In verteilten Echtzeitsystemen bestimmt die maximale Protokollausführungszeit und nicht die mittlere Protokollausführungszeit die Reaktionsfähigkeit

58
Q

Was sind Unterschiede zwischen Accuracy und Action Delay?

A
  • Action Delay < d_acc
  • Accuracy ist ein anwendungsspezifischer Parameter
  • Action Delay ist ein implementierungsspezifischer Parameter
  • Wenn die Bedingung nicht erfüllt ist, wird State Estimation gebraucht
59
Q

Was ist Idempotence?

A
  • Idempotence ist eine Beziehung zwischen einem Set aus Messages
  • Ein Set aus Messages ist idempotent, wenn die Wirkung des Empfangs mehrerer Nachrichten dieser Message die gleiche Wirkung haben, wie die Wirkung des Empfangs einer einzigen Nachricht
60
Q

Was ist Replica Determinism?

A
  • Replica Determinism ist eine gewünschte Beziehung zwischen replizierten RT-Objekten
  • Eine Menge replizierter RT-Objekte ist replica determinate, wenn alle Objekte dieser Menge denselben Zustand innerhalb eines bestimmten Intervalls der Echtzeit einnehmen
61
Q

Wofür wird Replica Determinism verwendet?

A
  • Konsistente verteilte Aktionen
  • Die Implementierung von Fault Tolerance bei aktiver Redundanz
62
Q

Warum brauchen wir Replica Determinism?

A
  • Verbesserung der Testbarkeit von Systemen -> Tests nur reproduzierbar, wenn die Replikate deterministisch sind
  • Erleichterung der Implementierung von Fault Tolerance durch aktive Replikation
  • Replica Determinism hilft Systeme verständlicher zu machen
63
Q

Wodurch kann Replica Determinism zerstört werden?

A
  • Inconsistent inputs
  • Inconsistent order
  • Non-deterministic program constructs
  • Explicit synchronization statements (Bsp. wait)
  • Uncontrolled access to global time and timeouts
  • Dynamic preemptive scheduling decisions
  • Consistenz comparison problem (Software diversity)
64
Q

Wann tritt ein consistent Comparison Problem auf?

A

Tritt immer dann auf, wenn eine reelle Größe in eine diskrete Darstellung umgewandelt wird und diese Darstellung als Eingabe für eine binäre Entscheidung dient

65
Q

Nennen sie Beispiele für das Consistent Comparison Problem.

A
  • Zeit
  • Sensor input
  • Verschiedene Softwareversionen, die auf reellen Zahlen in verschiedener Reihenfolge betrieben werden (unterschiedliche Trunkierung!)