 |
|
 |
Institut für Kommunikationsnetze und Rechnersysteme (IKR)
|
 |
Themenbeschreibung |
|
|
 |
 |
 |
|
 |
 |
 |
Bachelor-Arbeit / Forschungsarbeit Nr. 1072
(Zu vergeben) [pdf]
|
|
Implementierung eines Dateisystems in einer experimentellen Variante der Programmiersprache Go
|
|
|
Methoden
|
Themengebiete
|
|
Programmierung
Softwareentwurf
|
Dateisysteme
|
|
|
Beschreibung
|
|
|
|
|
|
|
Hintergrund
|
Am Institut wird derzeit eine experimentelle Variante der Programmiersprache Go mit dem Namen GoSUB entwickelt, um damit ein Betriebssystem für einen objektbasierten Prozessor zu realisieren. Dazu gehört ein sogenanntes Dateisystem, das es Anwendungsprogrammen ermöglicht, auf Dateien und Verzeichnisse auf einem Datenträger zuzugreifen und das von der tatsächlichen Darstellung der Daten auf dem Datenträger abstrahiert.
|
Aufgabenstellung
|
Der Einfachheit halber soll in dieser Arbeit anstelle eines konkreten Datenträgers eine RAM-Disk verwendet werden, die wie das Dateisystem selbst in GoSUB implementiert werden soll. Diese RAM-Disk soll mit einem vorgegebenen Inhalt initialisiert werden können und Funktionen zum Lesen und Schreiben von Blöcken einer konfigurierbaren Größe bereitstellen.
|
Anschließend soll das Dateisystem "FAT32" in GoSUB realisiert werden. Die Implementierung gliedert sich in folgende Schritte:
|
•
|
Implementierung von Lesezugriffen, wie das Auslesen von Dateien und Verzeichnissen.
|
•
|
Erweiterung um Schreibzugriffe, d. h. das Anlegen, Modifizieren und Löschen von Dateien und Verzeichnissen.
|
•
|
Ergänzung um eine Funktion zum Formatieren eines leeren Datenträgers.
|
•
|
Entwurf einer Software-Schnittstelle zur Bereitstellung der implementierten Funktionen in Anlehnung an entsprechende Bibliotheken für die Sprache Go.
|
Erworbene Kentnisse und Fähigkeiten
|
Sie verstehen, wie Dateisysteme den Speicherplatz auf einem Datenträger verwalten und hierarchische Verzeichnisstrukturen sowie Dateien darstellen. Sie erarbeiten sich Kenntnisse über den Entwurf von Software-Bibliotheken und erweitern Ihre Fähigkeiten im Bereich Software-Design. Dabei lernen Sie eine neue, moderne Programmiersprache kennen.
|
|
|
|
Voraussetzungen
|
|
|
Technische Informatik I
|
|
|
|
Kontakt
|
|
M.Sc. Timo Madeheim,
Raum 1.336 (ETI II),
Telefon 685-69012, [E-Mail]
Dipl.-Ing. Matthias Meyer,
Raum 1.334 (ETI II),
Telefon 685-67975, [E-Mail]
|
|
|
|
|
|
|
|