QNX veröffentlicht Quellcode seiner Dateisysteme

QNX hat im Zuge der schrittweisen Offenlegung seines Quellcodes die Sourcen seiner Dateisysteme veröffentlicht. Dateisysteme können bei QNX während des Betriebs geladen und gewechselt werden, da sie als Anwendung außerhalb des Kernels laufen.

Die QNX-Dateisysteme bieten eine Standard-POSIX-Schnittstelle für diverse Speichergeräte wie Flash-Speicher, IDE-, SerialATA- und SCSI-Festplatten, USB-Sticks, optische CD- und DVD-Laufwerke sowie RAM-Disks. Zu den unterstützten Formaten zählen FAT für Windows und EXT2 für Linux-Partitionen sowie NFS/CIFS für den Zugriff auf Netzwerkdateien. Mit der Veröffentlichung des Quellcodes erhalten Embedded-Entwickler Zugriff auf die neuesten QNX-Code-Updates, Bugfixes und Produktentwicklungen.

Zu den Dateisystemen gehört unter anderem das »Power-Safe File System«, das für Festplattenlaufwerke mit hoher Kapazität entwickelt wurde. Es verwendet eine Copy-on-Write-Technik, mit der sich Datenverluste und aufwendige Prüfungen der Datenintegrität vermeiden lassen, wie sie bei einem plötzlichen Strom- oder Systemausfall auftreten. Das Ergebnis sind schnellere Boot-Zeiten und eine höhere Systemverfügbarkeit.

Das »Embedded Transaction File System (ETFS)« wurde primär für NAND-Flash entwickelt und kann unerwartete Systemausfälle ohne Datenverluste überstehen. Es unterstützt mit »Wear-Leveling« die gleichmäßige Auslastung der Flash-Speicherzellen mit Schreibzugriffen, CRC- und ECC-Fehlerkorrektur, Read Degradation Monitoring und die automatische Defragmentierung.

Weitere Dateisysteme, deren Quellcode QNX veröffentlicht hat, sind das Flash-File-System (FFS3) für NOR-Flash, das
Network-File-System (NFS) v2 und v3, das FAT-Dateisystem für Festplatten, UDF für CDs und DVDs sowie das RAM-File-System. Der Package Manager ist ein virtuelles Dateisystem, das eine individuelle Ansicht auf Dateien und Verzeichnisse eines Clients bietet. Dies ist besonders in einer Netzwerkumgebung nützlich, in der ein zentraler Server die einzelnen Dateipakete für jeden Client vorhält.

Im Gegensatz zu herkömmlichen Dateisystemen laufen QNX-Dateisysteme außerhalb des Kernels als speichergeschützte Applikationen. Anwender können damit ihre Dateisysteme im Betrieb und ohne Reboot starten, anhalten oder aktualisieren.

Über das QNX-Entwicklerportal Foundry 27 können Mitglieder der QNX-Community den Quellcode der QNX-Dateisysteme herunterladen. Weitere quelloffene QNX-Produkte sind der QNX-Neutrino-Microkernel, QNX-Adaptive-Partitioning, die QNX-Networking-Stacks und Board Support Packages für Embedded-Hardware. Der Zugang zum QNX-Quellcode ist kostenlos. Nach wie vor kostenpflichtig ist jedoch der kommerzielle Einsatz der QNX-Momentics-Entwicklungsumgebung sowie der Einsatz von QNX-Neutrino-Runtime-Komponenten in kommerziell vermarkteten Systemen. Nichtkommerzielle Entwickler, Hochschulangehörige und qualifizierte Partner können die QNX-Entwicklungstools und Runtime-Produkte jedoch gebührenfrei nutzen.