Что такое проектируемая файловая система Windows?

47

В последних сборках Windows 10 в бета-версии появилась новая функция, называемая Windows Projected File System. Я не могу найти в Google никакой информации, кроме API-интерфейсов программирования, которые не имеют смысла для меня.

Что это такое, и на каких пользователей он будет нацелен?

введите описание изображения здесь

Канадский Люк ВОССТАНОВИТЬ МОНИКУ
источник

Ответы:

53

Проецируемая файловая система, также известная как ProjFS, - это функция, похожая на FUSE в Linux (или Dokan & WinFSP). Это позволяет приложениям создавать виртуальные файловые системы, которые кажутся неотличимыми от локальных папок, но все их содержимое генерируется программой «вживую». (Другими словами, вы видите проекции файлов, которых там может не быть.)

Основное использование ProjFS - Microsoft Git Virtual File System , дополнение к инструменту управления версиями Git, направленное на повышение его производительности и уменьшение использования дискового пространства при работе с массивными репозиториями. (Git был создан для репозиториев, содержащих только десятки тысяч файлов, таких как Linux.git; но Microsoft начала использовать его внутри для исходного хранилища Windows, которое на несколько порядков больше).

В настоящее время ProjFS, похоже, не документирована публично, но я ожидаю, что рано или поздно сторонние разработчики выяснят, как использовать его в качестве альтернативы FUSE для реализации таких виртуальных файловых систем, как sshfs , ftpfs и так далее.

Примечание: Pro J ected Файловая система не имеет ничего общего с Windows File Pro т перегиба.

Как отмечено в комментариях, документация теперь доступна для этой функции.

grawity
источник
2
Для меня на несколько порядков больше означает, что Windows содержит не менее миллиарда исходных файлов. Это точно?
user253751
6
@ user20574 По данным сайта GVFS: «Операционная система Windows, которая работает примерно на 300 ГБ (3,5 миллиона файлов)» . И сообщение в блоге MS : «База кода Windows составляет приблизительно 3,5 млн. Файлов, а при регистрации в репозитории Git - около 300 ГБ» .
nxnev
1
@niutech: IFS - это API для создания драйверов файловой системы в режиме ядра, которые можно динамически загружать (в отличие от встроенных в само ядро). ProjFS - это API для создания драйверов файловой системы пользовательского режима (т. Е. Драйверов, которые работают как обычный exe-файл).
josh3736
7
Теперь здесь есть документация .
NtFreX