MISE À JOUR : PFM a des ports Mac et Linux depuis un certain temps maintenant. Si la portabilité est une préoccupation majeure, alors PFM est l'option qui n'implique pas d'adaptation à des API différentes sur les 3 principales plateformes de bureau.
Pour tout vous dire, je suis le principal développeur de PFM chez Pismo Technic Inc.
PFM et CBFS fournissent une fonctionnalité qui est intégrée à Linux sous le nom de FUSE, et qui est librement disponible pour Mac sous le nom de MacFUSE.
Je crois que votre meilleure chance est d'utiliser votre propre couche de portage pour isoler la majeure partie de votre code des spécificités de FUSE sur Linux/Mac, et des spécificités de PFM ou CBFS sur Windows. Ayant écrit un portage Linux/Mac de PFM via FUSE de bas niveau, je suis convaincu que les différences entre FUSE et PFM sont assez faciles à gérer. CBFS expose plus littéralement le modèle de système de fichiers natif de Windows, et donc impliquera probablement une plus grande différence fonctionnelle.
Le modèle de système de fichiers natif de Windows est très différent du modèle de système de fichiers des systèmes d'exploitation de type Unix. Cette différence est difficile à imaginer pour les développeurs qui ont surtout travaillé avec le mode utilisateur Win32 ou unix. Bien qu'une technologie de type FUSE pour Windows soit possible, au final, elle nécessiterait probablement tellement de modifications spécifiques à Windows que cela reviendrait à utiliser PFM ou CBFS sous Windows.