Skip to main content.

Navigation:

2. theoretisches Aufgabenblatt

Grundlagen

  1. Geben Sie 5 verschiedene Pfadnamen für die Datei /etc/passwd an (Hinweis: Denken Sie an die Katalogeinträge '.' und '..'). (2 Pkt.)
  2. Ein einfaches Betriebssystem unterstützt nur ein Verzeichnis, erlaubt es aber, das beliebig viele Dateien beliebig lange Dateinamen haben. Kann etwas ähnliches wie ein hierarchisches Dateisystem simuliert werden, wenn ja wie? (3 Pkt.)
  3. Einigen Betriebssysteme stellen den Systemaufruf rename(1) zur Verfügung, um einer Datei einen neuen Namen geben zu können. Gibt es überhaupt einen Unterschied zwischen diesem Aufruf und dem Kopieren der Datei und der anschließenden Löschung der alten Datei? (3 Pkt.)

Aufbau Dateisystem

  1. Wie viele Plattenzugriffe werden für den Pfad /games/zapper in Unix benötigt? (2 Pkt.)
  2. Warum ist der Name einer Datei nicht im Inode verzeichnet? (2 Pkt.)
  3. In den frühen Unix-Systemen begannen ausführbare Dateien (a.out-Dateien) mit einer sehr speziellen Zahl, die nicht zufällig gewählt war. Diesen Dateien ging ein Header voran, gefolgt von den Text- und Datensegmenten. Was denken Sie, warum eine spezielle magische Nummer für die ausführbaren Dateien verwendet wurde, wohingegen andere Dateitypen eine mehr oder weniger zufällige magische Nummer als erstes Wort enthielten? (4 Pkt.)
  4. Warum können Hardlinks nur in das lokale Dateisystem, symbolische Links jedoch auch in andere Dateisysteme verweisen? (2 Pkt.)
  5. Was ist der Unterschied zwischen dem Referenzzähler und dem Linkzähler einer Inode und warum werden beide benötigt? (2 Pkt.)
  6. Skiziere einen Algorithmus, der den absoluten Pfadnamen zum aktuellem Verzeichnis zusammenstellt (pwd). (6 Pkt.)
  7. Skiziere einen Algorithmus, den der Systemaufruf mkdir(2) ausführen könnte. (6 Pkt.)

Partizionierung

  1. Der freie Speicher einer Festplatte kann mittels einer Freiliste oder eines Bitmaps verwaltet werden. Geben Sie für eine Platte mit B Blöcken, von denen F frei sind, die Bedingung an, unter der die Freiliste weniger Speicher verbraucht als die Bitmap (Plattenadressen benötigen D Bit). Drücken Sie Ihre Antwort in Prozent des freien Platzes aus, für den Falll, dass D den Wert 16 Bits hat. (4 Pkt.)
  2. Nach der Formatierung sieht die Bitmap zur Verwaltung einer Platte wie folgt aus: 1000 0000 0000 0000 (der erste Block wird durch das Wurzelverzeichnis belegt). Das Filesystem beginnt bei der Suche nach freien Blöcken immer mit der niedrigsten Blocknummer. Folglich sieht die Bitmap nach dem Schreiben eine Datei A, die sechs Blöcke belegt, so aus: 1111 1110 0000 0000. Stellen Sie die Bitmap nach jeder der folgenden weiteren Aktionen dar. (2 Pkt.)
    • Datei B (5 Blöcke) wird geschrieben
    • Datei A wird gelöscht
    • Datei C (8 Blöcke) wird geschrieben
    • Datei B wird gelöscht
  3. Eine Möglichkeit, zusammenhängende Belegung ohne Lücken verwenden zu können, ist, die Platte jedes Mal aufzuräumen, wenn eine Datei entfernt wird. Da alle Dateien zusammenhänged sind, benötigt das Kopieren einer solchen einen Seek und eine rotationsbedingte Wartezeit, um die Datei lesen zu können. Dem folgt der Transfer mit voller Geschwindigkeit. Das Schreiben der Datei verlangt dieselbe Arbeit.
    Angenommen, die Zeit für den Seek sei 5ms, die rotationsbedingte Wartezeit 4ms, die Transferrate betrage 8MB/s und die durchschnittliche Dateigröße sei 8KB. Wie lange würde es dann dauern, eine Datei in den Speicher einzulesen und sie dann an anderer Position wieder auf die Platte zu schreiben?
    Wie lange würde es dauern die Hälfte einer 16GB-Festplatte aufzuräumen? (4 Pkt.)
  4. Ein Dateisystem benutzt Plattenblöcke der Größe 2KB. Die mittlere Dateigröße sei 1KB. Wieviel Plattenplatzes würde verschwendet, wenn alle Dateien exakt 1KB groß währen. Würde ein reales Dateisystem meher oder weniger Platz verschwenden (Erläutern Sie)? (4 Pkt.)
  5. Die FAT-16-Tabelle unter MS-DOS hat 64K Einträge. Nehmen Sie an, dass eines der Bits anderweitig verwendet worden wäre und die Tabelle stattdessen exakt 32 768 Einträge enthalten würde. Wie groß könnte die größte MS-DOS-Datei ohne Änderungen unter diesen Umständen sein? (4 Pkt.)