Windows 2000
В файловой системе NTFS для Windows 2000 уменьшено количество случаев, требующих запуска утилиты CHKDSK,
что намного сокращает время работы данной утилиты. Будет уместным вспомнить выражение «конечный результат может отличаться от продемонстрированного», так как реальные результаты зависят от размера тома и типа повреждения. Для томов, содержащих миллионы файлов, утилита CHKDSK
может работать быстрее на порядок. 10.2.9.10 Дефрагментация
В Windows 2000 предоставляется утилита дефрагментации, которая на самом деле является «облегченной» версией утилиты DiskKeeper от компании Executive Software. Как и в Windows NT 4.0, в Windows 2000 поддерживаются специальные API дефрагментации. Встроенная утилита дефрагментации обладает определенными ограничениями, которые не свойственны большинству полноценных приложений дефрагментации, например:
встроенная утилита не может дефрагментировать главную таблицу файлов NTFS (MFT) или файл подкачки;
встроенная утилита не может дефрагментировать каталоги;
встроенная утилита не поддерживает систему Microsoft Cluster Server. 10.2.10 Точки повторной обработки
Появление точек повторной обработки (reparse points) значительно усовершенствовало архитектуру файловой системы NTFS и подсистемы ввода- вывода Windows NT. Обратите внимание, что реализация точек повторной обработки потребовала изменения подсистемы ввода-вывода и NTFS. Возможности точек можно внедрить и в другие файловые системы, отличные от NTFS. Кроме того, точки повторной обработки обеспечивают работу следующих важнейших функций Windows:
символьные ссылки;
точки соединения каталогов;
точки монтирования томов;
служба SIS (Single Instance Storage);
служба удаленного хранения HSM (Hierarchical Storage Management).
Все эти возможности рассматриваются в разделах 10.2.10.1–10.2.10.4.
Точки повторной обработки – это объект каталога или файла NTFS. Точка может быть создана, удалена или изменена приложением, использующим Win32 API в целом и функции CreateFile, ReadFile, WriteFile в частности. Вспомните, что Win32 API предоставляет приложениям возможность создавать и менять определенные пользователем атрибуты файла или каталога. Поэтому точки повторной обработки можно представить в виде определенного пользователем атрибута, который обрабатывается специальным образом. Такая обработка включает в себя обеспечение уникальности элементов объекта атрибута и обработку в подсистеме ввода-вывода. Независимые разработчики программного обеспечения обычно создают следующие приложения:
утилиты пользовательского режима для создания, управления и удаления точек повторной обработки;
драйверы фильтрации файловой системы, реализующие возможности точек повторной обработки.
Рис. 10.1. Структура тега точки повторной обработки
Каждая точка повторной обработки состоит из тега и объекта данных. Тег – это уникальное 32-разрядное число, назначаемое непосредственно Microsoft. Независимые производители могут запросить назначение специального тега. На рис. 10.1 показана структура тега повторной обработки, включая следующие элементы:
бит (М), который указывает, что тег принадлежит драйверу устройства от Microsoft;
бит (L), который указывает на значительные задержки при получении драйвером первого байта данных; в качестве примера моэкно указать службу HSM, при использовании которой получение данных с неинтерактивного носителя может осуществляться достаточно долго;
бит (N), который указывает, что файл или каталог представляют собой ссылку/перенаправление на другой файл или каталог;
зарезервированные биты;
фактическое 16-разрядное значение тега.
Объект данных точки повторной обработки может иметь размер до 16 Кбайт. Файловая система NTFS обеспечивает предоставление этого объекта данных драйверу устройства, созданному производителем. Объект данных предоставляется в процессе использования тбчки повторной обработки в подсистеме ввода-вывода.