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

5607
Canadian Luke

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

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

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

35

1 ответ на вопрос

41
grawity

Проецируемая файловая система, также известная как 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 т перегиба.

Для меня на несколько порядков больше означает, что Windows содержит не менее миллиарда исходных файлов. Это точно? user20574 5 лет назад 2
Чем WPFS отличается от [IFS] (https://en.wikipedia.org/wiki/Installable_File_System)? niutech 5 лет назад 0
@ user20574 Согласно веб-сайту GVFS: _ «Операционная система Windows, которая работает примерно на 300 ГБ (3,5 миллиона файлов)» _. И [сообщение в блоге MS] (https://blogs.msdn.microsoft.com/bharry/2017/05/24/the-largest-git-repo-on-the-planet/): _ "база кода Windows составляет примерно 3,5 млн. файлов, и при регистрации в репозитории Git репо составляет около 300 ГБ "_. nxnev 5 лет назад 5
Итак, на два порядка. user20574 5 лет назад 0
@niutech: IFS is an API for building kernel-mode filesystem drivers that can be dynamically loaded (as opposed to built in to the kernel itself). ProjFS is an API for building user-mode filesystem drivers (ie, drivers that run like a regular exe). josh3736 5 лет назад 1
@ user20574 репозиторий Windows включает в себя все в MS, например Office, ядро ​​Windows, инструменты Windows, Visual Studio, Skype ... и не только ядро, такое как Linux, поэтому неудивительно, что оно будет намного больше phuclv 5 лет назад 0
@ phuclv цитирование необходимо. «Windows» включает в себя _lot_ материала (это были бы дополнительные пакеты в Linux; подумайте весь GUI, Блокнот и т. Д.), Но я не могу поверить, что репозиторий содержит _all_ продуктов Microsoft. Roger Lipscombe 5 лет назад 0
ВОТ ЭТО ДА! Я никогда не слышал об этом, это отлично! Austin Burk 5 лет назад 0
Виртуальная файловая система git, кажется, с открытым исходным кодом, поэтому, даже если нет документации, существует эффективный открытый пример кода. plugwash 5 лет назад 0
@RogerLipscombe, вероятно, «все продукты MS» немного преувеличены, но, по словам Гейба Аула из MS [* Этот размер на самом деле составляет весь репозиторий ОС. Он включает в себя инструменты Windows OneCore, Desktop, Mobile, HoloLens, Xbox, IOT и т. Д. Plus, а также другой код, который мы получаем из каналов и храним в нашем дереве. Это полная энчилада, а не только рабочий стол. *] (Https://blogs.msdn.microsoft.com/devops/2017/02/03/announcing-gvfs-git-virtual-file-system/) phuclv 5 лет назад 1
Кроме того, они подумали об одном репо для всей компании: [* Первые большие дебаты были - сколько у вас репо - одно для всей компании в одном крайнем случае или одно для каждого небольшого компонента? Большой спектр *] (https://blogs.msdn.microsoft.com/bharry/2017/02/03/scaling-git-and-some-back-story/) phuclv 5 лет назад 1
@phuclv Точно, это не все в MS. Окна большие сами по себе. Hong Ooi 5 лет назад 0
Проблема не столько в количестве файлов, сколько в * огромных * файлах. Git был разработан для хранения исходного кода, но у Microsoft есть изображения, другие носители и различные блоки данных, добавленные в их исходные репозитории. Jan Hudec 5 лет назад 0
Теперь есть документация [здесь] (https://docs.microsoft.com/en-us/windows/desktop/projfs/projected-file-system). NtFreX 5 лет назад 2

Похожие вопросы