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

СОДЕРЖАНИЕ: Содержание Введение … 3 Общие сведения о файловых системах . .. ..3

Содержание

Введение…………………………………………………………………....................................3

1. Общие сведения о файловых системах …………………………………….…………..……..3

2. Файловая система FAT…………………………………………………………………………4

3. Файловая система FAT32…………………………….………………………………………...5

4. Файловая система HPFS……………………………………………..........................................6

5. Файловая система NTFS………………………………………………………………………..8

6. Файловая система ОС семейства UNIX……………………………………………………...11

Заключение…………………………………………………………………..............................12

Список литературы……………………………………………………………………….……14

Введение

В настоящее время на одном диске в среднем записывается несколько десятков тысяч файлов. Как разобраться во всем этом многообразии с тем, чтобы точно адресоваться к файлу? Назначение файловой системы – эффективное решение указанной задачи.

Файловая система с точки зрения пользователя – это «пространство», в котором размещаются файлы. Как научный термин – этоспособ хранения и организации доступа к данным на информационном носителе или его разделе. Наличие файловой системы позволяет определить, как называется файл, где он находится. Поскольку на IBMPC – совместимых компьютерах информация храниться в основном на дисках, то применяемые на них файловые системы определяют организацию данных именно на дисках (точнее, на логических дисках).

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

· Для носителей с произвольным доступом (например, жёсткий диск): FAT32, HPFS, ext2, ext3 и др.

· Для носителей с последовательным доступом (например, магнитные ленты): QIC и др.

· Для оптических носителей – CD и DVD: ISO9660, ISO9690, HFS, UDF и др.

· Виртуальные файловые системы: AEFS и др.

· Сетевые файловые системы: NFS, CIFS, SSHFS, GmailFS и др.

· Для флэш-памяти: YAFFS, ExtremeFFS.

В данной работе рассмотрены файловые системы FAT, HPFS, NPFS, а также файловая система ОС семейства UNIX.

1. Общие сведения о файловых системах

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

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

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

Файловая система включает в себя систему каталогов и системы размещения файлов на диске, простейшей из которых считается FAT в MS-DOS. Эти системы определяют возможности и эффективность манипулирования файлами – создания, записи, чтения, поиска, модификации, удаления, восстановления удаленных файлов, – а также средства восстановления файловой системы после сбоев, вызванных неисправностями и некорректными действиями пользователей или программ. В многопользовательских системах появляется еще одна задача: защита файлов одного пользователя от несанкционированного доступа другого пользователя, а также обеспечение совместной работы с файлами, к примеру, при открытии файла одним из пользователей, для других этот же файл временно будет доступен в режиме «только чтение».

2. Файловая система FAT

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

FAT является самой распространенной файловой системой и поддерживается подавляющим большинством операционных систем. Сначала FAT была 12-разрядной и позволяла работать с дискетами и логическими дисками объемом не более 16 Мбайт. В MS-DOS версии 3.0 таблица FAT стала 16-разрядной для поддержки дисков большей емкости, а для дисков объемом до 2 047 Гбайт используется 32-разрядная таблица FAT.

Файловая система FAT представляет собой таблицу размещения файлов, в которой указываются:

  • непосредственно адреса участков логического диска, предназначенные для размещения файлов;
  • свободные области дискового пространства;
  • дефектные области диска.

В этой таблице каждому блоку, предназначенному для хранения данных, соответствует 16-битовое значение. Если блок свободен, то значение будет нулевым. Если же блок принадлежит файлу, то значение равно адресу следующего блока этого файла. Если это последний блок в файле, то значение – OxFFF (рис. 1). Существует также специальный код для обозначения плохого блока, не читаемого из-за дефекта физического носителя. В каталоге хранится номер первого блока и длина файла, измеряемая в байтах. Емкость диска при использовании 12-битовой FAT ограничена 4096 блоками (2 Мбайт), что приемлемо для дискет, но совершенно не годится для жестких дисков и других устройств большой емкости. На таких устройствах DOS использует FAT с 16-битовыми элементами. На еще больших (более 32 Мбайт) дисках DOS выделяет пространство не блоками, а кластерами из нескольких блоков.

Рис.1 Структура файловой системы FAT

В таблице FAT кластеры, принадлежащие файлу или каталогу, связываются в цепочки. В 16-разрядной FAT можно иметь до 65536 кластеров. В операционных системах WindowsNT/2000/XP разделы FAT могут иметь до 4097 Мб. В этом случае кластер занимает 128 секторов диска.

