ОБНОВЛЕНИЕ: у PFM уже есть порты Mac и Linux. Если переносимость является первостепенной задачей, то PFM - это вариант, который не предусматривает переход на разные API-интерфейсы на 3 основных настольных платформах.
Полное раскрытие, я являюсь основным разработчиком PFM в Pismo Technic Inc. ..
PFM и CBFS предоставляют функциональность, которая встроена в Linux как FUSE и свободно доступна для Mac как MacFUSE.
Я считаю, что вам лучше всего использовать собственный слой переноса, чтобы изолировать основную часть вашего кода от особенностей FUSE в Linux / Mac и спецификаций PFM или CBFS в Windows. Написав порт Linux / Mac PFM через низкоуровневую FUSE, я уверен, что различия между FUSE и PFM довольно просты в управлении. CBFS более буквально раскрывает собственную модель файловой системы Windows, и поэтому, скорее всего, повлечет за собой большее функциональное различие.
Собственная модель файловой системы Windows сильно отличается от модели файловой системы в Unix-подобных операционных системах. Эту разницу трудно себе представить разработчикам, которые в основном имели дело либо с пользовательским режимом Win32, либо с unix. Хотя технология FUSE for Windows возможна, в конце концов, возможно, потребуется так много специфических для Windows изменений, что в конечном итоге она будет примерно такой же, как при использовании PFM или CBFS в Windows.