Из чего состоит атрибут ntfs

Обновлено: 07.07.2024

Файловая система NTFS представляет собой выдающееся достижение структуризации: каждый элемент системы представляет собой файл - даже служебная информация. Самый главный файл на NTFS называется MFT , или Master File Table - общая таблица файлов. Именно он размещается в MFT зоне и представляет собой централизованный каталог всех остальных файлов диска, и себя самого. MFT поделен на записи фиксированного размера (обычно 1 Кбайт), и каждая запись соответствует какому либо файлу. Первые 16 файлов носят служебный характер и недоступны операционной системе - они называются метафайлами, причем самый первый метафайл - сам MFT. Эти первые 16 элементов MFT - единственная часть диска, имеющая фиксированное положение. Интересно, что вторая копия первых трех записей, для надежности хранится ровно посередине диска. Остальной MFT-файл может располагаться, как и любой другой файл, в произвольных местах диска - восстановить его положение можно с помощью его самого, "зацепившись" за самую основу - за первый элемент MFT.

Дескриптор MFT можно определить как набор атрибутов, включая атрибут - имя файла, атрибут - дескриптор защиты и атрибут – данные. NTFS обозначает ат­рибут его именем, записанным прописными буквами, перед которым стоит знак доллара ($) например: $FILENAME или $ DA ' I ' A . Однако на самом деле эти имена атрибутов соответствуют числовым кодам типа, которые NTFS использует для упорядочения атрибутов внутри дескриптора.

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

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

Метафайлы

Метафайлы находятся корневом каталоге NTFS диска - они начинаются с символа имени "$". Метафайлы и их назначение:

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

$ LogFile файл поддержки журналирования (см. ниже)

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

$ AttrDef список стандартных атрибутов файлов на томе

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

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

$ Quota файл, в котором записаны права пользователей на использование дискового пространства (начал работать лишь в NT5)

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

Файловая запись MFT содержит либо все атрибу­ты данного файла, либо отображения VCN - LCN , которые определяют, где на диске расположены значения нерезидентных атрибутов файла.

В процессе работы NTFS записывает информацию в еще один важный файл метаданных — журнал транзакций ( log file ). В журнале транзакций ре­гистрируются все операции, влияющие на структуру тома, включая создание файла и любые команды, изменяющие структуру каталогов. Журнал транзакций применяется для восстановления тома NTFS после сбоя системы.

