Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Физическая организация s5 и ufs




 

Файловые системы s5 (получившие название от System V, родового имени не­скольких версий ОС UNIX, разработанных в Bell Labs компании AT&T) и ufs (UNIX File System) используют очень близкую физическую модель. Это не удивительно, так как система ufs является развитием системы s5. Файловая система ufs расширяет возможности s5 по поддержке больших дисков и файлов, а также повышает ее надежность.

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

загрузочный блок;

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

область индексных дескрипторов (mode list), порядок расположения индекс­ных дескрипторов в которой соответствует их номерам;

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

 

Рис. 30. Расположение файловой системы s5 на диске

 

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

 идентификатор владельца файла;

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

 права доступа к файлу;

 временные характеристики: время последней модификации файла, время по­следнего обращения к файлу, время последней модификации индексного де­скриптора;

 число ссылок на данный индексный дескриптор, равный количеству псевдо­нимов файла;

 адресная информация;

 размер файла в байтах.

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

Запись о файле в каталоге состоит всего из двух полей: символьного имени фай­ла и номера индексного дескриптора. Например, на рис. 31 показана информа­ция, содержащаяся в каталоге /user.

 

Рис. 31. Структура каталога в файловой системе s5

 

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

Доступ к файлу осуществляется путем последовательного просмотра всей це­почки каталогов, входящих в полное имя файла, и соответствующих им индекс­ных дескрипторов. Поиск завершается после получения всех характеристик из индексного дескриптора заданного файла. Рассмотрим эту процедуру на примере файла /bin/my_shell/print, входящего в со­став файловой системы, изображенной на рис. 32.

Определение физического адреса этого файла включает следующие этапы:

1. Прежде всего просматривается корневой каталог с целью поиска первой составляющей символьного имени – bin. Определяется номер (в данном приме­ре – 6) индексного дескриптора каталога, входящего в корневой каталог. Адрес корневого каталога известен системе.

2. Из области индексных дескрипторов считывается дескриптор с номером 6. Начальный адрес дескриптора определяется на основании известных систе­ме номера начального сектора области индексных дескрипторов и размера индексного дескриптора. Из индексного дескриптора 6 определяется физиче­ский адрес каталога /bin.

3. Просматривается каталог /bin с целью поиска второй составляющей символь­ного имени my_shell. Определяется номер индексного дескриптора каталога /bin/my_shell (в данном случае – 25).

 

 

Рис. 32. Поиск адреса файла по его символьному имени

 

 

4. Считывается индексный дескриптор: 25, определяется физический адрес /bin/my_shell.

5. Просматривается каталог /bin/my_shell, определяется номер индексного дескриптора файла print (в данном случае – 131).

6. Из индексного дескриптора 131 определяются номера блоков данных, а также другие характеристики файла /bin/my_shell/print.

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

Физическая организация файловой системы ufs отличается от описанной физи­ческой организации файловой системы s5 тем, что раздел состоит из повторяю­щейся несколько раз последовательности областей “загрузчик–суперблок–блок группы цилиндров–область индексных дескрипторов” (рис. 33).

 

Рис. 33. Физическая организация файловой системы ufs

 

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

Кроме того, в ufs имена файлов могут иметь длину до 255 символов (кодировка ASCII, по одному байту на символ), в то время как в s5 длина имени не может превышать 14 символов.

 





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


Дата добавления: 2016-11-18; Мы поможем в написании ваших работ!; просмотров: 829 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Свобода ничего не стоит, если она не включает в себя свободу ошибаться. © Махатма Ганди
==> читать все изречения...

2302 - | 2064 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.006 с.