Поиск на основе файловых таблиц выполняется молниеносно, так почему же он не включен во все основные поисковые инструменты? Читайте дальше, пока мы расследуем.
Сегодняшняя сессия вопросов и ответов проходит благодаря SuperUser - подразделению Stack Exchange, группы веб-сайтов вопросов и ответов, управляемой сообществом.
Вопрос
Читателю SuperUser Дэну Даскалеску любопытно, почему весь поиск не основан на таблицах:
Я только что открыл для себя UltraSearch и был потрясен его скоростью поиска файлов и папок. Это мгновенный . И не пользуется услугами индексирования. Он просто использует Таблица основных файлов NTFS , который уже хранит все имена файлов в разделе NTFS.
Вопрос в том, почему эта возможность путь более популярен среди файловых менеджеров и Windows Explorer Search (Win + F) для начала?
Мы уверены, что это реакция каждого пользователя компьютера, впервые обнаружившего, насколько быстрым является поиск на основе файловых таблиц. Так почему же он не встроен во все?
Ответ
Участник SuperUser Мердад объясняет, почему низкоуровневый поиск никогда не прижился:
Из-за безопасности!
Вот настоящая причина. (И только настоящая причина, на мой взгляд - это не который трудно сделать программу для чтения основных файловых систем, хотя это отнюдь не просто; делая писатель это настоящая проблема.)
Подобная программа обходит всю инфраструктуру безопасности (файловой) системы, поэтому только администратор (или кто-то другой, имеющий права «Управление томом») может фактически запустить ее.
Очевидно, что во многих сценариях это не сработает - и Я не думаю, что Microsoft (или какая-либо другая крупная компания) когда-либо подумала бы о создании такого продукта, а затем поощряла бы пользователей работать в качестве администраторов. , из-за разветвлений безопасности.
Это бы теоретически возможно создать систему, которая работает в фоновом режиме и отфильтровывает защищенные данные, но на практике это было бы много работы, чтобы получить правильный и без дыр в безопасности для производства.
Кстати, я не использовал UltraSearch, но несколько лет назад я сам написал очень похожую программу, которую с открытым исходным кодом только в прошлом месяце! Зацените, если вам интересно. :)
Есть что добавить к объяснению? Отключи в комментариях. Хотите узнать больше ответов от других технически подкованных пользователей Stack Exchange? Ознакомьтесь с полной веткой обсуждения здесь .