Еще одна запись MFT зарезервирована для корневого каталога (известного также как "\"). Эта запись содержит индекс файлов и каталогов, хранящихся в корне структуры каталогов NTFS. Получив первый запрос на открытие некото­рого файла, NTFS начинает поиск этого файла с файловой записи корневого каталога. После того как файл открыт, NTFS запоминает его файловую ссылку, чтобы при последующих операциях ввода-вывода обращаться к записи MFT этого файла напрямую.

Схема распределения пространства на томе хранится NTFS в файле бито­вой карты ( bitmap file ). Атрибут данных этого файла содержит битовую карту, каждый бит которой представляет один кластер тома и указывает, свободен ли данный кластер или занят некоторым файлом.

Другой важный системный файл — загрузочный файл ( boot file ), в котором хранится код начального загрузчика Windows NT . Для того чтобы можно было загрузить ОС, код начальной загрузки должен располагаться в определенном ме­сте диска. Однако при форматировании утилита Format определяет эту область как файл, создавая для нее файловую запись. Благодаря созданию загрузочного файла NTFS может придерживаться своего правила рассматривать все, находя­щееся в томе, как файлы. Загрузочный файл, как и файлы метаданных NTFS , имеет отдельную защиту при помощи дескрипторов защиты, которые применяются к любым объектам Windows NT . Модель "нее, что находится на диске, есть файл" означает также, что начальный загрузчик можно модифицировать путем обычных операций файлового ввода-вывода, хотя н настоящее время загрузоч­ный файл защищен от редактирования.

Дескриптор файла в NTFS

Вся информа­ция файла хранится в его атрибутах, и таким образом, ряды и колонки MFT описывают всю информацию, хранящуюся на томе NTFS. Размер дескриптора (записи) в MFT для тома — минимум 1 Кбайт и максимум 4 Кбайт — определяется во время его форматирования.

Атрибуты файла в записях (дескрипторах) MFT расположены в порядке возрастания чис­ловых значений кодов типа, некоторые типы атрибутов могут встре­чаться в записи более одного раза. Атрибуты, которые обя­зательны для каждого файла: атрибут стандартной информации, атрибут имени файла, атрибут дескриптора защиты и атрибут данных. В записи MFT могут встре­чаться и другие атрибуты, если они необходимы для данного файла.

Каждый атрибут в файловой записи имеет имя (необязательное) и значе­ние. Имена используются в основном с атрибутами данных для идентификации второго или третьего потока данных в файле. Значение атрибута — это поток байтов, составляющих его. Для маленького файла все его атрибуты и их значения (например, данные файла) умещаются в файловой записи. Если значе­ние атрибута хранится непосредственно в MFT, он называется резидентным атрибутом ( resident attribute ).

В начале каждого атрибута расположен стандартный заголовок, содержа­щий информацию о данном атрибуте, которую NTFS использует для стандарт­ной обработки всех типов атрибутов. Заголовок, который всегда является рези­дентным, содержит информацию о том, является ли атрибут резидентным или нерезидентным. В случае резидентного атрибута заголовок содержит также смещение значения атрибута относительно заголовка и длину этого значения для атрибута-имени файла.

Если значение атрибута хранится непосредственно в MFT, время, необхо­димое NTFS для доступа к нему, значительно сокращается.

Атрибуты, значения которых хранятся не в MET, а в отрезках, называют­ся нерезидентными атрибутами ( nonresident attributes ). ФС определяет, являет­ся ли данный атрибут резидентным или нерезидентным; способ размещения дан­ных прозрачен для программы, осуществляющей доступ к ним.

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

Только те из стандартных атрибутов, размер которых может возрастать, бывают нерезидентными. Для файла такие атрибуты — это дескриптор защиты, данные, список атрибутов и расширенные атрибуты HPFS. Атрибуты стандартной информации и имени файла всегда резидентные.

Пример (фрагмент, процедура) определяющая номера кластеров расположения нерезидентрого файла на диске на основе анализа цепочки данных файлового дескриптора. Функция печатает список кластеров:

Комментарии для "Вопрос 10. Файловая система NTFS : структура системных файлов, их назначение. Файловый дескриптор, анализ его структуры для резидентного и нерезидентного файла. "

Анализ области блоков VCN
Файл, записанный в разделе NTFS, может быть сегментирован. Он состоит из одного или несколь¬ких фрагментов, называемых экс¬тентами. Размер и расположение каждою экстен-та описывается в блоке VCN. В зависимости оттого, фрагментирован файл или нет, об¬ласть VCN может содержать один блок или их набор. Блоки VCN имеют переменный раз-мер, опре¬деляемый первым байтом.
Формат блока стоит показать на конкретном примере. Возьмем пер¬вый блок VCN, имею-щий в рассма¬триваемом примере смещение 0138 относительно начала записи MFT: 21 20 DA 4C
Тетрады первого байта со значе¬нием 21 определяют размеры двух полей блока VCN. Пер-вое поле, имеющее длину один байт, хранит количество кластеров, выделенных экстенту файла. Второе поле разме¬ром два байта содержит номер пер¬вого кластера. В данном слу-чае первому экстенту файла $MFT вы¬делено 20 кластеров, а номер пер¬вого кластера для первого экстента равен 4CDA. Таким образом опре¬деляем размер и расположение первого экстента файла.
Второй блок VCN расположен сразу вслед за первым: 32 10 23 DO E5 05
Для того чтобы определить пер¬вый кластер второго экстента, не¬обходимо прибавить к ад-ресу пер¬вого экстента смещение, указанное во втором блоке VCN (с учетом зна¬ка). В дан-ном случае второй экстент размещен в кластере с номером 4CDA + 05E5D0 = 632AA. Длина второго экстента составляет 2310 кластера.
Анализируя остальные блоки VCN, можно определить размеры и расположение всех экс-тентов фай¬ла. Список блоков VCN закрывает¬ся байтом с нулевым значением (подчеркнут толстой линией).


Стандарт файловой системы NTFS версии 3.1 появился в 2001 году с выходом на рынок Windows XP и с тех пор не претерпел фундаментальных изменений. В Windows 10 также используется NTFS v3.1. Архитектуру и особенности внутреннего устройства этой файловой системы Крис Касперски подробно описал в своей книге «Восстановление данных», которая сейчас готовится к переизданию. Мы публикуем отрывок из этой книги, где Крис рассказывает о том, что представляет собой NTFS изнутри.

NTFS с высоты птичьего полета

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

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

Основным служебным файлом является главная файловая таблица, $MFT (Master File Table) — своеобразная база данных, хранящая информацию обо всех файлах тома: их именах, атрибутах, способе и порядке размещения на диске. Каталог также является файлом особого типа, со списком принадлежащих ему файлов и вложенных подкаталогов. Важно подчеркнуть, что в MFT присутствуют все файлы, находящиеся во всех подкаталогах тома, поэтому для восстановления диска наличия файла $MFT будет вполне достаточно.

Остальные служебные файлы, называемые метафайлами (metafiles) или метаданными (metadata), всегда имеют имена, начинающиеся со знака доллара ( $ ), и носят сугубо вспомогательный характер, интересный только самой файловой системе. К ним в первую очередь относится: $LogFile — файл транзакций, $Bitmap — карта свободного/занятого пространства, $BadClust — перечень плохих кластеров. Текущие версии Windows блокируют доступ к служебным файлам с прикладного уровня (даже с правами администратора!), и всякая попытка открытия или создания такого файла в корневом каталоге обречена на неудачу.

Классическое определение, данное в учебниках информатики, отождествляет файл с именованной записью на диске. Большинство файловых систем добавляет к этому понятие атрибута (attribute) — некоторой вспомогательной характеристики, описывающей время создания, права доступа и так далее. В NTFS имя файла, данные файла и его атрибуты полностью уравнены в правах. Иначе говоря, всякий файл NTFS представляет собой совокупность атрибутов, каждый из которых хранится как отдельный поток байтов. Поэтому, во избежание путаницы, атрибуты, хранящие данные файла, часто называют потоками (streams).

Каждый атрибут состоит из тела (body) и заголовка (header). Атрибуты подразделяются на резидентные (resident) и нерезидентные (non-resident). Резидентные атрибуты хранятся непосредственно в $MFT , что существенно уменьшает грануляцию дискового пространства и сокращает время доступа. Нерезидентные атрибуты хранят в $MFT лишь свой заголовок, описывающий порядок размещения атрибута на диске.

Назначение атрибута определяется его типом (type), представляющим собой четырехбайтное шестнадцатеричное значение. При желании атрибуту можно дать еще и имя (name), состоящее из символов, входящих в соответствующее пространство имен (namespace). Подавляющее большинство файлов имеет по меньшей мере три атрибута. К их числу относится стандартная информация о файле (время создания, модификации, последнего доступа, права доступа), которая хранится в атрибуте типа 10h , условно обозначаемом $STANDARD_INFORMATION . Ранние версии Windows NT позволяли обращаться к атрибутам по их условным обозначениям, но начиная с Windows 2000 мы лишены этой возможности. Полное имя файла (не путать с путем!) хранится в атрибуте типа 30h ( $FILE_NAME ).

Если у файла есть одно или несколько альтернативных имен, таких атрибутов может быть и несколько. Здесь же хранится ссылка (file reference) на родительский каталог, позволяющая разобраться, к какому каталогу принадлежит данный файл или подкаталог. По умолчанию данные файла хранятся в безымянном атрибуте типа 80h ( $DATA ). Однако при желании прикладные программы могут создавать дополнительные потоки данных, отделяя имя атрибута от имени файла знаком двоеточия (например: ECHO xxx > file:attr1; ECHO yyy > file:attr2; more < file:attr1; more < file:attr2 ).

Изначально в NTFS была заложена способность индексации любых атрибутов, значительно сокращающая время поиска файла по заданному списку критериев (например, времени последнего доступа). Индексы хранятся в виде двоичных деревьев, поэтому среднее время выполнения запроса оценивается как O(lg n) . На практике в большинстве драйверов NTFS реализована индексация лишь по имени файла. Как уже говорилось ранее, каталог представляет собой файл особого типа — файл индексов. В отличие от FAT, где файл каталога представляет собой единственный источник данных об организации файлов, в NTFS файл каталога используется лишь для ускорения доступа к содержимому каталога. Он не является обязательным, так как ссылка на родительский каталог всякого файла в обязательном порядке присутствует в атрибуте его имени ( $FILE_NAME ).

Продолжение доступно только участникам

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее

Вариант 2. Открой один материал

Крис Касперски

Известный российский хакер. Легенда ][, ex-редактор ВЗЛОМа. Также известен под псевдонимами мыщъх, nezumi (яп. 鼠, мышь), n2k, elraton, souriz, tikus, muss, farah, jardon, KPNC.

Object Id

В данной теме я рассмотрю четыре вида метаданных, которые могут быть прикреплены к файлу или каталогу средствами файловой системы NTFS. Я опишу, в каких целях можно использовать тот или иной тип метаданных, приведу пример его применения в какой-либо технологии Microsoft или стороннем программном обеспечении.

Речь пойдёт о точках повторной обработки (reparse points), идентификаторах объектов (object id) и о других типах данных, которые может содержать файл помимо своего основного содержимого.

Object Id

Идентификатор объекта это 64 байта, которые можно прикрепить к файлу или каталогу. Из них первые 16 байт позволяют однозначно идентифицировать файл в пределах тома и обращаться к нему не по имени, а по идентификатору. Остальные 48 байт могут содержать произвольные данные.

Идентификаторы объектов существуют в NTFS со времён Windows 2000. В самой системе они используются для отслеживания расположения файла, на который ссылается ярлык (.lnk). Допустим, файл, на который ссылается ярлык, был перемещён в пределах тома. При запуске ярлыка он всё равно откроется. Специальная служба Windows в случае, если файл не найден, произведёт попытку открыть файл не по его имени, а по заранее созданному и сохранённому идентификатору. Если файл не был удалён и не покидал пределы тома, он откроется, а ярлык снова будет указывать на файл.

Идентификаторы объектов использовались в технологии iSwift Антивируса Касперского 7-ой версии. Вот как описана эта технология: Технология разработана для файловой системы NTFS. В этой системе каждому объекту присваевается NTFS-индентификатор. Этот индентификатор сравнивается с значениями специальной базы данных iSwift. Если значения базы данных с NTFS-индентификатором не совпадают, то объект проверяется или перепроверяется, если он был изменен.

Впрочем, переизбыток созданных идентификаторов вызывал проблемы со сканированием диска стандартной утилитой проверки chkdsk, она происходила слишком долго. В следующих версиях Антивируса Касперского отказались от использования NTFS Object Id.

Reparse Point

Символьная ссылка изнутри

В файловой системе NTFS файл или каталог может содержать в себе reparse point, что переводится на русский язык как «точка повторной обработки». В файл или каталог добавляются специальные данные, файл перестаёт быть обычным файлом и обработать его может только специальный драйвер фильтра файловой системы.

В Windows присутствуют типы reparse point, которые могут быть обработаны самой системой. Например, через точки повторной обработки в Windows реализуются символьные ссылки (symlink) и соединения (junction point), а также точки монтирования томов в каталог (mount points).
Reparse-буфер, присоединяемый к файлу это буфер, имеющий максимальный размер 16 килобайт. Он характеризуется наличием тега, который говорит системе о том, к какому типу принадлежит точка повторной обработки. При использовании reparse-буфера собственного типа ещё необходимо задавать в нём GUID в специальном поле, а в reparse-буферах Microsoft он может отсутствовать.

Какие типы точек повторной обработки существуют? Перечислю технологии, в которых используются reparse point'ы. Это Single Instance Storage (SIS) и Cluster Shared Volumes в Windows Storage Server 2008 R2, Hierarchical Storage Management, Distributed File System (DFS), Windows Home Server Drive Extender. Это технологии Microsoft, здесь не упомянуты технологии сторонних компаний, использующие точки повторной обработки, хотя такие тоже есть.

Extended Attributes

Расширенные атрибуты файла. Про них был мой предыдущий топик. Здесь стоит упомянуть только то, что под Windows эта технология практически не применяется. Из известного мне программного обеспечения только Cygwin использует расширенные атрибуты для хранения POSIX прав доступа. У одного файла на NTFS могут быть или расширенные атрибуты, или буфер точки повторной обработки. Одновременная установка и того и другого невозможна. Максимальный размер всех расширенных атрибутов у одного файла составляет 64 Кб.

Alternate Data Streams

Дополнительные файловые потоки. Про них знает уже, наверное, каждый. Перечислю основные признаки этого вида метаданных: именованность (то есть у файла может быть несколько потоков, и у каждого своё имя), прямой доступ из файловой системы (их можно открывать, используя формат «имя файла, двоеточие, имя потока»), неограниченный размер, возможность запуска процесса прямо из потока (и возможность реализовать через это бесфайловый процесс).

Так пользователю даётся дополнительная защита от необдуманного запуска программ, полученных из интернета. Это лишь одно применение потоков, а так в них можно хранить самые разные данные. Упомянутый Антивирус Касперского хранил там контрольные суммы каждого файла, но позже от этой технологии тоже по какой-то причине отказались.

Что-нибудь ещё?

Есть ещё идентификатор безопасности, плюс стандартные атрибуты файла, к которым нет прямого доступа, несмотря на то, что они тоже реализованы как потоки файлов. И они, и расширенные атрибуты, и reparse и object id — всё это потоки файла с точки зрения системы. Напрямую изменять идентификатор безопасности, показанный на следующей картинке как ::$SECURITY_DESCRIPTOR смысла нет, пусть его изменением занимается система. К другим типам потоков сама система не даёт прямого доступа. Так что на этом всё.

Просмотр содержимого object id, точек повторной обработки, а также работа с расширенными атрибутами и альтернативными файловыми потоками возможна с помощью программы NTFS Stream Explorer, а также через системную консольную утилиту fsutil.

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

Если атрибуты файла вмещаются в файловую запись, они называются резидентными атрибутами. Такими атрибутами всегда являются имя файла и дата его создания. В тех случаях, когда информация о файле слишком велика, чтобы вместиться в одну MTF – запись, некоторые атрибуты файла становятся нерезидентными. Резидентные атрибуты хранятся в одном или более кластерах и представляют собой поток альтернативных данных для текущего тома ( об этом – чуть ниже). Для описания местонахождения резидентных и нерезидентных атрибутов NTFS создает атрибут Attribute List.

В табл. 7 показаны основные атрибуты файлов, определенные в NTFS. В будущем этот список может быть расширен.

Атрибут Описание
Standart Information Содержит такую стандартную информацию, как дата создания и число ссылок
Attribute List Список местонахождения всех атрибутов, размещенных вне записи MTF
File Name Повторяющийся атрибут для длинных и коротких имен файлов. Длинное имя файла состоит из 13 – 255 символов Unicode, короткое представлено в формате 8.3. Возможно использование дополнительных имен, например, в формате Posix
Security Descriptor Информация о том, кто является владельцем файла и кто имеет доступ к файлу
Data Данные, содержащиеся в файле. NTFS позволяет использовать более одного атрибута этого типа для каждого файла. Каждый файл обычно имеет наименованный атрибут типа Data. Помимо этого файл может иметь дополнительные именованный атрибуты данного типа, каждый из которых использует собственный синтаксис.
Object ID Уникальный в рамках тома идентификатор файла. Используется сервисом слежения за ссылками
Logged Tool Stream Схож с потоковыми операциями, но в данном случае изменения заносятся в протокол. Используется Encrypting File System (EFS) – файловой системой с шифрованием, поддерживаемой в Windows 2000.
Reparse Point Использование при монтировании томов, драйверами – фильтрами и в ряде других случаев
Index Root Используется для реализации каталогов и других индексов
Index Allocation Используется для реализации каталогов и других индексов
Bitman Используется для реализации каталогов и других индексов
Volume Information Используется только в системном файле $Volume. Содержит версию тома
Volume Name Используется только в системном файле $Volume. Содержит метку тома.

Файловая система CDFS

В Windows 2000 обеспечивается поддержка файловой системы CDFS, отвечающей стандарту ISO 9660, описывающему расположение информации на CD – ROM. Поддерживаются длинные имена файлов в соответствии с ISO 9660 Level 2.

При создании CD – ROM для использования под управлением Windows 2000 следует иметь в виду следующее:

- все имена каталогов и файлов должны содержать менее 32 символов

- все имена каталогов и файлов должны состоять только из символов верхнего регистра

- глубина каталогов не должна превышать 8 уровней от корня;

- использование расширений имен файлов не обязательно.

UNIVERSAL DISK FORMAT

Поддержка файловой системы UDF является одним из новшеств в Windows 2000. Universal Disk Format – это файловая система, отвечающая стандарту ISO 13346 и используемая для обмена данными с накопителями CD – ROM и DVD. В настоящее время поддерживаются только диски версий UDF 1.02 и 1.50.

На этом мы закончим рассмотрение файловых систем, поддерживаемых в Microsoft Windows 2000, и перейдем к обслуживанию их достоинств и недостатков, а также приведем рекомендации по их использованию.

Сравнение файловых систем.

Под управлением Microsoft Windows 2000 возможно использование файловых систем FAT 16, FAT 32, NTFS или их комбинаций. Выбор операционной системы зависит от следующих критериев:

- того, как используется компьютер

- размера и числа жестких дисков

Файловые системы FAT

Как вы уже могли заметить, цифры в названии файловых систем – FAT 16 и FAT 32 - указывают на число бит, необходимых для хранения информации о номерах кластеров, используемых файлом. Так, в FAT 16 применяется 16 – битная адресация и, соответственно, возможно использование до 2\16 адресов. В Windows 2000 первые четыре бита таблицы расположения фалов FAT 32 необходимы для собственных нужд, поэтому в FAT 32 число адресов достигает 2\28.

В табл. 8 показаны размеры кластеров для файловых систем FAR 16 и FAT32 .

Размер диска Размер кластера FAT16 Размер кластера FAT32
260 – 511 Мбайт Не поддерживается
512 – 1023 Мбайт
1024 – 2 Гбайт
2 – 8 Гбайт Не поддерживается
8 – 16 Гбайт Не поддерживается
16 – 32 Гбайт Не поддерживается
Более 32 Гбайт Не поддерживается

Помимо существенных отличий в размере кластера FAT 32 также позволяет корневому каталогу расширяться (в FAT 16 число вхождений ограничено 512 и может быть даже ниже при использовании длинных имен файлов).

Преимущества FAT 16:

Среди преимуществ FAT 16 можно отметить следующие:

- файловая система поддерживается операционными системами MS – DOS, Windows 95, Windows98, Windows NT, Windows 2000, а также некоторыми операционными системами UNIX

- существует большое число программ, позволяющих исправлять ошибки в этой файловой системе и восстанавливать данные,

- при возникновении проблем с загрузкой с жесткого диска система может быть загружена с флоппи – диска.

- Данная файловая система достаточно эффективна для томов объемом менее 256 Мбайт.

Недостатки FAT 16

К основным недостаткам FAT 16 относятся:

- корневой каталог не может содержать больше 512 элементов. Использование длинных имен файлов существенно сокращает число этих элементов

- FAT 16 поддерживает не более65 536 кластеров, а так как некоторые кластеры зарезервированы операционной системой, число доступных кластеров – 65 524. Каждый кластер имеет фиксированный размер для данного логического устройства. При достижении максимального число кластеров при их максимальном размере (32 Кбайт) максимальный объем поддерживаемого тома ограничивается 4 Гбайт (под управлением Windows 2000). Для поддержания совместимости с VS - DO– , Windows 95 и объем тома под FAT 16 не должен превышать 2 Гбайт

- Не поддерживается резервная копия загрузочного сектора

- В FAT 16 не поддерживается встроенная защита файлов и их сжатие

- На дисках большого объема теряется много места за счет того, что используется максимальный размер кластера. Место под файл выделяется исходя из размера не файла, а кластера.

Преимущества FAT 32

Среди преимуществ FAT 32 можно отметить следующие:

- выделение дискового пространства выполняется более эффективно, особенно для дисков большого объема

- корневой каталог в FAT 32 представляет собой обычную цепочку кластеров и может находиться в любом месте диска. Благодаря этому FAT 32 не накладывает никаких ограничений на число элементов в корневом каталоге

- за счет использования кластеров меньшего размера (4 Кбайт на дисках объемом до 8 Гбайт) занятое дисковое пространство обычно на 10 – 15% меньше, чем под FAT 16

- FAT 32 является более надежной файловой системой. В частности, она поддерживает возможность перемещение корневого каталога и использования резервной копии FAT. Помимо этого загрузочная запись содержит ряд критичных для файловой системы данных.

Недостатки FAT 32

Основные недостатки FAT 32 :

- размер тома при использовании FAT 32 под Windows 2000 ограничен 32 Гбайт

- тома FAT 32 недоступны из других операционных систем – только из Windows 95 OSR2 и Windows 98

- не поддерживается резервная копия загрузочного сектора

- в FAT 32 не поддерживается встроенная защита файлов и их сжатие

Файловая система NTFS

В апреле 1997г. Microsoft и IBM начали совместную разработку новой операционной системы OS\2. Под эту ОС специально была разработана файловая система, призванная обеспечить стабильную и быструю работу с диском и облегчить труд администраторов. Но некоторые разногласия компаний привели к тому, что в сентябре 1990г. сотрудничество было прекращено и каждый пошел своей дорогой. В результате мир получил OS\2 и файловую систему HPFS от IBM и Windows NT с файловой системой NTFS от Microsoft . У файловых систем было много общего, и до версии Windows NT 3.51 включительно Microsoft обеспечивала в своих операционных системах поддержку HPFS.

На сегодняшний день из семейства Windows файловую систему NTFS поддерживают только те операционные системы, которые базируются на ядре NT. Это Windows NT 3.хх, Windows 2000 и Windows XP.

При работе в Windows 2000 Microsoft рекомендуется отформатировать все разделы жесткого диска под NTFS, за исключением тех конфигураций, когда используется несколько операционных систем (кроме Windows 2000 и Windows NT) . Применение NTFS вместо FAT позволяет использовать функции, доступные в NTFS. К ним, в частности, относятся:

- возможность восстановления. Эта возможность «встроена» в файловую систему. NTFS гарантирует сохранность данных за счет того, что использует протокол и некоторые алгоритмы восстановления информации. В случае системного сбоя NTFS использует протокол и дополнительную информацию для автоматического восстановления целостности файловой системы

- сжатие информации. Для томов NTFS Windows 2000 поддерживает сжатие отдельных файлов. Такие сжатые файлы могут использоваться Windows 2000 - приложениями без предварительной распаковки, которая происходит автоматически при чтении из файла. При закрытии и сохранении файл снова упаковывается

Помимо этого, можно выделить следующие преимущества NTFS :

1. некоторые функции операционной системы требуют наличия NTFS

2. скорость доступа намного выше - NTFS минимизирует число обращений к диску, требуемых для нахождения файла

3. защита файлов и каталогов. Только на томах NTFS возможно задание атрибутов доступа к файлам и папкам

4. при использовании NTFS Windows 2000 поддерживает тома объемом до 2 Тбайт

5. файловая система поддерживает резервную копию загрузочного сектора – она располагается в конце тома

6. NTFS поддерживает систему шифрования Encrypted File System, обеспечивающую защиту от неавторизированного доступа к содержимому файлов

7. При использовании квот можно ограничить объем дискового пространства, занимаемого пользователями

Читайте также: