Я только что открыл UltraSearch и был поражен скоростью поиска файлов и папок. Это мгновенно . И не использует никакой службы индексации. Он просто использует таблицу основных файлов NTFS , в которой уже хранятся все имена файлов в разделе NTFS.
Вопрос заключается в том , почему это не возможность способ более популярным среди файловых менеджеров, и проводник Windows Search (Win + F) , чтобы начать?
windows-explorer
ntfs
file-search
Дан Дакалеску
источник
источник
Ответы:
Из-за безопасности!
Это настоящая причина. (И только истинная причина, на мой взгляд , - это не что трудно сделать считыватель для основных файловых систем, хотя это отнюдь не легко, сделав писателя является реальной проблемой.)
Такая программа обходит инфраструктуру безопасности всей (файловой) системы, поэтому ее может запустить только администратор (или кто-то другой, имеющий права «Управление томами»).
Очевидно, что во многих сценариях это не сработает - и я не думаю, что Microsoft (или любая другая крупная компания) когда-либо рассматривает возможность создания такого продукта, а затем поощряет пользователей работать в качестве администраторов из-за последствий для безопасности.
Это было бы теоретически возможно сделать систему , которая работает в фоновом режиме и отфильтровывает защищенные данные, но на практике это будет много работы , чтобы получить правильную и без дыры в безопасности производства.
Кстати, я не использовал UltraSearch, но несколько лет назад я сам написал очень похожую программу, которую я открыл в прошлом месяце! Проверьте это, если вам интересно. :)
источник
Файловые менеджеры должны поддерживать каждую файловую систему, с которой можно столкнуться. Как таковые, они должны вызывать VFS через его API . Нет (вменяемого) способа вернуть большой массив из вызова API, что приводит к тому, что перечисление файлов является последовательным независимо от наличия MFT / FAT / суперблока.
источник
Служба индексирования файлов предназначена для пользователей, которые хотели бы искать содержимое (скорее всего текст) и метаданные файлов, а не просто имя файла. Вот почему на все файлы уходит много времени, а индекс, созданный из таких сервисов, большой и относительно медленный. Вы можете отключить службу индексирования в Windows, но Windows Explorer достаточно глуп, чтобы продолжать поиск содержимого файла после имен файлов. Как сказал Игнасио Васкес-Абрамс, файловые менеджеры не могут воспользоваться низкоуровневой файловой системой.
источник