Кроссплатформенное решение для монтажа пользовательской файловой системы
-
19-09-2019 - |
Вопрос
Мне нужно сделать мои данные частью файловой системы машины.
В окнах кажется, что у меня есть 3 варианта:
- «Файл -система обратного вызова Эльдоса» (http://www.eldos.com/cbfs/)
- Dokan (dokan-dev.net)
- Pismo File Mount (http://www.pismotechnic.com/pfm/)
Из этих 3 вариантов 1 (Eldos) - безусловно, самый вид.
Но в идеале я хотел бы получить решение, которое также поддерживает Linux/Unix и Mac. Другими словами, какой-то общий интерфейс для защитников вызовов, но различные реализации для различных файловых систем.
Кто -нибудь знает о таком решении?
Решение
Обновление: у PFM уже некоторое время есть порты Mac и Linux. Если переносимость является основной проблемой, то PFM - это вариант, который не включает в себя сокращение до разных API на 3 основных настольных платформах.
Полное раскрытие, я являюсь основным разработчиком PFM в Pismo Technic Inc ..
PFM и CBF предоставляют функциональность, которая встроена в Linux как предохранитель, и свободно доступен для Mac в качестве MacFuse.
Я полагаю, что лучше всего использовать свой собственный портирующий слой, чтобы выделить основную часть вашего кода из специфики предохранителя на Linux/Mac, а также специфика PFM или CBFS в Windows. Записав порт PFM Linux/Mac через предохранитель низкого уровня, я уверен, что различия между предохранителем и PFM довольно легко управлять. CBFS больше буквально выявляет модель файловой системы Windows, и, вероятно, будет включать в себя большую функциональную разницу.
Народная модель файловой системы Windows сильно отличается от модели файловой системы в UNIX-подобных операционных системах. Эта разница трудно представить разработчикам, которые в основном имели дело с пользовательским режимом Win32 или Unix. Хотя возможно предохранитель для технологий Windows, в конце концов, вероятно, потребуется так много конкретных изменений Windows, что в конечном итоге это будет примерно так же, как использование PFM или CBF в Windows.