Gibt es eine USB-Alternative zum Massenspeicher, die auf Dateisystemebene funktioniert?

Gibt es eine USB-Alternative zum Massenspeicher, die auf Dateisystemebene funktioniert?

Das Ziel ist es, ein USB-Gerät zu erstellen, das als Dateisystem gemountet werden kann, nicht als Blockgerät.

Der Unterschied besteht darin, dass das Arbeiten auf der Dateisystemebene es dem Gerät ermöglichen würde, Schreibvorgänge in seinen Sicherungsspeicher zu koordinieren, die sowohl vom Host-Betriebssystem als auch vom Gerät selbst erfolgen.

Eine Schnittstelle auf der Blockgeräteebene bedeutet, dass das Gerät aufhören müsste zu schreiben, sobald es auf dem Host-Betriebssystem gemountet wurde (wie früher SD-Karten in Telefonen).

Ich interessiere mich für die Unterstützung der drei großen Betriebssysteme (Linux, OSX und Windows 7+), aber nicht für Andriod, iOS oder andere Unix-Varianten.

Antworten (2)

Die Media Transfer Protocol- Geräteklasse kommt dem, was Sie suchen, ziemlich nahe. Es wird nicht immer als "normales" Dateisystem in allen Betriebssystemen verfügbar gemacht, aber es implementiert Operationen auf Dateiebene und nicht auf Blockebene, wie Sie es wünschen.

Ja ... aber es gibt anscheinend viele Kompatibilitätsprobleme.

Der direkteste Weg, das zu tun, was Sie vorschlagen, besteht darin, Ihr USB-Gerät so zu implementieren, dass es wie eine Netzwerkschnittstelle zum Hostsystem aussieht. Intern würde Ihr Gerät "vorgeben", ein USB-zu-Ethernet-Adapter zu sein, der mit einem entfernten Dateisystem kommuniziert, das beispielsweise das NFS- oder CIFS-Protokoll verwendet.

Die wichtigsten Betriebssysteme verfügen bereits über Treiber, die diese Art von Betrieb unterstützen, und wenn Sie eine Art Linux auf Ihrem Gerät verwenden, ist der größte Teil des Codes für diese Seite ebenfalls bereits vorhanden.