Die Reise von F2FS und warum Dateisysteme wichtig sind: Interview mit Stan Dmitriev von Tuxera

XDA interviewt Stan Dmitriev von Tuxera, einem finnischen Unternehmen, das sich auf Dateisysteme spezialisiert hat. Stan diskutiert Dateisysteme und die Zukunft von F2FS.

Dateisysteme werden nicht allzu oft auf XDA oder einem anderen Forum diskutiert. Das Thema beinhaltet viel Low-Level-Entwicklung, daher konzentrieren sich Entwickler lieber auf Anwendungen, ROMs oder Kernel. Dennoch ist das Dateisystem ein wesentlicher Bestandteil jedes Speichers. Dabei handelt es sich um die Technologie, die beschreibt, wie Daten im Speicher Ihres Geräts gespeichert und abgerufen werden. Es gibt viele verschiedene Arten von Dateisystemen – jedes mit seinen eigenen Vor- und Nachteilen – und die Auswahl eines Dateisystems gegenüber dem anderen kann einen großen Unterschied in Stabilität und Leistung bewirken. Wie treffen OEMs diese Wahl? Ich hatte das Vergnügen, mit ihm zu sprechen Stan Dimitriev, der PR- und Kommunikationsmanager bei Tuxera, ein finnisches Unternehmen, das Dateisystemlösungen für viele große OEMs anbietet.

F: Können Sie sich und Tuxera vorstellen?

A: Ich bin Stan Dmitriev. Seitdem ich mein erstes Android-Handy (HTC EVO 3D) habe, bin ich ein aktiver Fan der XDA-Community geworden. Sagen wir einfach, ich habe ein benutzerdefiniertes ROM installiert und meine Garantie ist am ersten Tag ungültig geworden (Stan. Dmitriew ist Forummitglied auf XDA). Vor ein paar Jahren war ich Mitbegründer eines Startup-Projekts namens Corgi für Feedly. Damals hat uns die XDA-Community sehr bei der Definition und Entwicklung der Anwendung geholfen.

Derzeit bin ich PR- und Kommunikationsmanager bei Tuxera, dem führenden Unternehmen für eingebettete Speichersoftware, genauer gesagt Dateisysteme, auf dem Markt. Unsere Software unterstützt mehr als eine Milliarde Geräte und ist in den neuesten Flaggschiff-Telefonen, Autos, Routern, Drohnen und Kameras zu finden. Die Geschichte des Unternehmens begann mit NTFS-3G, als unser Präsident und CTO Szabolcs „Szaka“ Szakactics NTFS für die Zusammenarbeit mit Linux-Geräten entwickelte. Derzeit entwickeln wir unsere eigenen Dateisysteme und Implementierungen sowohl für externen als auch eingebetteten Speicher und arbeiten mit den meisten Automobilunternehmen sowie vielen Smartphone-Unternehmen zusammen.

Hier bei Tuxera besuchen wir ziemlich oft die XDA-Foren, insbesondere wenn wir Fehler bei einem kaputten Gerät beheben oder ein benutzerdefiniertes ROM/Kernel zum Spielen suchen. Viele meiner Kollegen besuchen XDA häufig, um sich über die neuesten Deep-Tech-Neuigkeiten rund um Android- und Linux-Ökosysteme zu informieren.

F: Dateisysteme sind ein integraler Bestandteil unserer Geräte, aber nur sehr wenige Menschen kennen ihre Rolle, Verbesserungen, Stärken und Schwächen. Was ist das Geschenk daran und warum sollten sich mehr Menschen für die Dateisysteme interessieren, die ihre Daten zusammenhalten?

A: Dateisysteme sind ein wichtiges Element des Linux-Kernels, das für alle Interaktionen zwischen dem Gerät und seinem Speicher verantwortlich ist. Jedes Mal, wenn Sie ein Foto aufnehmen, eine App öffnen oder ein Video ansehen, spielt das Dateisystem eine zentrale Rolle für das Betriebssystem, um auf alle Dateien zuzugreifen und diese zu speichern. Dateisysteme waren eine Zeit lang nicht so aufregend, der Hauptgrund dafür war, dass der Leistungsengpass vom Speicher herrührte.