Логическое объединение секторов в кластеры позволяет уменьшить размер таблицы FAT и ускорить доступ к файлу. Однако слишком большой размер кластера приводит к неэффективному использованию области данных, особенно при большом количестве маленьких файлов. Например, при размере кластера в 32 сектора (16 Кб) средняя величина потерь на файл составляет 8 Кб. Поэтому в современных файловых системах размер кластера не превышает 4 Кб.

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

Таблица FAT является основой данной файловой системы, поэтому она хранится на диске в двух экземплярах. Обновляются копии FAT одновременно, а для работы используется только первый экземпляр. Если он окажется поврежденным, то произойдет обращение ко второму экземпляру. Утилиты проверки и восстановления файловой системы при обнаружении несоответствия первичной и резервной таблицы FAT осуществляет восстановление основной таблицы, используя данные из её копии.

В файловой системе FAT дисковое пространство логического диска делится на системную область и область данных. Системная область создается и инициализируется при форматировании диска, а в последующем обновляется при работе. Область данных содержит файлы и каталоги, которые образуют на диске иерархическое дерево каталогов, с единственной директорией не входящей в другие – корневым каталогом. Область данных доступна через пользовательский интерфейс операционной системы. Системная область содержит загрузочную запись, зарезервированные сектора, таблицу размещения файлов и корневой каталог. Для каждого файла и каталога в файловой системе хранится справочная информация. Каждый элемент такого справочника занимает 32 байта и содержит: имя файла или каталога, расширение имени файла, атрибуты файла – системный, архивный, только для чтения и др., дату и время создания и последнего изменения файла, номер начального кластера, размер файла.

Система FAT очень проста и имеет одно серьезное достоинство: устойчивость к сбоям. В то же время у нее есть и ряд серьезных недостатков. Первый недостаток состоит в том, что при каждой операции над файлами система должна обращаться к FAT. Это приводит к частым перемещениям головок дисковода и в результате к резкому снижению производительности. Действительно, исполнение программы на одной и той же машине под MS DOS и под DOS-эмулятором систем UNIX или OS/2 различается по скорости почти в 1,5 раза. Особенно это заметно при архивировании больших каталогов.

Файловая система FAT 16 может иметь не более 65535 кластеров на логический диск, и это приводит к ограничению размера логического диска. С увеличением размера диска приходится увеличивать размер кластеров, что приводит к крайне неэффективному и бесполезному расходу дискового пространства.

3. Файловая система FAT32

FAT32 – последняя версия файловой системы FAT и улучшение предыдущей версии. Она была создана, чтобы преодолеть ограничения на размер тома в FAT16, позволяя при этом использовать старый код программ MS-DOS и сохранив формат. FAT32 использует 32-разрядную адресацию кластеров. FAT32 появилась вместе с Windows 95 OSR2.

FAT32 намного эффективнее расходует дисковое пространство. Кластеры в этой файловой системе меньше, чем кластеры в предыдущих версиях FAT. Следовательно, для дисков размером до 8 Гб FAT 32 может использовать кластеры размером 4 Кб. Таблица размещения файлов в FAT 32 может содержать до кластеров (в 32-разрядном коде, используемом для представления номера кластера, фактически используются только 28 разрядов). Система FAT 32 также может перемещать корневой каталог и использовать резервную копию FAT вместо стандартной. Расширенная загрузочная запись позволяет создавать копии важных структур данных. Это повышает устойчивость файловой системы к нарушениям структуры таблицы размещения данных. Корневой каталог представлен в виде обычной цепочки кластеров и может находиться в произвольном месте диска. Файловая система FAT 32 имеет ряд усовершенствований структуры корневого каталога. Для представления длинных имен используются элементы корневого каталога.

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

Длинное имя файла в VFAT представлено следующим образом.

Первые 11 байт элемента каталога DOS используются для хранения имени файла. Такое имя состоит из двух частей: в первых восьми байтах хранятся символы собственно имени, а в последних трех – символы расширения имени файла. Если имя состоит менее чем из восьми символов, то в элементе каталога оно дополняется символами пробела, для того чтобы полностью заполнить все восемь байтов. При работе с именем файла необходимость в отображении точки, которая используется для отделения имени файла от расширения, отпадает. В 12-ом байте элемента каталога хранятся атрибуты файла:

