Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

лекция 11 Файловые системы

.pdf
Скачиваний:
198
Добавлен:
15.04.2015
Размер:
957.65 Кб
Скачать

того, чтобы самый главный, служебный файл (MFT) не фрагментировался при своем росте.

Остальные 88% диска представляют собой обычное пространство для хранения файлов.

MFT представляет собой централизованный каталог всех файлов диска. MFT

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

метафайлами, причем самый первый метафайл - сам MFT. Эти первые 16 элементов

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

Каждая запись идентифицирует один файл, расположенный на диске. При создании файла NTFS находит пустую запись в MFT, затем заполняет ей информацией о создаваемом файле.

NTFS - отказоустойчивая система, которая вполне может привести себя в корректное состояние при практически любых реальных сбоях. Любая современная файловая система основана на таком понятии, как транзакция - действие, совершаемое целиком и корректно или не совершаемое вообще. У NTFS просто не бывает промежуточных (ошибочных или некорректных) состояний - квант изменения данных не может быть поделен на до и после сбоя, принося разрушения и путаницу - он либо совершен, либо отменен.

Журналируемые файловые системы — это класс файловых систем, характерная черта которых — ведение журнала, хранящего список изменений, в той или иной степени помогающего сохранить целостность файловой системы.

Для минимизации проблем связанных с целостностью и минимизации времени перезапуска системы, журналируемая файловая система хранит список изменений,

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

«журналом» или «логом». Как только изменения файловой системы безопасно внесены в

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

добавляемые в базу данных организованны в транзакции.

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

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

NTFS - единственная файловая система в Windows, которая позволяет назначать

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

Еще одно полезное свойство файловой системы NTFS - это возможность введения

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

После установки квот пользователь может хранить на томе ограниченный объем данных,

в то время как на этом диске может оставаться свободное пространство. Если пользователь превысит выданную ему квоту, в журнал событий будет внесена соответствующая запись.

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

уникальный идентификационный номер, что гарантирует их правильное нахождение в системе, даже если папка или файл был перенесен.

Пример 1: осуществляется запись данных на диск. Вдруг выясняется, что в то место,

куда мы только что решили записать очередную порцию данных, писать не удалось -

физическое повреждение поверхности. Поведение NTFS в этом случае довольно логично:

транзакция записи откатывается целиком - система осознает, что запись не произведена.

Место помечается как сбойное, а данные записываются в другое место - начинается новая транзакция.

Пример 2: более сложный случай - идет запись данных на диск. Вдруг отключается питание и система перезагружается. На какой фазе остановилась запись, где есть данные,

а где чушь? На помощь приходит журнал транзакций. Дело в том, что система, осознав свое желание писать на диск, пометила в метафайле $LogFile это свое состояние.

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

Под NT (Windows 2000) использовать какую-либо файловую систему, отличную от

NTFS, нецелесообразно. Это значит существенно ограничивать удобство и гибкость работы самой операционной системы. NT, а особенно Windows 2000, составляет с NTFS

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

FAT или FAT32 имеет смысл лишь для совместимости - если у вас стоит задача читать эти диски из каких-либо других систем.