Zur Diskussion in der Mailingliste der Linux-Kernel-Entwickler wurden Patches veröffentlicht, die ein Dateisystem BeamFS implementieren, welches Reed-Solomon-Codierung verwendet, um beschĂ€digte Daten vor Ort in Konfigurationen mit einem einzigen SpeichergerĂ€t zu erkennen und wiederherzustellen. Die Hauptanwendungsbereiche von BeamFS sind Bordcomputer von Satelliten, GerĂ€te in Strahlentherapie-RĂ€umen und andere Systeme, die unter erhöhten Strahlungsbedingungen arbeiten, bei denen die RĂŒckgabe von verzerrten Daten kritischer ist als die Unmöglichkeit, Informationen zu lesen.
StandardmĂ€Ăig kann BeamFS bis zu 8 verlorene Bytes in jedem 255-Byte-Bereich mit einem Overhead von 7 % wiederherstellen (288 Byte Wiederherstellungscodes fĂŒr jeweils 4096 Byte gespeicherte Daten). Fehlerkorrekturcodes werden nicht nur fĂŒr Daten, sondern auch fĂŒr Verwaltungsinformationen im Superblock, Inode, Verzeichnisindizes und Bitkarten angewendet. Die IntegritĂ€tsprĂŒfung und der Versuch, fehlende Daten wiederherzustellen, erfolgen bei jeder Leseoperation. Kann die Korrektheit der Informationen nicht gewĂ€hrleistet werden, wird die Operation mit dem Fehler "-EIO" abgebrochen, was eine stille RĂŒckgabe beschĂ€digter Daten ausschlieĂt.
DurchgefĂŒhrte Experimente zeigten, dass bei der Bestrahlung der i.MX 8M Plus-Platine mit Linux und dem Dateisystem ext4 mit Protonen mit einer Energie von 20 bis 58 MeV, 90 % aller AusfĂ€lle auf der Ebene des Dateisystems und der SpeichergerĂ€tetreiber auftraten. AuĂerdem wurde eine Simulation einzelner Bitfehler beim Lesen von einem Medium durchgefĂŒhrt: BeamFS und Btrfs erkannten erfolgreich die DatenbeschĂ€digung und gaben immer einen Fehler zurĂŒck, wĂ€hrend ext4 und ext3 stillschweigend verzerrte Daten zurĂŒckgaben.
BeamFS gewĂ€hrleistet die IntegritĂ€t und Wiederherstellung nur in der Phase vom Lesen vom physischen SpeichergerĂ€t bis zur Ăbertragung an den Seiten-Cache im RAM. Die IntegritĂ€t der Speicherung im RAM kann durch Speichermodule mit Fehlerkorrekturen aufrechterhalten werden.
Zu den EinschrĂ€nkungen von BeamFS gehört die fehlende UnterstĂŒtzung fĂŒr Journaling und den Copy-on-Write (CoW)-Modus â die Metadaten werden unsortiert auf das Speichermedium geschrieben, weshalb im Falle eines inkorrekten Systemabbruchs eine vollstĂ€ndige ĂberprĂŒfung mit fsck erforderlich ist.
Neben BeamFS wurden kĂŒrzlich noch zwei weitere Dateisysteme fĂŒr den Linux-Kernel vorgeschlagen:
- Auf der vor einigen Tagen stattgefundenen Konferenz Linux Plumbers Conference 2026 stellte ein Ingenieur von Huawei das Dateisystem XMFS (cross-node eXpress Memory File System) fĂŒr den Linux-Kernel vor, das fĂŒr den Einsatz in Clustern mit gemeinsam genutztem Arbeitsspeicher aller Knoten (Ă€hnlich tmpfs, aber fĂŒr den Speicher aller Knoten) vorgesehen ist. XMFS ermöglicht die Verwendung der standardmĂ€Ăigen POSIX-Schnittstelle von Dateisystemen, um auf externen Speicher zuzugreifen, der direkt ĂŒber Technologien wie CXL 3.0 (Compute Express Link) und den Huawei United Bus adressiert wird. Das Projekt befindet sich in der experimentellen Prototyp-Phase und wird intern getestet, ist jedoch noch nicht bereit fĂŒr die Integration in den Kernel.

Das Dateisystem hat die klassische Architektur verteilter Dateisysteme mit der Zuordnung von Server, die fĂŒr das Journaling, die Verwaltung der Inode-Tabellen und die Zuordnung von Inhalten und Metadaten zum Speicher der einzelnen Knoten zustĂ€ndig ist.

Bei den Tests zur Verwendung von XMFS fĂŒr Aufgaben wie den gemeinsamen Zugriff auf Container-Images von verschiedenen Knoten zeigte die Implementierung eine Leistung, die nah an der von tmpfs lag, insbesondere bei der Verwendung groĂer Seiten im Speicher (2 MB Huge Pages).


- Mit Hilfe von KI wurde das Dateisystem MeshXFS entwickelt, das ein Fork von XFS darstellt, der fĂŒr die gleichzeitige Nutzung auf mehreren Knoten in einem Cluster angepasst ist. MeshXFS ermöglicht es, ein gemeinsames BlockgerĂ€t im Lese-Schreib-Modus auf verschiedenen Knoten zu mounten, die IntegritĂ€t zu gewĂ€hrleisten und beim gleichzeitigen Datenzugriff Locking zu verwalten. Das Projekt begann als Experiment zur Erforschung der Möglichkeiten der Erstellung eines Linux-Treibers mit einem Dateisystem, das verteilte Sperren, parallelen Zugriff und Wiederherstellung nach AusfĂ€llen unterstĂŒtzt, mithilfe von KI-Modellen. Die Hauptarbeit wurde mit Claude Opus durchgefĂŒhrt, aber fĂŒr besonders komplexe Probleme wurden gezielt Modelle wie Claude Fable, GPT, Gemini und Astra hinzugezogen. Das Experiment wurde als erfolgreich angesehen, und es wurden bereits mehrere funktionierende Versionen von MeshXFS veröffentlicht.
Zu den zusĂ€tzlichen Möglichkeiten, die ĂŒber XFS bereitgestellt werden, gehören zwei Modi zur Verwaltung verteilter Sperren (Netzwerksynchronisierung und Speicherung des Status auf einer separaten gemeinsamen Festplatte), die Sicherstellung der Konsistenz des Caches an verschiedenen Knoten, Protokollierung zur Wiederherstellung sowie Anpassungen des Festplattenformats und der Dienstprogramme fĂŒr die spezifischen Anforderungen des Clusterdateisystems. Die Verwendung eines gemeinsamen Speichers, der ĂŒber iSCSI angeschlossen ist (auf 16 Knoten getestet), wird unterstĂŒtzt oder bei der Replikation von BlockgerĂ€ten durch DRBD. Die Koordination von Sperren, Funktionen zur Erkennung von Knoten, VerfĂŒgbarkeitsprĂŒfungen und die Identifizierung von fehlerhaften Knoten sind in einem gemeinsamen Kernelmodul implementiert. Die FunktionalitĂ€t wurde in Proxmox VE 9, RHEL 9, Ubuntu 24.04/26.04 und Debian 12/13 getestet.
Quelle: opennet.ru




