Автор работы: Пользователь скрыл имя, 17 Октября 2013 в 13:35, реферат
Файловая система Windows NT (NTFS) обеспечивает такое сочетание производительности, надежности и эффективности, которое невозможно предоставить с помощью любой из реализаций FAT (как FAT16, так и FAT32). Основными целями разработки NTFS являлись обеспечение скоростного выполнения стандартных операций над файлами (включая чтение, запись, поиск) и предоставления дополнительных возможностей, включая восстановление поврежденной файловой системы на чрезвычайно больших дисках.
Однако главное достоинство NTFS - журналирование и методы, которыми файловая система проводит операции с данными. Любое действие в разделе NTFS выполняется транзакцией. Транзакция - это пакет операций, который или выполняется полностью или не выполняется совсем, третьего не дано. Любое действие с данными записывается в журнал; из него в случае какого-либо сбоя в дальнейшем можно узнать, какая транзакция не смогла успешно завершиться и почему. Основные объекты NTFS ко всему прочему зеркалируются, т. е. делается резервная копия загрузочной записи и некоторых элементов MFT. Такая логика операций с данными приводит к высокой стабильности файловой системы. Сбой во время дефрагментации, скорее всего, будет просто незаметен для пользователя, в то время как для FAT32 такая ошибка стала бы в большинстве случаев фатальной.
Прежде всего, следует упомянуть о том, какие именно операции журналируются. Совершенно очевидно, что полный undo-файл, способный откатить абсолютно все операции, абсолютно невозможен как с точки зрения быстродействия, так и с точки зрения здравого смысла. Да, такое журналирование дало бы возможность восстановить большее число данных - например, при осуществлении перезаписи трех мегабайт в середине файла мы могли бы сначала сохранить новые данные в логе, затем переписать туда же предыдущие три мегабайта файла, и уж только затем осуществлять операции с реальными данными. Такой подход гарантировал бы полную определенность с судьбой информации - мы всегда смогли бы понять, какая часть данных уже записалась на диск, а какая находится в исходном, не обновленном состоянии. Он имеет всего один скромный недостаток - небольшая накладочка по быстродействию: для записи на диск трех мегабайт мы вынуждены будем осуществить разнообразные дисковые операции на объем в три раза больший - девять мегабайт. Да, полное журналирование также применяется - но в основном при работе с базами данных.
Подход разработчиков NTFS был принципиально иным. Главный девиз был, видимо, не "надежность любой ценой", а "неизменность быстродействия". Журналирование просто не должно было помешать работе файловой системы . Первый логичный шаг - отменить полное журналирование как абсолютно неприемлемое с точки зрения быстродействия. В NTFS применяется журналирование логических структур, а не данных пользователя - отсюда и идет фраза, что сохранность данных не гарантируется, но, тем не менее, корректное состояние самой системы будет поддерживаться. То, что NTFS не журналирует данные файлов, приводит на практике к одному варианту потери данных - в том же гипотетическом случае записи трех мегабайт, в случае сбоя в процессе записи никогда уже не удастся установить, какая часть данных записалась, а какая осталась неизменна. Операции, которые, тем не менее, журналируются системой - это операции со структурами самой системы, то есть с файлами и каталогами: добавление файлов, переименование, перенос, создание и удаление (освобождение свободного места). Журналируются также и операции дефрагментации - то есть перемещения фрагментов файлов. Одним словом, все логические операции журналированы.
В NTFS существуют такие понятия, как жесткая ссылка и точка присоединения.
Жесткими (Hard Links) являются ссылки на такие файлы или каталоги (их может быть несколько), которые указывают на одну и ту же запись в главной таблице файлов, т. е. один и тот же элемент (файл или каталог) имеет несколько имен, а чтобы его удалить, необходимо уничтожить все ссылки на него. Тогда на счетчике указателей соответствующей этому элементу записи в MFT окажется ноль, а данные этого элемента будут стерты.
Точка присоединения (Reparse Point) - это, грубо говоря, ссылка, указывающая на какой-либо каталог (понятие <точка присоединения> нельзя применять к файлам). С ее помощью можно создать некий виртуальный каталог-дублер, неотличимый от оригинала, но располагающийся в другом месте структуры каталогов. Это бывает полезно при администрировании и работе с файлами.
Точка монтирования отличается от точки присоединения тем, что применяется не к каталогам, а к томам (логическим дискам). То есть если примонтировать диск D: к каталогу C:\Distrib, раздел D: как бы вообще перестает существовать для пользователя; к любому файлу бывшего диска D: он может обращаться через C:\Distrib.
Жесткая ссылка, точка присоединения и точка монтирования объединяются общим понятием <точка повторной обработки>.
Для администраторов серверов пригодится сервис квотирования - разграничение свободного пространства, доступного пользователю. Хотя на домашнем или обычном рабочем компьютере это не так уж и актуально.
Рассматриваемая файловая система обладает еще одной интересной функцией - возможностью сжатия. Сжатым может быть каталог, файл или даже часть файла. И уплотненный элемент не будет чем-либо отличаться от обычного в <понимании> приложений, его использующих. Таким образом, достигается увеличение свободного пространства, но время доступа к данным возрастает.
Несколько хуже у NTFS обстоят дела с фрагментацией, особенно когда диск заполнен более чем на 88%. Выход в дефрагментации, но здесь есть проблема. Практически ни одна из созданных для этого программ не способна провести нормальную оптимизацию, поскольку возможности используемых ими стандартных функций ОС очень ограниченны. В результате этот процесс придется повторять чуть ли не каждый месяц. Один из немногих, а может быть, и единственный дефрагментатор, который способен исправить ситуацию, - Speed Disk из пакета программ Norton Utilities. Его методы работы позволяют обходить ограничения, наложенные функциями ОС.