Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции (ОС).doc
Скачиваний:
7
Добавлен:
11.09.2019
Размер:
716.29 Кб
Скачать

Общая модель файловой системы

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

1) Символьный уровень. Здесь определяется по символьному имени файла его уникального имени.

2) Базовый уровень. Здесь по уникальному имени файла определяются его характеристики: права доступа, адрес, размер и другие.

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

4) Логический уровень. Здесь определяются координаты запрашиваемой логической записи в файле, то есть требуется определить, на каком расстоянии (в байтах) от начала файла находится требуемая логическая запись.

5) Физический уровень.

V - размер блока N - номер первого блока файла S - смещение логической записи в файле

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

Классификация файловых систем

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

1) Для носителей с произвольным доступом (например, жёсткий диск): FAT32, HPFS, ext2 и др. Поскольку доступ к дискам в несколько раз медленнее, чем доступ к оперативной памяти, для прироста производительности во многих файловых системах применяется асинхронная запись изменений на диск. Для этого применяется журналирование – это ведение журнала, хранящего список изменений, в той или иной степени помогающего сохранить целостность файловой системы, например в ext3, NTFS, XFS и др.

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

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

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

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

Наиболее распространенные файловые системы

1) FAT, FAT32

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

1) непосредственно адресуемые участки логического диска, отведенные для размещения в них файлов или их фрагментов

2) свободные области дискового пространства

3) дефектные области диска

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

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

FAT12

FAT16

FAT32

Создание

1977 (Microsoft Disk BASIC)

1988 (MS-DOS 4.0)

1996 (Windows 95)

Версия

12-bit

16-bit

32-bit

Максимальный размер файла

32 Мб

2 Гб

4 Гб

Максимальный размер тома

32 Мб

2 Гб

8 Тб

2) NTFS

New Technology File System (файловая система новой технологии) – это стандартная файловая система для семейства операционных систем Microsoft Windows NT. NTFS заменила файловую систему FAT. NTFS поддерживает систему метаданных и использует специализированные структуры данных для хранения информации о файлах для улучшения производительности, надёжности и эффективности использования дискового пространства. NTFS имеет встроенные возможности разграничивать доступ к данным для различных пользователей и групп пользователей. Поскольку NTFS разрабатывалась как файловая система для серверов, то она обладает повышенной надежностью, поскольку содержит средства самовосстановления.

Размер кластеров от 512 до 64 Кбайт. Теоретически максимально возможные размеры тома и размеры файла составляют 16 Эбайт (1 Эбайт (экзабайт) = 264 байт или 16000 млрд. гигабайт). На практике рекомендуется создавать тома, размеры которых не превышают 2 Тб.

3) ext2fs, ext3fs

Ext2FS (second extended filesystem) – файловая система для ядра Linux. в составе можно выделить следующие составляющие:

1) блоки и группы блоков;

2) индексный дескриптор;

3) суперблок;

Всё пространство раздела диска разбивается на блоки фиксированного размера, кратные размеру сектора – 1024, 2048 и 4096 байт. Размер блока указывается при создании файловой системы на разделе диска. Меньший размер блока позволяет экономить место на жестком диске, но также ограничивает максимальный размер файловой системы. Все блоки имеют порядковые номера. С целью уменьшения фрагментации и количества перемещений головок жесткого диска при чтении больших массивов данных блоки объединяются в группы блоков.

Базовым понятием файловой системы является индексный дескриптор (информационный узел), information node, или inode. Это специальная структура, которая содержит информацию об атрибутах и физическом расположении файла.

Каждая группа блоков имеет одинаковое строение. Суперблок – это основной элемент файловой системы ext2. Он содержит общую информацию о файловой системе.

При максимальном размере блока 4 Кб размер файлов достигает до 2 Тб.