2010-02-10 15 views
9

Ho bisogno di rendere i miei dati parte del file system della macchina.Soluzione multipiattaforma per il montaggio di un filesystem personalizzato

Nelle finestre a quanto pare devo 3 opzioni:

  1. EldoS' "Callback File System" (http://www.eldos.com/cbfs/)
  2. Dokan (dokan-dev.net)
  3. Pismo File Mount (http://www.pismotechnic.com/pfm/)

Di questi 3 opzione 1 (Eldos) è di gran lunga l'opzione migliore.

Ma idealmente mi piacerebbe avere una soluzione che supporti anche Linux/Unix e Mac. In altre parole, alcune interfacce comuni per le richiamate, ma diverse implementazioni per i diversi filesystem.

Qualcuno sa di una soluzione del genere?

+0

Solo una nota: Callback File System ha il livello di compatibilità FUSE che consente di riutilizzare grandi parti del codice C/C++ scritto per FUSE e OSXFUSE. –

risposta

9

UPDATE: PFM ha avuto porte Mac e Linux da qualche tempo. Se la portabilità è un problema primario, PFM è l'opzione che non prevede lo shimming di API diverse sulle 3 piattaforme desktop principali.

divulgazione completa, Io sono l'autore PFM primario a Pismo Technic Inc ..

PFM e CBFS forniscono funzionalità che è costruito in Linux come FUSE, ed è liberamente disponibile per Mac come MacFUSE.

Credo che la soluzione migliore è utilizzare il proprio livello di porting per isolare la maggior parte del codice da specifiche FUSE su Linux/Mac e specifiche PFM o CBFS su Windows. Avendo scritto una porta PFM Linux/Mac tramite FUSE di basso livello, sono fiducioso che le differenze tra FUSE e PFM sono abbastanza facili da gestire. CBFS espone più letteralmente il modello di file system nativo di Windows, quindi probabilmente implicherà una differenza funzionale più ampia.

Il modello di file system Windows nativo è molto diverso dal modello di file system su sistemi operativi unix-like. Questa differenza è difficile da immaginare per gli sviluppatori che si sono occupati principalmente della modalità utente Win32 o di unix. Sebbene sia possibile utilizzare un FUSE per il tipo di tecnologia Windows, alla fine probabilmente richiederebbero così tante modifiche specifiche di Windows che finirebbe per essere lo stesso di usare PFM o CBFS su Windows.

Problemi correlati