2010-02-10 13 views
9

Necesito hacer que mis datos formen parte del sistema de archivos de la máquina.Solución multiplataforma para montar un sistema de archivos personalizado

En las ventanas parece que tengo 3 opciones:

  1. Eldos' "devolución de llamada de sistema de archivos" (http://www.eldos.com/cbfs/)
  2. Dokan (dokan-dev.net)
  3. Pismo File Monte (http://www.pismotechnic.com/pfm/)

De estos 3 opción 1 (Eldos) es de lejos la mejor opción.

Pero idealmente me gustaría obtener una solución que también sea compatible con Linux/Unix y Mac. En otras palabras, una interfaz común para las llamadas, pero diferentes implementaciones para los diferentes sistemas de archivos.

¿Alguien sabe de tal solución?

+0

Solo una nota: el sistema de archivos de devolución de llamada tiene una capa de compatibilidad FUSE que le permite volver a utilizar partes grandes del código C/C++ escritas para FUSE y OSXFUSE. –

Respuesta

9

ACTUALIZACIÓN: PFM tiene puertos Mac y Linux desde hace algún tiempo. Si la portabilidad es una preocupación primordial, entonces PFM es la opción que no implica ajustes a diferentes API en las 3 plataformas de escritorio principales.

divulgación completa, yo soy el principal desarrollador de la GFP en Pismo Technic Inc ..

PFM y CBFS proporcionan una funcionalidad que se construye en Linux como FUSE, y está disponible gratuitamente para Mac como MacFUSE.

creo que la mejor opción es utilizar su propia capa de portabilidad para aislar la mayor parte de su código de aspectos específicos de fusibles en Linux/Mac, y PFM o específicos CBFS en Windows. Después de haber escrito un puerto PFM para Linux/Mac a través de FUSE de bajo nivel, estoy seguro de que las diferencias entre FUSE y PFM son bastante fáciles de administrar. CBFS expone más literalmente el modelo de sistema de archivos nativo de Windows, y probablemente involucre una diferencia funcional más grande.

El modelo de sistema de archivos nativo de Windows es muy diferente al modelo de sistema de archivos en sistemas operativos tipo Unix. Esta diferencia es difícil de imaginar para los desarrolladores que se han ocupado principalmente del modo de usuario Win32 o de Unix. Aunque es posible utilizar un tipo de tecnología FUSE para Windows, al final probablemente requeriría tantos cambios específicos de Windows que terminaría siendo casi lo mismo que usar PFM o CBFS en Windows.

Cuestiones relacionadas