4.8 Aufgaben
257
der Zustand ist, der durch vollständiges Abarbeiten der Transaktion entsteht oder
aber der vorherige Zustand. Zudem muss der Zustand der Datenbank, der aus einer Transaktion resultiert, konsistent sein. Die Konsistenzanforderungen beinhalten
z.B., dass Ergebnisse von Leseanforderungen derselben Transaktion konsistent sind
(also keinen Zustand beschreiben, der niemals in der von der Datenbank modellierten
Umgebung existiert hat). Weiterhin soll für einen anderen Benutzer der Datenbank
kein Zwischenzustand, der aus einer partiellen Ausführung einer Transaktion entsteht, sichtbar sein (die Transaktionen müssen durchgeführt werden, als ob sie in
Isolation stattfinden würden). Schließlich müssen die Ergebnisse der Transaktionen
persistent sein. Diese Eigenschaft wird auch als Dauerhaftigkeit der Transaktionen
bezeichnet. Zusammengenommen bilden die vier fett gedruckten Eigenschaften die
ACID-Eigenschafen (siehe das Buch von Krishna and Shin [311], Kapitel 5).
Einige Datenbanken erfordern weiche Echtzeitbedingungen. So sind zum Beispiel die Zeitanforderungen für Flugreservierungssysteme weich. Im Gegensatz dazu
kann es auch harte Beschränkungen geben. So muss beispielsweise die automatische
Erkennung von Fußgängern in automobilen Anwendungen und die Zielerkennung
in militärischen Anwendungen harten Echtzeitbedingungen genügen. Die obigen
Anforderungen erschweren das Einhalten von Echtzeitbedingungen. Beispielsweise könnten Transaktionen mehrfach abgebrochen worden sein, bevor sie endgültig
committed werden. Bei allen Datenbanken, die virtuellen Speicher und Festplatten
zu Grunde legen, sind die Zugriffszeiten auf die Platten kaum vorhersagbar. Mögliche Lösungen liegen hier bei Hauptspeicherdatenbanken und der Verwendung von
Flash-Speichern. Eingebettete Datenbanken sind oft klein genug, um solche Ansätze
zu realisieren. In anderen Fällen kann es möglich sein, die ACID-Anforderungen zu
lockern. Weitere Informationen hierzu finden sich im Buch von Krishna und Shin
sowie auch bei Lam und Kuo [320].
4.8 Aufgaben
Die folgenden Aufgaben sollten entweder zu Hause oder während einer Anwesenheitsphase nach dem flipped classroom-Konzept [376] bearbeitet werden:
4.1: Mit welchen Methoden kann man ein Betriebssystem an die Anforderungen
in einem konkreten Produkt so anpassen, dass alle Ressourcen möglichst effizient
genutzt werden?
4.2: Welche Anforderungen muss ein Echtzeitbetriebssystem erfüllen? Wie unterscheiden sie sich von den Anforderungen an ein Standard-Betriebssystem? Welche
Eigenschaften eines Standard-Betriebssystems wie Windows oder Linux könnten
vielleicht in einem Echtzeitbetriebssystem fehlen?
4.3: Wie viele Sekunden wurden in der Silvesternacht insgesamt hinzugefügt, um
den Unterschied zwischen UTC und TAI seit 1958 zu kompensieren? Suchen Sie im
Internet nach einer Lösung für diese Aufgabe!
257
der Zustand ist, der durch vollständiges Abarbeiten der Transaktion entsteht oder
aber der vorherige Zustand. Zudem muss der Zustand der Datenbank, der aus einer Transaktion resultiert, konsistent sein. Die Konsistenzanforderungen beinhalten
z.B., dass Ergebnisse von Leseanforderungen derselben Transaktion konsistent sind
(also keinen Zustand beschreiben, der niemals in der von der Datenbank modellierten
Umgebung existiert hat). Weiterhin soll für einen anderen Benutzer der Datenbank
kein Zwischenzustand, der aus einer partiellen Ausführung einer Transaktion entsteht, sichtbar sein (die Transaktionen müssen durchgeführt werden, als ob sie in
Isolation stattfinden würden). Schließlich müssen die Ergebnisse der Transaktionen
persistent sein. Diese Eigenschaft wird auch als Dauerhaftigkeit der Transaktionen
bezeichnet. Zusammengenommen bilden die vier fett gedruckten Eigenschaften die
ACID-Eigenschafen (siehe das Buch von Krishna and Shin [311], Kapitel 5).
Einige Datenbanken erfordern weiche Echtzeitbedingungen. So sind zum Beispiel die Zeitanforderungen für Flugreservierungssysteme weich. Im Gegensatz dazu
kann es auch harte Beschränkungen geben. So muss beispielsweise die automatische
Erkennung von Fußgängern in automobilen Anwendungen und die Zielerkennung
in militärischen Anwendungen harten Echtzeitbedingungen genügen. Die obigen
Anforderungen erschweren das Einhalten von Echtzeitbedingungen. Beispielsweise könnten Transaktionen mehrfach abgebrochen worden sein, bevor sie endgültig
committed werden. Bei allen Datenbanken, die virtuellen Speicher und Festplatten
zu Grunde legen, sind die Zugriffszeiten auf die Platten kaum vorhersagbar. Mögliche Lösungen liegen hier bei Hauptspeicherdatenbanken und der Verwendung von
Flash-Speichern. Eingebettete Datenbanken sind oft klein genug, um solche Ansätze
zu realisieren. In anderen Fällen kann es möglich sein, die ACID-Anforderungen zu
lockern. Weitere Informationen hierzu finden sich im Buch von Krishna und Shin
sowie auch bei Lam und Kuo [320].
4.8 Aufgaben
Die folgenden Aufgaben sollten entweder zu Hause oder während einer Anwesenheitsphase nach dem flipped classroom-Konzept [376] bearbeitet werden:
4.1: Mit welchen Methoden kann man ein Betriebssystem an die Anforderungen
in einem konkreten Produkt so anpassen, dass alle Ressourcen möglichst effizient
genutzt werden?
4.2: Welche Anforderungen muss ein Echtzeitbetriebssystem erfüllen? Wie unterscheiden sie sich von den Anforderungen an ein Standard-Betriebssystem? Welche
Eigenschaften eines Standard-Betriebssystems wie Windows oder Linux könnten
vielleicht in einem Echtzeitbetriebssystem fehlen?
4.3: Wie viele Sekunden wurden in der Silvesternacht insgesamt hinzugefügt, um
den Unterschied zwischen UTC und TAI seit 1958 zu kompensieren? Suchen Sie im
Internet nach einer Lösung für diese Aufgabe!