1) А – архив. Показывает, что файл был открыт программой имеющей возможность изменить его содержимое.

2) D – каталог. Показывает, что данный элемент указывает на подкаталог (папку), а не на файл.

3) V – том (volume). Применяется только к одному элементу каталога в корневом каталоге. В нем собственно и хранится имя дискового тома.

4) S – системный. Показывает, что файл является частью операционной системы или специально помечен подобным образом.

5) H – скрытый. К скрытым файлам относятся также системные файлы.

6) R – только для чтения. Указывает, что данный файл не следует изменять. Этот атрибут используется для примитивной защиты от ошибок пользователя.

На дисках с FAT12 или FAT16 следующие 10 байт не используются. На диске с FAT 32 они содержат различную информацию о файле. Тринадцатый байт зарезервирован для WindowsNT и в подсистеме DOS не используется.

Для длинного имени файла используется несколько элементов каталога. Таким образом, применение длинных имен приводит к уменьшению количества файлов, находящихся в корневом каталоге. Длинное имя может содержать до 256 символов и всего один файл с полным длинным именем займет до 25 элементов таблицы FAT. При этом на диске с файловой системой FAT16 максимальное число файлов в корневом каталоге сократится до 21. Поэтому необходимо избегать длинных имен файлов в корневом каталоге. Длина полной спецификации файла, включающая в себя путь к файлу и его имя, также ограничена. В файловой системе FAT32 успешно решена проблема длинных имен в корневом каталоге, но проблема с ограничением длинны полной файловой спецификации остается. Поэтому рекомендуется ограничивать длинные имена 75-80 символами, для того чтобы оставить достаточно места для пути к файлу.

4. Файловая система HPFS

Файловая система HPFS (высокопроизводительная файловая система) впервые появилась в операционной системе OS/2. HPFS является файловой системой для многозадачного режима работы, поддерживает длинные имена файлов, и обеспечивает высокую производительность при работе с дисками большого объема. Она, как и FAT, имеет древовидную структуру каталогов, но в ней еще предусмотрены автоматическая сортировка каталогов и специальные расширенные атрибуты, упрощающие обеспечение безопасности на файловом уровне и создание множественных имен. Расширенные атрибуты позволяют хранить дополнительную информацию о файле. Например, каждому файлу может быть сопоставлено его индивидуальное графическое изображение (значок).

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

Для достижения более этого в HPFS применяется:

· размещение каталогов в середине дискового пространства;

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

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

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

Файловый узел содержит размер файла и первые 15 символов имени файла, специальную служебную информацию, статистику доступа к файлу, расширенные атрибуты файла и список управления доступом.

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

Файловая система HPFS при записи файла на диск стремится избежать фрагментации. Если файл непрерывен то, его размещение описывается двумя 32-разрядными числами. Первое число представляет собой указатель на первый блок файла, а второе – длину экстента, то есть число следующих друг за другом блоков, принадлежащих файлу. Из этого следует, что максимальный объем диска в HPFS составляет 2 Тб. Если файл фрагментирован, то размещение его экстентов описывается дополнительными парами 32-разрядных чисел. Фрагментация происходит, когда на диске нет непрерывного свободного участка, достаточного для размещения файла целиком. В этом случае файл делится на несколько частей и располагается в разных местах диска. Файловая система HPFS старается поместить части фрагментированного файла как можно ближе друг к другу, для того чтобы сократить время позиционирования головок чтения/записи при чтении файла с жесткого диска. Также файловая система старается резервировать минимум 4 Кб места в конце файлов подлежащих изменению.

Пользовательская программа может указать размер файла при его создании. В этом случае система сразу попытается выделить место под файл так, чтобы он занимал как можно меньше экстентов. Если программа не сообщила размера файла, используется значение по умолчанию. Фактически, HPFS размещает место, под файл, начиная выделение с наибольшего непрерывного участка свободного пространства. В результате фрагментированными оказываются только файлы, длина которых увеличивалась многократно или же те, которые создавались при почти заполненном диске. При нормальной работе файл редко занимает больше 3-4 экстентов.

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