Da die Flash-Geschwindigkeiten jedoch extrem schnell werden, insbesondere mit der Einführung von UFS, muss jetzt die Software modernisiert werden, um mit der Flash-Leistung Schritt zu halten. Das Dateisystem kann nicht nur die Speichergeschwindigkeit beeinflussen, sondern spielt auch eine wichtige Rolle bei der langfristigen Aufrechterhaltung der Telefonleistung. Bei falscher Vorgehensweise wird der Speicher fragmentiert, ein Phänomen, bei dem eine ineffiziente Speichernutzung die Leistung des Geräts beeinträchtigen kann. Diese Möglichkeit auf ein Minimum zu reduzieren, ist ein wichtiges Merkmal eines Dateisystems.

F: Was ist F2FS (Einführung) und warum gelangte es auf Android? Welche OEMs waren führend?

A: F2FS ist ein Open-Source-Dateisystem, dessen Hauptmerkmal darin besteht, dass es für die Flash-Speicherarchitektur konzipiert ist. NAND-Speicher (Flash) wird in allen aktuellen Android-Handys meist als eMMC- oder UFS-Lösung eingesetzt. Das Projekt wurde ursprünglich von Samsung entwickelt und hat bei einigen Mobilfunk-OEMs großes Interesse geweckt. Uns liegen keine Daten darüber vor, welche OEMs diesen Wandel eingeleitet haben. Aber soweit ich persönlich weiß, war Motorola der Erste, und viele andere OEMs wie OnePlus und Huawei folgten diesem Wandel in Kürze.

F: Welche Vorteile hatte es? OEMs nennen schnellere Speichervorgänge und UI-Leistung, aber gibt es noch andere Vorteile?

A: Die Tonhöhe war ganz einfach: F2FS bringt eine höhere Leistung für Flash-basierten Speicher. Ihr System würde schneller booten (höhere Lesegeschwindigkeiten), die Schreibgeschwindigkeiten wären höher, was die Aufnahme von anspruchsvollen 4K-Videos, Zeitlupenvideos mit höherer Bildrate und 360-Grad-Videos ermöglicht. Darüber hinaus wäre die Latenz zwischen dem System und dem Speicher extrem niedrig, was bedeutet, dass sich die Animation und das Öffnen von Apps viel schneller anfühlen würden.

F: Die Probleme scheinen sich insbesondere auf eine nachlassende Leistung zu konzentrieren. Könnten Sie das näher erläutern? Was ist die Ursache?

A: Die Idee von F2FS war in der Tat großartig, die schnellstmögliche Leistung für Flash-Geräte zu erreichen. Aber es ist auch wichtig, sich langfristig auf die Leistung zu konzentrieren. Hardware kann im Auslieferungszustand immer schnell sein, aber diese Geschwindigkeiten dauerhaft aufrechtzuerhalten, ist eine weitaus größere Herausforderung. Bei einem Android-Anwendungsfall ist der Speicher des Geräts die meiste Zeit fast voll und es finden Tausende von Lese-/Schreibvorgängen statt, manchmal sogar in einer Sekunde. Viele der beliebten Apps führen Dienste im Hintergrund aus. Das bedeutet, dass die App einige Lese-/Schreibvorgänge ausführt, auch wenn Sie sie nicht öffnen. Bei falscher Ausführung können Schreibvorgänge die Fragmentierung des Speichers drastisch erhöhen, wodurch jeder nächste Lese-/Schreibvorgang noch langsamer wird.

Wir sehen die Speicherfragmentierung als eine der Ursachen für den Leistungsabfall bei Android-Geräten. Nun muss festgestellt werden, ob die Probleme durch die Hardwarekompatibilität und die Leistung des Dateisystems verursacht werden Speicher von verschiedenen OEMs oder ob die F2FS-Architektur auf Anfangsgeschwindigkeiten setzt und sich dies langfristig auswirkt Leistung. Die Probleme können auch durch Fehler verursacht werden, da sich das Dateisystem noch in der Entwicklung befindet.

