PFS | |
---|---|
Hersteller | Michiel Pelt |
Vollständige Bezeichnung | Professional File System |
Erstveröffentlichung | 1995 (AmigaOS) |
Partitionskennung | 'PFS\1', 'muAF', 'AFS\1' (Amiga RDB) |
Maximalwerte | |
Länge des Dateinamens | 107 Zeichen |
Größe des Dateisystems | 137 GiB |
Erlaubte Zeichen im Dateinamen | Alles außer Null, '/' und ':' |
Eigenschaften | |
Datumsbereich | 1. Januar 1978 – 2157 |
Zeitstempel-Auflösung | 1/50s |
Dateirechte-Verwaltung | Amiga Permissions, Multiuser Permissions |
Transparente Komprimierung | Nein |
Transparente Verschlüsselung | Nein |
Unterstützende Betriebssysteme | AmigaOS, MorphOS, AROS |
Das Professional File System (kurz PFS) war ein zunächst kommerzielles Dateisystem für AmigaOS[1]. PFS fand besonders in der professionellen Amiga-Community Verwendung, da es eine zuverlässige Lösung für Benutzer war, die mit großen und kritischen Datenmengen arbeiteten. Es wurde häufig in Kombination mit Anwendungen wie Video- und Audio-Editing-Software verwendet, die hohe Anforderungen an die Dateisystemleistung stellten.
Das Professional File System (PFS) wurde 1995 von dem niederländischen Entwickler Michiel Pelt für AmigaOS veröffentlicht. Es war kompatibel zum Ami-Filesafe Dateisystem (AFS), einem weiteren kommerziellen Dateisystem für AmigaOS, das entwickelt wurde, um die Zuverlässigkeit und Datenintegrität zu verbessern. AFS führte den Mechanismus der Transaktionssicherheit bei der Nutzung von Festplatten ein[2].
PFS wurde entwickelt, um die Leistung und Zuverlässigkeit von Amiga-Computern zu verbessern, insbesondere in Bezug auf die Handhabung größerer Festplatten und höherer Dateisystemstabilität. Es unterstützte zusätzliche Funktionen wie Mehrbenutzerfähigkeit und Papierkorb-Funktionen, was es zu einer fortschrittlichen Lösung im Vergleich zu den Standard-Dateisystemen von AmigaOS machte[3][4].
Nach Veröffentlichung von PFS wurde eine verbesserte Version namens PFS3 eingeführt, mit der die Performance nochmals erhöht wurde. Neben der Handhabung von größeren Dateisystemen wurden in Bezug auf die Fragmentierung und das Metadaten-Management Optimierungen vorgenommen. Dies führte zu einer stabileren Version des Dateisystems, die auf AmigaOS 3.x und später auch auf Amiga-Emulatoren verwendet werden konnte.
Nachdem der Quelltext von PFS im Aminet unter der 4-Klausel-BSD-Lizenz freigegeben wurde[5], übernahm Toni Wilen dessen aktive Weiterentwicklung und veröffentlichte diese seitdem als PFS3 All-In-One (AIO). Sie brachte Unterstützung für moderne Festplatten, verbesserte SCSI-Kompatibilität sowie zahlreiche Fehlerkorrekturen und bietet eine hohe Kompatibilität mit verschiedenen AmigaOS-Versionen (einschließlich 1.x bis 3.x)[6]. Das Projekt PFS3 AIO sorgt dafür, dass die Amiga-Plattform auch im Bereich der Datenspeicherung weiterhin konkurrenzfähig bleibt.
PFS ist in zwei Hauptbereiche unterteilt:
Die Metadaten werden in einer Baumstruktur organisiert und beschreiben den Speicherort der Datenblöcke. Diese Struktur ermöglicht eine kompakte Darstellung der Metadaten, sodass der Datenbereich ausschließlich die Nutzdaten enthält.
Bei einer Aktualisierung der Metadaten kopiert das System den zu ändernden Metadatenblock in einen neu zugewiesenen Block im Metadatenbereich und nimmt dort die Änderungen vor. Anschließend werden die Verweise in den übergeordneten Metadatenblöcken rekursiv aktualisiert. Sollte auch der Rootblock betroffen sein, führt dies zu einem atomaren Metadaten-Update. Dies ist eine Schlüsseltechnologie von PFS, die das Dateisystem stabiler und sicherer macht. Es schützt vor Datenkorruption und sorgt dafür, dass Änderungen an den Metadaten zuverlässig und konsistent durchgeführt werden – selbst bei Systemabstürzen oder anderen unvorhergesehenen Ereignissen.
PFS minimiert die Fragmentierung der Dateien, wodurch eine hohe Lese- und Schreibgeschwindigkeit gewährleistet wird. Der Fragmentierungsgrad bleibt vergleichsweise gering. Ein Defragmentierungstool ist ebenfalls verfügbar und kann auf einem Online-Dateisystem angewendet werden.[4]
PFS war das erste Dateisystem, das das Konzept des „Papierkorbs“ nativ auf Dateisystemebene integrierte. Gelöschte Dateien werden in einem versteckten Verzeichnis auf der Festplatte gespeichert, wodurch ein einfaches Wiederherstellen von Dateien möglich ist.[4]
PFS Version 5.3 wurde in den Programmiersprachen C und einem kleinen Teil Assembler entwickelt. Diese Kombination aus Hochsprachen- und Maschinencode sorgt für eine hohe Leistung und Effizienz.