
- •1. Физическая организация файла
- •2. Индексные дескрипторы файлов (I-node, описатели файлов)
- •3. Организация каталогов.
- •4. Виртуальная файловая системаVfs.
- •5. Файловая системаHpfs
- •6. Файловая системаFat
- •9.2. Транзакции
- •9.3. Сжатие
- •9.4.Шифрование
- •9.5. Множественные потоки данных
- •9.6. Жесткие ссылки вNtfs
- •10. Поддержка длинных имен вNtfSиFat
- •11. Сравнение нескольких файловых систем:
1. Физическая организация файла 1
2. Индексные дескрипторы файлов (I-node, описатели файлов) 1
3. Организация каталогов. 2
4. Виртуальная файловая система VFS. 2
5. Файловая система HPFS 3
6. Файловая система FAT 3
7. VFAT 3
8. FAT32 4
9. NTFS 4
9.1. MFT 4
9.2. Транзакции 4
9.3. Сжатие 5
9.4.Шифрование 5
9.5. Множественные потоки данных 5
9.6. Жесткие ссылки в NTFS 6
10. Поддержка длинных имен в NTFS и FAT 6
11. Сравнение нескольких файловых систем: 6
1. Физическая организация файла
Физическая организация файла описывает правила расположения файла на устройстве внешней памяти, в частности на диске. Файл состоит из физических записей – блоков. Блок – наименьшая единица данных, которой внешнее устройство обменивается с оперативной памятью.
Непрерывное размещение – простейший вариант физической организации при котором файлу предоставляется последовательность блоков диске, образующих последовательность блоков диска, образующих единый сплошной участок дисковой памяти. Для задания адреса файла в этом случае достаточно указать только номер начального блока. Другое достоинство этого метода – простота. Но имеются и два существенных недостатка. Во-первых, во время создания файла не известна его длина, а значит неизвестно, сколько памяти надо зарезервировать для этого файла, во-вторых, при таком порядке размещения неизбежно возникает фрагментация, и простанство на диске используется не эффективно, так как отдельные участки маленького размера (минимально 1 блок) могут остаться не используемыми.
Размещение в виде связанного списка блоков дисковой памяти. При таком способе в начале каждого блока содержится указатель на следующий блок. В этом случае адрес файла также может быть задан одним числом – номером первого блока. В отличие от предыдущего способа, каждый блок может быть присоединен в цепочку какого-либо файла, следовательно, фрагментация отсутствует. Файл может изменяться во время своего существования, наращивая число блоков. Недостатком является сложность реализации доступа к произвольно заданному месту файла. Кроме того, при этом способе количество данных файла, содержащихся в одном блоке, не равно степени двойки.
Использование связанного списка индексов. С каждым блоком связывается некоторый элемент – индекс. Индексы располагаются в отдельной области диска (в MS-DOSэто таблицаFAT). Если некоторый блок распределен некоторому файлу, то индекс этого блока содержит номер следующего блока данного файла. При такой физической организации сохраняются все достоинства предыдущего способа, но снимаются оба отмеченных недостатка – для доступа к произвольному месту файла достаточно прочитать только блок индексов, отсчитать нужное количество блоков файла по цепочке и определить номер нужного блока. Разновидность – хранение номеров блоков с данными в специальной структуре – индексном дескрипторе.
2. Индексные дескрипторы файлов (I-node, описатели файлов)
Каждому файлу в ОС Unixсоответствует только один индексный дескриптор. На примере файловой системыs5 индексные дескрипторы всех файлов имеют одинаковый размер – 64 байта и содержат данные о типе файла, о физическом расположении файла на диске, размере в байтах, о дате создания, последней модификации и последнего обращения к файлу, количество ссылок на файл, о привилегиях доступа и некоторую другую информацию.
Для хранения информации о физическом расположении используются 13 элементов следующим образом - первые 10 указывают непосредственно адреса блоков. Если их не хватает то используется 11 элемент который указывает номер блока, в котором содержится список следующих 128 блоков, если файл имеет размер более чем 10+128 блоков, то используется 12 элемент, содержащий номер блока, в котором указываются номера 128 блоков, каждый из которых может содержать еще по 128 номеров блоков. Если все равно места не хватает, то используется 13 элемент, в котором 128 по 128 по 128 блоков).
В рамках каждой файловый системы inodeпронумерованы начиная с 1. №inodeхранится в поле ссылки в элементе каталога, также содержащим в поле имени файла то имя, по которому обеспечивается доступ к файлу.
Для системных нужд зарезервированы два индексных дескриптора с номерами 0и1. Индексный дескриптор с номером0используется для спецификации дефектных блоков внешней памяти. Индексный дескриптор номер1выделен для корневого каталога файловой системы.