F: Gibt es andere Leistungs- oder Zuverlässigkeitsprobleme, die weniger bekannt sind?

A: Eine interessante Sache, die wir festgestellt haben, ist, dass F2FS einen unerwarteten Overhead hat, nämlich mindestens ein paar Hundert MB Ihres Speichers für Caching und Speicherwartung. Dies ist auf jeden Fall sinnvoll, wenn Sie über 64 GB Speicher oder mehr verfügen, aber bei preisgünstigen Telefonen mit 8 GB und 16 GB ROM-Größe kann dies ein Problem darstellen.

Das wichtigste Ergebnis ist, dass sich die aktuelle Implementierung von F2FS hervorragend für schreibgeschützte Umgebungen eignet, wenn Sie höhere Geschwindigkeiten erreichen möchten. F2FS muss sich auf die Verbesserung seiner langfristigen Speicherleistung bei hoher Interaktion mit kleinen Dateien konzentrieren, da dies in der Android-Umgebung der Fall ist.

Dies ist gewissermaßen ein Kampf der Theorien. Sie können sich entweder vorstellen, dass die Hardwareleistung so schnell ist, dass die Verschlechterung kein Problem darstellt. Oder man sieht es umgekehrt: Die Hardware ist so schnell, dass eine etwas langsamere Leistung, die auf lange Sicht aufrechterhalten werden kann, erreicht werden sollte. F2FS hat sich für den ersten Ansatz entschieden, und hier gibt es keine falschen Optionen, es ist ein wichtiges Experiment und eine Lernkurve für die gesamte Branche. Allerdings sehen wir derzeit, dass die langfristige Leistung derzeit im Vordergrund stehen sollte.

F: Einige OEMs haben die Verwendung von F2FS eingestellt, während andere wie Huawei F2FS auf neueren Geräten weiterhin unterstützen. Glauben Sie, dass es in beide Richtungen einen Trend gibt? (Langsame Akzeptanz oder völlige Aufgabe)

A: Es gibt mehrere Szenarien, warum OEMs weiterhin F2FS verwenden würden.

  • Ein OEM könnte über eine eigene Implementierung von F2FS verfügen, die einige Korrekturen für die bekannten Probleme bringt.

  • Ein OEM könnte sehr gute Beziehungen zum Flash-Speicherhersteller haben, da er Zugriff auf die FTL-Schicht von NAND und deren Optimierung hat Wenn das Dateisystem gut mit der Hardware zusammenarbeitet, kann dies erhebliche Verbesserungen bringen, auch bei der Fragmentierung von Flash Lagerung.

  • Ein OEM könnte es vorziehen, sich auf die anfängliche Leistung des Telefons zu konzentrieren, da der durchschnittliche Lebenszyklus eines Smartphones etwa zwei Jahre beträgt und er, wenn das Telefon langsamer wird, bereits ein neues kaufen wird.

  • Ein OEM könnte auch einen Defragmentierungsdienst ausführen, der die Probleme von F2FS teilweise lösen kann.

Dies sind einige der möglichen Szenarien. Gleichzeitig sehen wir, dass einige OEMs dies bereits tun Zurück zur Verwendung von Ext4, zum Beispiel verwendete OnePlus 3T F2FS, aber alle neueren OnePlus-Modelle verwenden es Ext4.

F: F2FS benötigt derzeit eine Defragmentierungslösung für unterwegs, die das derzeit bei F2FS auftretende Problem lösen könnte.

A: Defragmentierungstools gibt es schon seit einiger Zeit. Der Hauptvorteil besteht darin, dass sie die Speicherblöcke neu zuweisen/neu schreiben können, um die Speicherfragmentierung zu reduzieren. Das Problem bei diesem Ansatz besteht jedoch darin, dass Sie die Flash-Speicherzellen neu schreiben, was die Lebensdauer des Speichers verkürzt. Das beste Szenario wäre, Daten überhaupt intelligent zu schreiben. Schadensbegrenzung ist keine Lösung.

Stellen Sie sich das so vor, als würden Sie in einem Raum Unordnung anrichten, indem Sie viele Dinge herumwerfen und sie dann in den Schubladen anordnen. Warum das nicht gleich tun?

