24.08.2013 Aufrufe

Download - FESG - Technische Universität München

Download - FESG - Technische Universität München

Download - FESG - Technische Universität München

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

4.2 THEORETISCHE GRUNDLAGEN 87<br />

Der Server ist im Grunde genommen eine Verlängerung des Client-Stacks über<br />

ein Netzwerk hinweg. Im CFT sitzt deshalb hinter der aktivierenden Schnittstelle<br />

direkt die Realisierung des Dateisystemzugangs. Die Anwendungsschicht wird somit<br />

nicht lokal durch einen Nutzer bedient, sondern über das Netzwerk aktiviert.<br />

Sie realisiert den Zugang auf ein lokales Dateisystem. Ein realer Anwender beim<br />

Server initiiert nur den Start des Servers.<br />

Somit ergibt sich eine relativ starre Konstellation. Ein flexibles Design muss<br />

deshalb dafür sorgen, dass einzelne Realisierungen flexibel ausgetauscht und kombiniert<br />

werden können. Ein Client z.B. soll auch die Möglichkeit haben, zu einem<br />

Zeitpunkt parallel mit mehreren Servern verbunden zu sein. Dadurch müssen Dateien<br />

nicht erst komplett in das lokale Verzeichnis kopiert werden, bevor man sie<br />

auf einen weiteren Server schreiben kann, sondern können in einem Arbeitsschritt<br />

von einem Server zu einem anderen übertragen werden. Ein Server wiederum soll<br />

z.B. so flexibel sein, dass er nicht nur auf lokale Dateisysteme abbildet, sondern<br />

auf entfernte weitervermittelt oder eine andere Art der Datenablage anschließt.<br />

An dieser Stelle kommt als Grundgedanke das „Tier“-Konzept bei ODBC ins Grundüberlegung ist ein Multi-<br />

Tier-Konzept<br />

Spiel, welches verschiedene Treiber unter einem einheitlichen Schnittstellenzugangspunkt<br />

zur Verfügung stellt, egal ob man lokal zugreift, die Verbindung zu<br />

einem Server hat oder einen clientseitigen Serververtreter anspricht. Eine Verallgemeinerung<br />

eines solchen Mehr-Klassen-Konzepts und der resultierenden Kombinierbarkeit<br />

liefert die zusätzliche Flexibilität. Deshalb ist im erweiterten Softwaredesign<br />

die Umsetzung eines „Multi-Tier-Konzepts“ durchzuführen.<br />

Diese Erweiterung fordert damit natürlich eine generelle Umstrukturierung im<br />

Client. Er kann nun nämlich auf einen „Mehr-Klassen-Verteiler“ wieder schichtenweise<br />

seine Mehrwertdienste aufbauen, die ab dann die neue Client-Logik bilden.<br />

Zusätzlich sollte der Interpretermechanismus für Befehle so flexibel sein, auch automatische<br />

Skripte in linearer Form zu verwerten, was im Design einen zweiten<br />

Zugangspunkt im Nutzerinterface bildet.<br />

Zusammengefasst bilden diese Grundgedanken die Grundlage für ein flexibles<br />

und kompaktes Design einer erweiterten Version des CORBA File Transfers.<br />

4.2.2 Die Handhabung kritischer Abschnitte zur Kontrolle konkurrierender<br />

Zugriffe<br />

Ein generelles, weiteres Problem im bisherigen CFT ist, dass es keine Kontrolle Management von kritischen<br />

darüber gibt, welcher Nutzer auf welche Dateien gleichzeitig zugreift. Wie in allen<br />

Systemen, die mit für mehrere Nutzer gemeinsamen Ressourcen (hier sind es die<br />

Dateien) arbeiten, treten aber auch beim verteilten Dateizugang kritische Abschnitte<br />

auf. Diese gilt es zu entkoppeln, um die Datenintegrität zu wahren.<br />

Begriffsdefinition DEF4.2 „Kritischer Abschnitt“ in Anlehnung an [SING94] 3 :<br />

Ein kritischer Abschnitt (Critical Section) ist ein Codesegment eines Prozesses, welches<br />

eine mit anderen Prozessen geteilte Ressource benutzt, die zu einem Zeitpunkt nur von genau<br />

einem Prozess verwendet werden darf.<br />

Abschnitten bei konkurrierenden<br />

Zugriffen auf gemeinsame<br />

Ressourcen

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!