Intelligente Dateisysteme

Post on 04-Feb-2016

43 views 0 download

description

Intelligente Dateisysteme. „Design“ von Dateien Referat: Florian Griese. Dateien sind ein Strom aus Bytes, aus denen nicht ersichtlich ist, auf welchem System sie entstanden sind - PowerPoint PPT Presentation

transcript

Intelligente Dateisysteme

„Design“ von Dateien

Referat: Florian Griese

Dateien sind ein Strom aus Bytes, aus denen nicht ersichtlich ist, auf welchem System sie

entstanden sind

000100010101010010010100101010101011110100000011111010100101110100100100010100010001010010010010001010010100101001101010

0

000100010101010010010100101010101011110100000011111010100101110100100100010100010001010010010010001010010100101001101010

0

Was passiert, wenn eine Datei in 1000 Jahren geöffnet werden soll?

PROBLEM:Die Daten können nicht interpretiert werden

Ausgangszustand

Physikalische Ebene ->

Wir haben eine Bitfolge, die auf einem Medium gespeichert ist

Logische Ebene ->

Eine Definition, wie diese Bits von einer Anwendungssoftware genutzt werden, basierend

auf dem Datentyp (z.B. ASCII)

Strategien „elektronischer Archivierung“

Emulation

EMULATION

Simulation eines älteren Systems, damit auch Daten dieses Systems mit neueren Computern und Betriebssystemen genutzt werden können

KapselungZusätzlich zu dem bewahrenden

Informationsobjekt werden auch die Software, mit der man die Daten visualisieren kann, sowie die

zugehörigen Metadaten gespeichert

Standardisierung

Es werden langzeitig stabile Formate, wie xml, TIFF oder pdf bevorzugt

Migration

„Übersiedlung“/“Einbindung“ von Informationen in eine neue Systemumgebung

Lösungsansatz:

SPO (self preserving object)

Es gibt zwei Zustände binärer Informationen

Transient →„Flüchtige Daten, die zeitlich begrenzt in den

Speicher geladen werden (gepuffert).

Persistent →„Nicht unkontrolliert veränderbare“ Daten werden

über einen langen Zeitraum (auch über einen Programmabbruch hinaus) bereit gehalten

SERIALISIEREN, serialization ->Transformation vom transienten in den

persistenten Zustand

DESERIALISIEREN, deserialization ->Transformation vom persistenten in den

transienten Zustand

Problem

Persistene Daten sagen nur wenig über das System aus, auf dem sie verarbeitet worden sind

Self preserving objects

sind mit Informationen angereichert, welche es möglich machen, das Objekt in Zukunft auf neuen Systemen und Umgebungen „lauffähig“ zu halten

Ziel

Es gilt nun, die Systeme welche mit solchen Informationen agieren, mit einer

Basisfunktionalität auszustatten, die es ermöglicht, das alle Datentypen mit einem

gewissen Kontext gespeichert werden können.

→ Traditionelle Daten bestehen aus einem bytestream

→ SPOs bestehen aus zwei bytestreams, einem traditionellem und einem zweiten, der relevante

Informationen zur „Konservierung“ enthält

Beispiel C++

Die Basisfunktion des I/O wird derart verändert, das erstellte Dateien mit einem minimalen Kontext

ausgestattet werden, ohne eine gesamte Anwendung ändern zu müssen - mit der

Gewissheit, das sich weiterhin beide Arten von Daten problemlos verarbeiten lassen

Änderung der stdio library

Die fopen Funktion wird derart verändert, dass bei jedem Öffnen nachgeschaut wird, ob ein Kontext

vorhanden ist

Die fclose Funktion wird derart erweitert, dass beim speichern automatisch ein Kontext erstellt

wird

Kompatibilität

Die fopen und fclose Funktionen werden so geändert, dass auch eine mit einer unveränderten Funktion geschriebene Datei mit der modifizierten

gelesen werden kann