Большое значение для увеличения производительности HPFS имеет метод сбалансированных двоичных деревьев, используемый для хранения и поиска информации о местонахождении файлов. В файловой системе FAT каталог имеет линейную неупорядоченную структуру и при поиске файла необходимо последовательно просматривать его с самого начала. В HPFS структура каталога представляет собой сбалансированное дерево с записями, расположенными в алфавитном порядке. Каждая запись содержит атрибуты файла, указатель на соответствующий файловый узел, информацию о времени и дате создания, последнего изменения и обращения к файлу, о размере файла, счетчик обращения к файлу, информацию о длине имени файла и само имя, и другая подобная информация. Таким образом, при поиске файла в каталоге просматриваются только необходимые ветви двоичного дерева. Записи каталога заведомо не относящиеся к искомому файлу не рассматриваются.

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

Файловая система HPFS для исправления ошибок, возникающих при записи файлов на диск, использует механизм аварийного замещения. Информация, предназначенная для записи в сектор, оказавшийся дефектным, сохраняется в одном из запасных секторов, заранее зарезервированных на этот случай. Их список хранится в резервном блоке файловой системы. Затем происходит обновление карты аварийного замещения. Она представляет собой пары 32-разрядных чисел. Первое число такой пары указывает на дефектный сектор, а второе на сектор его замещающий. Очистка карты аварийного замещения выполняется программой CHKDISK при проверке тома HPFS. Для каждого замещенного блока (сектора) выделяется новый сектор в наиболее подходящем месте. Затем данные записываются в этот сектор, и обновляется информация о положении файла. После этого программа вносит поврежденный сектор в список дефектных блоков, и возвращает освобожденный сектор в список свободных запасных секторов резервного блока. После этого происходит удаление записей из карты аварийного замещения.

Существует еще одна реализация HPFS для работы на серверах – HPFS386.IFS. Ее отличие в том, что она позволяет посредством более полного использования расширенных атрибутов, организовать ограничение доступа к файлам, с помощью списков управления доступом. Также в этой системе нет ограничения на объем памяти, выделяемой для кэширования файловых записей. В HPFS этот объем не может превышать 2 Мб.

В HPFS386.IFS при установке режимов работы файлового КЭШа, есть возможность упорядочить запись на диск. Наиболее эффективен алгоритм, при котором операции записи данных из КЭШа на диск предварительно упорядочиваются так, чтобы сократить время, затрачиваемое на позиционирование головок чтения (записи).

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

Файловая система NTFS (файловая система новой технологии), как и многие другие файловые системы, делит дисковое пространство тома на кластеры размером от 512 байт до 64 Кб. На практике размер кластера обычно не превышает 4Кб. Все дисковое пространство в NTFS делится на две неравные части (рис.2). Первые 12% диска отводятся под зону MFT – главной таблицы файлов. Эта таблица представляет собой специальный файл, содержащий информацию о размещении всех остальных файлов. Остальные 88% тома представляют собой обычное пространство для записи файлов.

MFT Зона MFT

Зона для размещения

Файлов и каталогов

Копия первых 16 записей MFT

Зона для размещения

файлов и каталогов

Рис. 2 Структура тома NTFS

Таблица 1. Метафайлы NTFS

Имя метафайла Описание
$MFT Файл с таблицей MFT
$MFTmirr

Копия первых 16 записей табл.MFT, размещенная

посередине тома

$LogFile Файл журнала
$Volume Служебная информация – метка тома, версия ФС и т.д.
$AttrDef Список стандартных атрибутов файлов на томе
$ Корневой каталог
$Bitmap Битовая карта свободного места тома
$Boot Загрузочный сектор (если раздел загрузочный)
$Quota Файл, с записями прав пользователей на работу с данными
$Upcase

Файл с таблицей соответствия строчных и прописных букв в именах

файлов. В NTFS имена файлов в Unicode.

Таблица файлов поделена на записи фиксированного размера в 1 Кб. Каждая запись соответствует конкретному файлу. Первые 16 файлов тома являются служебными и недоступны через интерфейс операционной системы. Эти файлы называются метафайлами, причем самый первый метафайл – это сам файл MFT. Часть диска, содержащая метафайлы, является единственной частью диска имеющей строго фиксированное положение. Копии этих файлов (для надежности, поскольку они очень важны) хранится в середине тома. Оставшаяся часть MFT может располагаться в произвольном месте диска. Определить её положение можно с помощью самого файла MFT. Метафайлы находятся в корневом каталоге тома NTFS. Их имена начинаются с символа « $ ». Основные метафайлы приведены в таблице 1.

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

