PI5514 FUSE: Dateisysteme im Detail
Modulverantwortliche
- Prof. Dr. Hellwig Geisse
Lehrende
- Prof. Dr. Hellwig Geisse
Notwendige Voraussetzungen zur Teilnahme
Keine
Empfohlene Voraussetzungen zur Teilnahme
Gute Kenntnisse in Betriebssystemen und systemnaher Programmierung
Kurzbeschreibung
In einem Projekt wird ein einfaches Inode-Dateisystem als Backend für FUSE (File System in User Space) implementiert. Damit wird es möglich, unter Linux auf das EOS32-Dateisystem transparent zuzugreifen. Die Studierenden arbeiten in Gruppen an verschiedenen Teilen des gemeinsamen Projekts.
Inhalte
- Konzept und Funktionsweise von FUSE
- Konzept und Funktionsweise des EOS32-Dateisystems
- Analyse und Abbildung der bereitzustellenden Funktionen
- Implementierung des EOS32-Dateisystems
- Buffer Cache
- Inode-Verwaltung
- Block-Verwaltung
- Directories
- Abbildung Pfad zu Inode
- File I/O
- Trennung der Datentypen und Strukturen von Host und Target
- Test des Backends, Logging
- Dateisystem-Test und -Reparatur
Qualifikations- und Lernziele
Fachkompetenzen
- Die Studierenden können das Ziel und die Funktionsweise von FUSE beschreiben.
- Sie sind in der Lage, die Funktionen eines FUSE-Dateisystems auf ein gegebenes Dateisystem abzubilden und diese zu implementieren.
Methodenkompetenzen (fachlich & überfachlich)
- Die Studierenden sind in der Lage, den Aufwand für die Planung und Implementierung eines FUSE-Dateisystems abzuschätzen.
Sozialkompetenzen
- Die Studierenden sind in der Lage, eigenverantwortlich Arbeiten im Team durchzuführen.
- Sie können Aufgaben in Gruppenarbeit gemeinsam konstruktiv lösen und sich gegenseitig unterstützen.
Selbstkompetenzen
- Die Studierenden können ihren Lernfortschritt reflektieren und ihr Lernverhalten anpassen.
ECTS-Leistungspunkte (CrP)
- 6 CrP
- Arbeitsaufwand 180 Std.
- Präsenzzeit 60 Std.
- Selbststudium 120 Std.
Lehr- und Lernformen
- 4 SWS
- Seminaristischer Unterricht 2SWS
- Praktikum 2SWS
Studiensemester
- Informatik (M.Sc. 2022)
Dauer
1 Semester
Häufigkeit des Angebots
Nach Bedarf
Unterrichtssprache
Deutsch
Bonuspunkte
Nein
Bonuspunkte werden gemäß § 9 (4) der Allgemeinen Bestimmungen vergeben. Art und Weise der Zusatzleistungen wird den Studierenden zu Veranstaltungsbeginn rechtzeitig und in geeigneter Art und Weise mitgeteilt.
Prüfungsleistungen
Prüfungsvorleistung:
Keine
Prüfungsleistung:
Entwicklung in der Informatik
Benotung
Die Bewertung des Moduls erfolgt gemäß §§ 9, ggf. 12 (Teilleistungen), ggf. 18 (Arbeiten, Kolloquien) der Allgemeinen Bestimmungen (Teil I der Prüfungsordnung).
Verwendbarkeit
Gemäß § 5 der Allgemeinen Bestimmungen (Teil I der Prüfungsordnung) Verwendbarkeit in allen Masterstudiengänge der THM möglich.
Literatur, Medien
- FUSE auf GitHub: https://github.com/libfuse/libfuse
- Bach, M: The Design of the UNIX Operating System. Pearson.
- Lions, J.: Commentary on UNIX 6th Edition. https://bitsavers.org/pdf/att/unix/6th_Edition
- Projekt „EOS32 on ECO32” auf GitHub: https://github.com/hgeisse/eos32-on-eco32
- Projekt „ECO32” auf GitHub: https://github.com/hgeisse/eco32
Rechtliche Hinweise
- Diese Informationen geben den in den Online-Diensten für Studierende erfassten Datenbestand wieder.
- Die rechtskräftigen und damit verbindlichen Fassungen der Modulhandbücher finden Sie im Amtlichen Mitteilungsblatt der THM (AMB).
- Alle gültigen Prüfungsbestimmungen für die THM-Studiengänge können Sie außerdem in komfortabler Leseversion über den Downloadbereich auf der Homepage des Prüfungsamts einsehen.