Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курс лекций ОС.docx
Скачиваний:
48
Добавлен:
14.04.2019
Размер:
17.75 Mб
Скачать

Общие сведения

Ни одна из версий FAT не обеспечивает хоть сколько-нибудь приемли-мого уровня безопасности. Это, а также необходимость в добавочных файловых механизмах (сжатия, шифрования), привело к необходимости создания принципиально новой файловой системы. И ею стала файловая система NT (NTFS).

Как уже упоминалось, основным ее достоинством является защищенность: для файлов и папок NTFS могут быть назначены права доступа (на чтение, на запись и т.д.). Благодаря этому существенно повысилась безопасность данных и устойчивость работы системы.

Назначение прав доступа позволяет запретить/разрешить каким-либо пользователям и программам проделывать какие-либо операции над фай­лами. Например, не обладая достаточными правами, посторонний пользо­ватель не сможет изменить какой-либо файл. Или, опять же не обладая достаточными правами, вирус не сможет испортить файл.

Кроме того, NTFS, как было сказано выше, обеспечивает лучшую произ­водительность и возможность работы с большими объемами данных.

Начиная с Windows 2000 используется версия NTFS 5.0, которая помимо стандартных позволяет реализовывать следующие возможности:

  • Шифрование данных — эта возможность реализуется специальной над­стройкой NTFS, которая называется Encrypting File System (EFS) — шифрующая файловая система. Благодаря этому механизму шифро­ванные данные могут быть прочитаны только на компьютере, на котором произошла шифровка. В Windows ХР этот механизм был существенно доработан, были устранены недостатки.

  • Дисковые квоты — стало возможно назначать пользователям опреде­ленный (ограниченный) размер на диске, который они могут исполь­зовать.

  • Эффективное хранение разреженных файлов. Встречаются файлы, в которых содержится большое количество последовательных пустых байтов. Файловая систем NTFS позволяет оптимизировать их хра­нение.

  • Использование журнала изменений — позволяет регистрировать все операции доступа к файлам и томам.

И еще одно нововведение NTFS — точки монтирования. С помощью то­чек монтирования вы можете определить различные не связанные между собой папки и даже диски в системе как один диск или папка. Это имеет большую важность для сбора в одном месте разнородной информации, находящейся в системе.

Вот такая она, NTFS. На всякий случай повторю, что Windows ХР сможет реализовать свои основные преимущества только в том случае, если она будет установлена на NTFS. Также необходимо иметь в виду, что если для файла под NTFS были установлены определенные права доступа, а потом вы его скопировали на раздел FAT, то все его права доступа и другие уникальные атрибуты, присущие NTFS, будут утеряны. Так что будьте бдительны.

Устройство ntfs. Главная таблица файлов mft

Как и любая другая файловая система. NTFS делит все полезное место на кластеры — минимальные блоки данных, на которые разбиваются файлы. NTFS поддерживает почти любые размеры кластеров — от 512 байт до 64 Кбайт. Однако общепринятым стандартом считается кластер размером 4 Кбайт. Именно он используется по умолчанию. Принцип существования кластеров можно проиллюстрировать следующим примером.

Если у вас размер кластера составляет 4 Кб (что скорее всего), а вам нужно сохранить файл, размером 5 Кб. то реально под него будет выделе­но 8 Кб, так как в один кластер он не помещается, а под файл дисковое пространство выделяется только кластерами.

Для каждого NTFS-диска имеется специальный файл — MFT (Master Allocation Table — главная таблица файлов). В этом файле содержится централизованный каталог всех имеющихся на диске файлов. При созда­нии файла NTFS создает и заполняет в MFT соответствующую запись, в которой содержится информация об атрибутах файла, содержимом файла, имя файла и т.п.

Помимо MFT имеется еще 15 специальных файлов (вместе с MFT — 16), которые недоступны операционной системе и называются метафайла­ми. Имена всех метафайлов начинаются с символа $, но стандартными средствами операционной системы просмотреть их и вообще увидеть не представляется возможным. Далее, для примера представлены ос­новные метафайлы:

  • $MFT — сам МFT.

  • $MFTmirr — копия первых 16 записей MFT, размещенная посереди­не диска.

  • $LogFile — файл поддержки журналирования.

  • $Volume — служебная информация: метка тома, версия файловой системы, и т.д.

  • SAttrDef — список стандартных атрибутов файлов на томе.

  • $. — корневой каталог.

  • $Bitmap — карта свободного места тома.

  • $Boot — загрузочный сектор (если раздел загрузочный).

  • SQuota — файл, в котором записаны права пользователей на исполь­зование дискового пространства .

  • $Upcase — файл-таблица соответствия заглавных и прописных букв в именах файлов на текущем томе. Нужен в основном потому, что в NTFS имена файлов записываются в кодировке Unicode, которую составляют 65 тысяч различных символов, искать большие и малые эквиваленты которых очень нетривиально.

Что касается принципа организации данных на диске NTFS, то он условно делится на две части. Первые 12% диска отводятся под так называемую MFT зону — пространство, в которое растет метафайл MFT.

Запись каких-либо пользовательских данных в эту область невозможна. MFT-зона всегда держится пустой. Это делается для того, чтобы самый главный, служебный файл (MFT) не фрагментировался при своем росте. Остатьные 88% диска представляют собой обычное пространство для хранения файлов.

Однако при нехватке дискового пространства MFT-зона может сама уменьшаться (если это возможно), так что никакого дискомфорта вы замечать не будете. При этом новые данные уже будут записываться в бывшую MFT-зону.

В случае последующего высвобождения дискового пространства MFT-зона снова будет увеличиваться, однако в дефрагментированном виде (то есть не единым блоком, а несколькими частями на диске). В этом нет ничего страшного, просто считается, что система более надежна, когда MFT-файл не дефрагментирован. Кроме того, при недефрагменгированном MFT-файле вся файловая система работает быстрее. Соответственно, чем более дефрагменгированным является MFT-файл, тем медленней работает файловая система.

Точно узнать размер и степень фрагментации MFT-файла можно с по­мощью стандартной утилиты Дефрагментация диска (Disk Defragmenter), входящей в состав Windows ХР. Вызывается эта утилита следующим об­разом: Пуск -> Все программы -> Стандартные -> Служебные -> Дефраг­ментация диска.

Далее, в появившемся окне программы выберите NTFS-диск и нажмите на кнопку Анализ (Analyze), а по прошествии некоторого времени — Вы­вести отчет (View Report). Прокрутив полученную информацию чуть вниз, вы получите исчерпывающие сведения о вашем MFT-файле (рис. 3.3.1).

Рис. 3.3.1. Узнаем размер и степень дефрагментации MFT-файла