Файл на томе NTFS идентифицируется файловой ссылкой, которая представляет собой 64-разрядное число. Файловая ссылка состоит из номера файла, соответствующего позиции его файловой записи в таблице MFT, и номера последовательности. Номер последовательности увеличивается каждый раз, когда данная позиция в MFT используется повторно, что позволяет файловой системе NTFS выполнять внутренние проверки своей целостности.

Каждый файл в NTFS представлен с помощью потоков данных. В них содержатся собственно данные файла, атрибуты файла, дополнительная информация об авторе и содержании файла. Файлу можно назначить еще один поток данных и записать в него любые данные. Интересно, что эти дополнительные потоки не видны стандартными средствами работы с файлом: наблюдаемый размер файла – это лишь размер потока основных данных. Например, можно удалить файл нулевой длинны, и при этом освободится несколько мегабайт места на диске, просто потому, что какая-нибудь программа назначила этому файлу поток дополнительных данных такого большого объёма.

Атрибуты файлов в системе NTFS:

1) Стандартная информация о файле – стандартные атрибуты (только для чтения, скрытый, архивный, системный), размер файла, время и дата создания и последнего изменения;

2) Список атрибутов – список атрибутов файла и ссылка на запись в таблице MFT. Файловая ссылка используется, если файлу необходимо более одной записи в MFT;

3) Имя файла – имя в кодировке Unicode. Файл может иметь несколько имен (как в Unix) если у файла есть автоматически сгенерированное имя формата 8.3 или имеется связь POSIX к этому файлу;

4) Дескрипторы защиты – структура данных соответствующая списку управления доступом (ACL) и защищает файлы от неправомерного доступа;

5) Данные – собственно содержимое файла;

6) Корень индекса, размещение индекса и битовая карта (только для каталогов) – атрибуты, используемые для индексов имен файлов в больших каталогах;

7) Расширенные атрибуты HPFS – атрибуты для реализации расширенных атрибутов HPFS для системы OS/2, а также для OS/2 клиентов файл-серверов WindowsNT.

Разрешения NTFS – это набор специальных расширенных атрибутов файла или каталога, заданных для ограничения доступа пользователей к этим объектам. Например, одному пользователю можно позволить считывать и изменять файл, другому только считывать, третьему вообще запретить доступ. Рекомендуется устанавливать разрешения, используя не учетные записи отдельных пользователей, а учетные записи групп пользователей. У каждого файла имеется два списка разрешения. Первым является DACL – дискреционный список управления доступом. Этот список описывает ограничения на доступ к файлу, перечисляя пользователей и указывая запрещенные или разрешенные для них операции. Этот список может изменить любой пользователь, имеющий разрешение на изменение разрешений для данного файла. Второй список называется SACL – системный список управления доступом. Этот список может составлять и редактировать только администратор системы. Обрабатываться элементы этого списка будут, если в системе включен аудит на доступ к файлам. Операционная система, при обращении пользователя к файлам, сравнивает записи в SACL с запросом и с записями в списке DACL и фиксирует в журнале безопасности соответствующее событие.

Файловая система NTFS рассчитана на работу с дисками большого объема. Максимально возможный теоретический размер тома – 16 экзабайт! Один экзабайт равен байт (приблизительно 16 000 миллиардов гигабайт)!

Количество файлов в корневом и других каталогах не ограничено.

Файловая система NTFS обладает высокой надежностью. Система NTFS содержит две копии MFT (аналог FAT). Но в отличие от FAT, MTF больше напоминает базу данных. Система NTFS имеет различные механизмы проверки целостности данных, включая ведение журналов транзакции, позволяющих воспроизвести операции записи файлов по специальному системному журналу. В начале операции, связанной с изменением файловой структуры, делается соответствующая пометка. Если происходит какой-либо сбой, то операция остается помеченной как незавершенная. При выполнении проверки целостности файловой системы после перезагрузки машины эти незавершенные действия отменяются, и файлы возвращаются в исходное состояние. Если запись данных в файл прошла без ошибок, запись из журнала транзакции удаляется. В NTFS, как и в HPFS имеется механизм аварийной замены дефектных секторов жесткого диска.

6. Файловая система ОС семейства UNIX

Файл в операционной системе UNIX представляет собой множество символов с произвольным доступом. В файле могут содержаться любые данные, и файл не имеет никакой иной структуры, кроме той какую создаст в нем пользователь. В семействе UNIX трактуют понятие файла более широко – там файлом называется любой объект, имеющий имя в файловой системе. Однако файлы, не являющиеся совокупностями данных (каталоги, внешние устройства, псевдоустройства, именованные программные каналы, семафоры Xenix), часто называют не простыми файлами, а специальными.

