Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Структура канонической файловой системыСодержание книги
Похожие статьи вашей тематики
Поиск на нашем сайте
Физически файловая система представляет собой последовательность блоков данных на магнитном носителе. После создания на размеченном магнитном диске пустой файловой системы множество блоков диска может быть условно разбито на 5 областей. 0) В блоке № 0 расположена программа начальной загрузки операционной системы. 1) Блок № 1 содержит, так называемый, суперблок. Суперблок содержит информацию о физической структуре файловой системы. Точное (формальное) описание структуры суперблока приведено в переменной типа struct в файле /usr/include/sys/filsys.h Приведем словесное описание полей суперблока: · длина индексного файла в блоках; · размер тома файловой системы в блоках; · счётчик числа свободных блоков; · список свободных блоков · счётчик числа описателей файлов; · список описателей файлов; · флаг доступности только по чтению; · общее число свободных блоков; · общее число свободных описателей файлов; · метка тома файловой системы; · флаг чистоты (отсутствие ошибок в структуре) файловой системы. Индексный дескриптор файла (описатель файла) Индексный дескриптор файла - это основной элемент, описывающий атрибуты файла вне зависимости от того, в каком каталоге или каталогах он упомянут. Описатели файлов конкретной файловой системы находятся в последовательных блоках диска, начиная с блока диска № 2. В канонической файловой системе любой описатель файла имеет длину 64 байта, т.е. в блоке размещается 8 описателей файла. Описание структуры индексного дескриптора приведено в файле ino.h (или inode.h или dinode.h), расположенном в следующих каталогах (в зависимости от реализации Unix): /usr/src/sys/ufs/ufs /usr/include/ufs/ufs Индексный дескриптор канонической файловой системы содержит следующие поля:
Назначение отдельных полей: 1). Режим доступа и тип файла: Приведем некоторые значения кодов, записываемых в данное поле: Тип файла 040000 каталог 020000 специальный файл устройства 060000 специальный файл устройства Права доступа 0400 разрешение чтения для владельца 0200 разрешение записи для владельца 0100 разрешение выполнения для владельца 070 то же самое для группы 07 то же самое для прочих пользователей Счётчик числа ссылок на файл Длина файла в этом поле указывается 32-битовым числом, что позволяет создавать файлы длиной несколько гигабайтов. Поля "идентификатор группы", "идентификатор владельца", "счётчик числа байтов в файле", "дата последнего доступа", "дата последней модификации", "дата создания" никаких особенностей не имеют. Особый интерес вызывает поле №6, содержащее указатели на блоки диска, занятые файлом. Указатели на блоки диска В канонической файловой системе (длина блока 512 байтов) для адресации данных файла на диске используется поле из 13 элементов по 24 бита (3 байта).
Первые 10 элементов непосредственно указывают на десять блоков обычного файла. Если файл имеет длину б'ольшую, чем 10 блоков, то 11-й элемент указывает на косвенный блок, содержащий до 128 адресов дополнительных блоков файла. Ещё б'ольшие файлы используют 12-й элемент, который указывает на блок, содержащий 128 указателей на блоки, каждый из которых содержит по 128 адресов блоков файла. В очень больших файлах может быть использован 13-й элемент массива адресов. В этом случае трёхкратная косвенная адресация позволяет создавать файлы длиной [(10+128+128^2+128^3)*512] байтов. Таким образом: · если длина файла меньше 5120 байтов, требуется одно обращение к диску; · если длина от 5120 до 70656 байтов, то - два обращения; · и, наконец, для файлов длиной от 8.459.264 байта до 1.082.201.088 байтов - требуется 4 обращения к диску. Способ адресации данных файла, принятый в Unix, позволяет иметь прямой и быстрый доступ к файлам. Для повышения эффективности файловой системы в Unix применяются: · кэширование диска - в буфере основной памяти хранятся некоторые наиболее часто используемые блоки; · после открытия файла соответствующий индексный дескриптор считывается в память, и, таким образом, системе становятся доступны все номера блоков данного файла.
|
|||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2016-08-16; просмотров: 453; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.226.185.25 (0.005 с.) |