Основные функции любой файловой системы нацелены на решение следующих задач:
· именование файлов;
· программный интерфейс работы с файлами для приложений;
· отображения логической модели файловой системы на физическую организацию хранилища данных;
· устойчивость файловой системы к сбоям питания, ошибкам аппаратных и программных средств.
· В многопользовательских системах появляется еще одна задача: защита файлов одного пользователя от несанкционированного доступа другого пользователя.
[31 слайд]
По предназначению файловые системы можно классифицировать на следующие категории:
для носителей с произвольным доступом (например, жёсткий диск): FAT32, HPFS, ext2 и др.
для носителей с последовательным доступом (например, магнитные ленты): QIC и др.
для оптических носителей — CD и DVD: ISO9660, ISO9690, HFS, UDF и др.
виртуальные файловые системы: AEFS и др.
сетевые файловые системы: NFS, SMBFS, SSHFS, GmailFS и др.
[32 слайд]
[33 слайд]
Рассмотрим две основные файловые системы FAT и NTFS
Файловая система FAT (File Allocation Table) была разработана Биллом Гейтсом и Марком МакДональдом в 1977 году и первоначально использовалась в операционной системе 86-DOS. В дальнейшем 86-DOS была приобретена Microsoft и стала основой для ОС MS-DOS 1.0, выпущенной в августе 1981 года. FAT была предназначена для работы с гибкими дисками размером менее 1 Мбайта, и вначале не предусматривала поддержки жестких дисков. В настоящее время FAT поддерживает файлы и разделы размеров до 2 Гбайт.
[34 слайд]
Логический раздел, отформатированный под файловую систему FAT, состоит из следующих областей:
загрузочный сектор - содержит программу начальной загрузки операционной системы. Вид этой программы зависит от типа операционной системы, которая будет загружаться из этого раздела.
основная копия FAТ - содержит информацию о размещении файлов и каталогов на диске.
резервная копия FAT.
корневой каталог - занимает фиксированную область размером в 32 сектора (16 Кбайт), что позволяет хранить 512 записей о файлах и каталогах, так как каждая запись каталога состоит из 32 байт.
область данных - предназначена для размещения всех файлов и всех каталогов, кроме корневого каталога.
Рисунок 6. Физическая структура файловой системы FAT
[35 слайд]
Для хранения файлов всё доступное для них пространство разбивается на кластеры. Таблица размещения файлов содержит ячейки, каждая из которых указывает на определённый кластер на жестком диске. Если кластер принадлежит файлу, то его ячейка содержит номер следующей ячейки этого же файла. Если ячейка указывает на конец файла, она содержит значение «FFFF». Неиспользуемые кластеры помечены нулём. «Плохие» кластеры помечены специальным кодом.
Кластер (англ. cluster) — в некоторых типах файловых систем логическая единица хранения данных в таблице размещения файлов, объединяющая группу секторов.
Например, на дисках с размером секторов в 512 байт, 512-байтный кластер содержит один сектор, тогда как 4-килобайтный кластер содержит восемь секторов. Как правило, это наименьшее место на диске, которое может быть выделено для хранения файла.
Существует три версии FAT — FAT12, FAT16 и FAT32. Они отличаются количеством бит, отведённых для хранения номера кластера. FAT12 применяется в основном для дискет, FAT16 — для дисков малого объёма.
[36 слайд]
Таблица 3. Классификация файловой системы FAT
FAT12
FAT16
FAT32
Максимальный размер файла
32 Mb
2 ГБайт
2 ГБайт
Максимальное количество файлов
4 096
65 536
> 4 млрд
Максимальный размер тома
32 МБайт
2 Гбайт (4 Гбайт)
8 ТБайт
В файловой системе FAT12 используются 12-разрядные указатели, что позволяет поддерживать до 4096 кластеров в области данных диска, в FAT16 — 16-разрядные указатели для 65 536 кластеров и в FAT32 — 32-разрядные для более чем 4 миллиардов кластеров.