Информация на диске размещается блоками. Минимальный размер блока 512 байт. В современных файловых системах, разработанных для конкретной версии UNIX размер блока несколько больше. Это позволяет повысить быстродействие файловых операций. Раздел на диске разделяется на следующие области (рис.3): загрузочный блок; управляющий блок (суперблок) в котором хранится размер логического диска и границы других областей; i -список, состоящий из описаний файлов; область для хранения содержимого файлов.

Загрузочный блок
Суперблок
i-узел 1
i-узел 2
i-узел 3
i-узел n
Блок с данными файла
Блок с данными файла
Блок с данными файла
Свободный блок
Файл
Свободный блок

Рис. 3 Организация файловой системы в UNIX

Каждый i -узел содержит: идентификатор владельца, идентификатор группы владельца, биты защиты, физические адреса на диске, время создания файла, время его последнего изменения, время последнего изменения атрибутов файла, число связей-ссылок указывающих на файл, идентификатор типа файла – каталог, обычный или специальный файл. За i -списком расположены блоки для хранения содержимого файлов. Пространство, не заполненное файлами, образует связанный список свободных блоков.

Таким образом, файловая система UNIX содержит управляющий суперблок с описанием файловой системы в целом, массив i -узлов, в котором определены все файлы, сами файлы и совокупность свободных блоков.

Каталоги также как и в других системах имеют древовидную структуру. Файл, не являющийся каталогом, может встречаться в различных каталогах, под разными именами. Это называется связыванием. В UNIX-системах файлы не принадлежат каталогам, а существуют как бы независимо от каталогов. Связи в каталогах указывают на реальные физические файлы. Файл «исчезает», когда удаляется последняя связь, указывающая на него. От файловой системы не требуется, чтобы она полностью размещалась на диске содержащий корневой каталог. Имеется возможность подключения файловой подсистемы к системе таким образом, что её содержимое заменяет собой содержимое заданного каталога. Поэтому для монтирования существующего тома необходимо использовать пустой каталог.

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

При повреждении файловой системы могут возникнуть следующие нарушения в ее структуре:

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

· могут появиться дубли i -узлов – записи, описывающие один и тот же файл дважды;

· какой-либо блок может быть частью файла и быть в списке свободных блоков;

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

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

· блок данных, являющийся каталогом, содержит имена файлов и номера i -узлов. То есть существует i -узел, соответствующий этому каталогу, и этот i -узел должен быть каталогом, а не обычным файлом;

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

· блок, принадлежащий файлу должен принадлежать только одному файлу.

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

Заключение

Сегодня в Windows применяются файловые системы: FAT, FAT32, HPFS и NTFS.
Преимущества FAT – низкие накладные расходы на хранение данных и тотальная совместимость с огромным количеством операционных систем и аппаратных платформ. Этой файловой системой по-прежнему пользуются для форматирования дискет, где большой объем раздела, поддерживаемый другими файловыми системами, не играет роли, а низкие накладные расходы позволяют экономно использовать малый объем дискеты (NTFS требует для хранения данных больше места, что совершенно не приемлемо для дискет).

Область применения FAT32 на самом деле гораздо уже – эту файловую систему стоит применять, если собираетесь получать доступ к разделам и с помощью Windows 9x и с помощью Windows 2000/XP. Но так как актуальность Windows 9x сегодня практически сошла на нет, то и использование этой файловой системы не представляет особого интереса.

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

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

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

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

· Реализованная в виде бинарного дерева структура папок файловой системы NTFS позволяет существенно ускорить доступ к файлам в папках большого объема по сравнению со скоростью доступа к папкам такого же объема на томах FAT.

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

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

Список литературы

1. Бойс Д., «От установки до оптимизации работы WindowsXP», Москва, НТ Пресс, 2007 г.

2. Гордеев А.В., «Операционные системы», Санкт-Петербург, Питер, 2006 г.

3. Гук М. «Аппаратные средства IBMPC: Бестселлер» 2-е издание, Санкт-Петербург, Питер, 2005 г.

4. Попов И.И., «Операционные системы, среды и оболочки», Москва, Инфра-М, 2003 г.

5. Столлингс В., «Операционные системы», Москва, Вильямс, 2002 г.

6. www.osys.ru

7. www.support.microsoft.com

Скачать архив с текстом документа