Nach einer zweieinhalbjährigen Pause erscheint WinBtrfs 1.10 – der Open-Source-Treiber für Windows, der den Zugriff auf das Linux-Dateisystem Btrfs ermöglicht. Die neue Version erweitert die Schreibunterstützung um Free-Space-Bitmaps und komprimierte Inline-Dateien, behebt mehrere kritische Bugs und setzt erstmals KI zur Fehlersuche ein. Der Entwickler Mark Harmstone betont jedoch, dass sämtlicher Code weiterhin von Hand geschrieben wurde.
Windows und Btrfs: Ein Treiber als Brücke
Btrfs ist ein modernes Linux-Dateisystem mit Funktionen wie Snapshots, Komprimierung und Datenintegritätsprüfung. Es wird unter anderem von Fedora und openSUSE als Standard-Dateisystem genutzt. Windows hingegen unterstützt Btrfs nicht nativ. WinBtrfs schließt diese Lücke: Der Treiber wurde von Mark Harmstone vollständig eigenständig entwickelt, ohne Code aus dem Linux-Kernel, und unter der LGPL-3.0-Lizenz veröffentlicht. Er läuft auf Windows XP bis Windows 11 und wird auch im quelloffenen Betriebssystem ReactOS eingesetzt. Auf GitHub verzeichnet das Projekt rund 7.700 Sterne und über 300 Forks. Die letzte Version 1.9 stammt vom März 2024 – seither war es still um das Projekt.
Die wichtigsten Neuerungen in v1.10
Version 1.10 bringt zwei wesentliche Erweiterungen der Schreibfunktionen: Erstens wird nun die Free-Space-Bitmap unterstützt, also die Datenstruktur, die freie Speicherbereiche auf der Festplatte verwaltet. Zweitens können komprimierte Inline-Dateien geschrieben werden – kleine Dateien, die direkt in den Metadaten gespeichert werden. Beide Funktionen waren bisher nur lesbar verfügbar; nun ist der Schreibzugriff vollständig implementiert.
Die Stabilität wurde deutlich verbessert. Ein Absturz beim Verschieben von Dateien zwischen Subvolumes – den virtuellen Partitionen innerhalb von Btrfs – wurde behoben. Auch das Erstellen vieler Dateien gleichzeitig, wie es etwa der Steam-Client tut, führt nicht mehr zu einem Crash. Die Fehlerbehandlung bei Speichermangel oder knappem Plattenplatz wurde gestärkt, die Statistiken zur Speichernutzung bei Multi-Device-Volumes werden korrekt angezeigt, und Probleme mit der Vorab-Zuweisung (Pre-Allocation) sind gelöst. Die Handhabung von Wechseldatenträgern wie USB-Sticks und externen Festplatten wurde verbessert – allerdings wurde die RAID-Unterstützung für diese Geräte entfernt.
Überblick über die wichtigsten Änderungen
- Neue Schreibfunktionen: Free-Space-Bitmap und komprimierte Inline-Dateien
- Behobene Abstürze: Subvolume-übergreifende Dateiverschiebungen, Massenoperationen (z. B. Steam-Client)
- Stabilitätsverbesserungen: Fehlerbehandlung bei Speicher- und Plattenknappheit, korrekte Speicherstatistiken
- Entfernung: RAID-Support für Wechseldatenträger
KI auf der Spur, Code aus eigener Hand
Im Release-Statement geht Harmstone detailliert auf den Einsatz von KI ein. Er nutzte Claude für die Fehlersuche und Code-Reviews – und das habe „erheblich geholfen“ („help greatly“). Gleichzeitig stellt er klar: Sämtlicher Code von WinBtrfs 1.10 wurde ohne KI geschrieben. Die KI diente ausschließlich als Werkzeug, um Fehler zu finden, nicht um Code zu generieren. Diese klare Trennung zwischen kreativer Entwicklung und assistierter Qualitätssicherung ist bemerkenswert, insbesondere für ein Dateisystem-Treiber, bei dem jeder Fehler Datenverlust bedeuten kann. Harmstone übernimmt damit die volle Verantwortung für jede Zeile Code.
Ein Jahrzehnt in einer Hand
Die erste Version von WinBtrfs erschien im Februar 2016. Seit zehn Jahren entwickelt Harmstone den Treiber allein. Die Entscheidung, auf den Linux-Kernel-Code zu verzichten, ermöglichte die LGPL-Lizenzierung und die Integration in ReactOS, bedeutet aber auch, dass er jede Weiterentwicklung des Linux-Btrfs-Treibers selbst nachvollziehen muss. Die Liste der unterstützten Funktionen ist lang: RAID 0/1/10/5/6, zlib/LZO/Zstd-Kompression, Scrub, TRIM/DISCARD, Subvolume-Senden/Empfangen, xxhash/sha256/blake2-Prüfsummen. Mit Version 1.9 wurde der Block-Group-Tree aus Linux 6.1 integriert. Auf der To-Do-Liste stehen noch die vollständige fs-verity-Unterstützung (Dateiintegritätsprüfung), Zoned Storage, Defragmentierung und Quotas.
Die Meilensteine der Entwicklung im Überblick:
- Februar 2016: v0.1 – erste Alpha-Version mit grundlegender Lese-/Schreibfunktion
- September 2017: v1.0 – erste stabile Version mit RAID, Kompression und Send/Receive
- Februar 2020: v1.7 – Unterstützung für xxhash, sha256, blake2, 3/4-Disk-RAID1
- März 2022: v1.8 – automatisiertes Test-Suite, erste fs-verity-Ansätze
- März 2024: v1.9 – Block-Group-Tree, Anpassung an Linux 6.1
- September 2026: v1.10 – Schreibfunktionen erweitert, zahlreiche Bugfixes, KI-gestützte Fehlersuche
Version 1.10 steht auf der GitHub-Releases-Seite für die Architekturen x86, amd64, arm und aarch64 bereit. Die Installation erfolgt durch Rechtsklick auf die btrfs.infcodecodecodecodecode-Datei und Auswahl von „Installieren“. Alternativ kann der Treiber über die Paketmanager Chocolatey und Scoop bezogen werden. Bei Systemen mit aktiviertem Secure Boot sind unter Umständen Registry-Anpassungen erforderlich.
Harmstones Projekt zeigt, wie ein einzelner Entwickler mit klaren Prinzipien und modernen Werkzeugen eine wichtige Brücke zwischen zwei Betriebssystemwelten schlagen kann. Der Einsatz von KI als Assistenz ohne Code-Autonomie könnte wegweisend für sicherheitskritische Open-Source-Projekte sein – denn Vertrauen in den Code entsteht nicht durch Maschinen, sondern durch die Verantwortung, die Menschen dafür übernehmen.