Физическая организация ФС в Unix


 

В качестве примера рассмотрим файловые системы s5 и ufs, которые используют очень близкую физическую модель (система ufs является развитием системы s5). Вместо термина «кластер» будет использоваться термин «блок», как это принято в файловых системах UNIX.

Раздел дис­ка, где размещается файловая система s5, делится на четыре области:

  • загрузочный блок;
  • суперблок (superblock) содержит самую общую информацию о файловой сис­теме: размер файловой системы, размер области индексных дескрипторов, чис­ло индексных дескрипторов, список свободных блоков и список свободных индексных дескрипторов, а также другую административную информацию;
  • область индексных дескрипторов (mode list), порядок расположения индекс­ных дескрипторов в которой соответствует их номерам;
  • область данных, в которой расположены как обычные файлы, так и файлы-каталоги, в том числе и корневой каталог; специальные файлы представлены в файловой системе только записями в соответствующих каталогах и индекс­ными дескрипторами специального формата, но места в области данных не занимают.

Основной особенностью физической организации файловой системы s5 являет­ся отделение имени файла от его характеристик, хранящихся в отдельной струк­туре, называемой индексным дескриптором (inode). Индексный дескриптор в s5 имеет размер 64 байта и содержит данные о типе файла, адресную информацию, привилегии доступа к файлу и некоторую другую информацию:

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

Каждый индексный дескриптор имеет номер, который одновременно является уникальным именем файла. Индексные дескрипторы расположены в особой об­ласти диска в строгом соответствии со своими номерами. Соответствие между полными символьными именами файлов и их уникальными именами устанав­ливается с помощью иерархии каталогов. Система ведет список номеров свобод­ных индексных дескрипторов. При создании файла ему выделяется номер из этого списка, а при уничтожении файла номер его индексного дескриптора воз­вращается в список.

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

Эта процедура требует в общем случае нескольких обращений к диску, пропорцио­нально числу составляющих в полном имени файла. Для уменьшения среднего вре­мени доступа к файлу его дескриптор копируется в специальную системную область оперативной памяти. Копирование индексного дескриптора входит в процедуру от­крытия файла.

Физическая организация файловой системы ufs отличается от описанной физи­ческой организации файловой системы s5 тем, что раздел состоит из повторяю­щейся несколько раз последовательности областей «загрузчик—суперблок—блок группы цилиндров—область индексных дескрипторов» . В этих повторяющихся последовательностях областей суперблок является резерв­ной копией основной первой копии суперблока. При повреждении основной ко­пии суперблока может быть использована резервная копия суперблока. Области же блока группы цилиндров и индексных дескрипторов содержат индивидуаль­ные для каждой последовательности значения. Блок группы цилиндров описы­вает количество индексных дескрипторов и блоков данных, расположенных на данной группе цилиндров диска. Такая группировка делается для ускорения доступа, чтобы просмотр индексных дескрипторов и данных файлов, описывае­мых этими дескрипторами, не приводил к слишком большим перемещениям го­ловок диска.



Дата добавления: 2016-06-05; просмотров: 2002;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.007 сек.