F: Ist es den OEMs gelungen, einige der Probleme, die F2FS behindern, entgegenzuwirken oder anzugehen? Huawei lehnt beispielsweise eine nachlassende Leistung ab und wirbt mit der Zeit für eine schnellere UX, teilweise dank seiner „KI“.

A: Nun, wenn eine KI das Speicherverhalten analysieren und das Dateisystem so umschreiben kann, dass es für ein bestimmtes Flash-Gerät funktioniert, kann dies wahrscheinlich die Probleme der Fragmentierung lösen. Die KI kann außerdem analysieren, welche Apps oder Funktionen die Person am häufigsten nutzt, und diese vorab laden/speichern Dementsprechend würde eine schnellere Bedienung der Telefonfunktionen das Problem der Fragmentierung nicht lösen obwohl. Meine Hauptannahme ist, dass sich die meisten Optimierungen auf den Benutzerbereich beziehen und nicht auf tiefgreifende technische Dateisystemoptimierungen.

F: Welche weiteren spannenden Entwicklungen im Dateisystem sollten wir beachten? Wie würden sie sich auf das Benutzererlebnis auswirken, auch wenn es nur auf subtiler oder niedriger Ebene wäre?

A: F2FS und Ext4 sind immer noch sehr wichtig und die Dateisysteme der Wahl für Open Source. Ext4 ist ausgereifter und zuverlässiger, kann jedoch die Flash-Leistung einschränken. F2FS ist flotter, aber auch experimenteller. Die ganze Situation, in der Software zum Flaschenhals wird, macht Dateisysteme wieder spannend. Wir gehen von einer Sekunde, in der jede Millisekunde zählt, über. Umgebungen und Dateisysteme werden bei dieser Leistungssteigerung eine wichtige Rolle spielen. Die aufregendste Entwicklung für Dateisysteme wäre die Schaffung einer wirklich Flash-optimierten Lösung, die die Leistung von Flash aufrechterhalten kann.

Bei Tuxera entwickeln wir das Tuxera Flash File System, in dem wir beispielsweise hardwarespezifische Software entwickeln Optimierungen stellen sicher, dass das Dateisystem für ein bestimmtes Gerät, einen bestimmten Anwendungsfall und einen bestimmten Flash optimiert ist Erinnerung. Da wir im Automobilbereich tätig sind, konzentrieren wir uns hauptsächlich auf die langfristige Leistung und Verschlechterung des Flash-Speichers. Dabei handelt es sich eher um die Hardware-x-Software-Optimierung, von der Steve Jobs immer gesprochen hat. Die Anwendung maschinellen Lernens zur Schaffung solcher „Treiber“ könnte unserer Meinung nach für die gesamte Speicherbranche sehr spannend sein.

F: Auch unser physischer Flash-Speicher wird immer schneller. Wie wird sich dieser Umstand Ihrer Meinung nach sowohl auf das Endbenutzererlebnis als auch auf die Zukunft von Dateisystemen auswirken?

A: Da die Hardware immer schneller wird, muss die Software sicherstellen, dass sie mit diesen fortschrittlichen Hardwarearchitekturen mithalten kann. Dies ist derzeit die größte Herausforderung, die Dateisysteme lösen müssen. Sie können unglaubliche Lese- und Schreibgeschwindigkeitseigenschaften des Geräts erreichen, aber wenn der Software-Stack zusätzliche Latenz mit sich bringt, wird sich das Benutzererlebnis nicht so schnell anfühlen. Dies ist eine aufregende Zeit für die Entwicklung von Dateisystemen, da ein klarer Bedarf an einer schnelleren, schnelleren und dennoch zuverlässigeren Technologie für Mobilgeräte besteht.

Aber je schneller Flash wird, desto mehr stellt sich die Frage: Ab welcher Geschwindigkeit wird die Leistung irrelevant? Stellen Sie sich das wie die Auflösung des Retina-Bildschirms vor, bei der eine höhere Pixeldichte das Bild für das menschliche Auge nicht wirklich schärfer macht.

F: Vielen Dank für Ihre Zeit.

A: Danke!