1729635

Der Unterbau von OS X: HFS+

20.03.2013 | 13:59 Uhr |

Die Hauptaufgabe eines Betriebssystems ist das Bereitstellen und Verwalten von Daten. Auch wenn der Benutzer meist nur sehr wenig von den Mechanismen dahinter mitbekommt, so ist es dennoch für fortgeschrittene OS-X-Anwender essentiell, wie im Hintergrund gearbeitet wird. Nicht nur im Fehlerfall ist dieses Hintergrundwissen von Vorteil.

Seit Mac OS 8.1 verwendet Apple das sogenannte HFS+-Dateisystem (bis dahin war es „HFS“). Der Vorgänger war unter anderem in der Dateigröße und Dateibenennung beschränkt. „HFS“ steht für „Hierarchical File System“ (auf Deutsch: Hierarchisches Dateisystem). Dies bedeutet nichts anderes, als dass die Dateistruktur baumartig angeordnet ist. Angefangen mit einer Wurzel geht es in immer tiefer verschachtelte Verzweigungen. (Beispiel: /Programme/Safari/...). Hinter diesem einfachen Namen verbergen sich aber durchdachte Mechanismen und Funktionen.

Case Sensitivity: Groß- und Kleinbuchstaben beachten

Über Unix-Betriebssysteme wird gerne gesagt, dass diese zwischen Groß- und Kleinbuchstaben unterscheiden. Dies ist nicht ganz richtig. Wenn Sie eine Datei erstellen und diese „Test“ nennen, so können Sie unter OS X keine weitere mit dem Titel „tEsT“ im gleichen Verzeichnis anlegen. HFS+ hat diesen Mechanismus zwar implementiert, Apple hat ihn aber standardmäßig abgeschaltet (für iOS ist der Mechanismus aktiviert).

Damit der Benutzer trotzdem sieht, welchen Buchstaben er groß und welchen er klein eingegeben hat, gibt es die Funktion „case-preserving“. Das bedeutet: Groß- und Kleinschreibung anzeigend. So weiß OS X, welcher Buchstabe vom Benutzer wie eingegeben wurde.

Wenn Dateinamen bereits vorhanden sind, erscheint ein Hinweisfenster. Auch wenn Sie einen Buchstaben groß schreiben, für OS X zählt nur ob die Reihenfolge die gleiche ist.
Vergrößern Wenn Dateinamen bereits vorhanden sind, erscheint ein Hinweisfenster. Auch wenn Sie einen Buchstaben groß schreiben, für OS X zählt nur ob die Reihenfolge die gleiche ist.

Journaling

Öffnen Sie das „Festplattendienstprogramm“ (/Programme/Dienstprogramme/ Festplattendienstprogramm) und klicken Sie – wie im Bildschirmfoto gezeigt – auf die Systemfestplatte in der linke Leiste:

Die Systempartition wird standardmäßig mit der Zusatzfunktion "Journaled" erstellt. Dies bedeutet dass OS X eine Partition für Protokolleinträge anlegt damit Transaktionen im Notfall wieder rückgängig gemacht werden können.
Vergrößern Die Systempartition wird standardmäßig mit der Zusatzfunktion "Journaled" erstellt. Dies bedeutet dass OS X eine Partition für Protokolleinträge anlegt damit Transaktionen im Notfall wieder rückgängig gemacht werden können.

Das „Journaled“ in Klammern beschreibt den eingeschalteten Mechanismus „Journaling“ .

OS X erstellt beim Partitionieren einen versteckten Bereich, in dem es alle Dateitransaktionen protokolliert. Verschieben Sie also eine Datei von A nach B, erstellt OS X einen Eintrag für diese Aktion.

Der Sinn dahinter: Stürzt der Mac bei einem Vorgang ab oder ein anderes Programm unterbricht diese Aktion, sorgt dieser Mechanismus dafür, dass die getätigten Änderungen rückgängig gemacht werden. So wird einem „korrupten“ Dateisystem vorgebeugt. Unfertige Dateien lassen sich auf diese Weise sofort wieder löschen. Apple verwendet Journaling übrigens erstmals in der Server-Variante von Mac OS X 10.2.2; für Nicht-Server-Systeme war die Journaling-Option mit Mac OS X 10.3 Panther verfügbar.

Block-Speicherweise

Ein Rechner verwendet Festplatten zum Speichern von Dateien. Diese Speicherbereiche sind am Anfang leer und können nach und nach gefüllt werden. Löschen Sie aber beispielsweise eine Anwendung, entsteht ein leerer Bereich. Eine Herangehensweise wäre jetzt: „Teile beim erneuten Speichern die Dateien so auf, dass alle leeren Bereiche sofort wieder gefüllt werden, und teile die Dateien in viele kleine Stücke auf.“ Das hat Nachteile bei der Geschwindigkeit, denn der Schreib/Lesekopf der Festplatte muss die Daten bei jedem Dateizugriff umständlich zusammensuchen, das kostet Zeit.

Um das zu vermeiden verwendet Apple die „Block-Speicherweise“. Damit lassen sich Dateien möglichst zusammenhängend speichern. Diese Vorgehensweise läuft also jeden freien Bereich ab und prüft, wo genug Platz für die komplette Datei ist. Erst wenn kein Bereich groß genug ist, wird die Datei aufgeteilt (fragmentiert).

Diese Fragmentierung bringt uns zur nächsten Eigenschaft: Die automatische Defragmentierung. Anders als bei Windows, wo die Defragmentierung von Hand angestoßen werden muss, übernimmt OS X das automatisch.

So kommt es, dass ein Mac „besser“ funktioniert, je länger er betrieben wird. Defragmentierungs-Anwendungen sind also völlig kontraproduktiv. Wie „HFS+“ dies genau bewerkstelligt, kann in einschlägiger Literatur nachgelesen werden.

Mit „HFS+“ wurde zudem die Grenze für die Dateigröße quasi aufgehoben. Eine Datei kann so groß werden, wie freier Speicherplatz auf dem logischen Laufwerk vorhanden ist .

0 Kommentare zu diesem Artikel
1729635