МГТУГА

Категории раздела

История воздухоплавания [31]
Системное программное обеспечение [55]
Сети 3-4 курс [41]
Методы и средства защиты информации [17]
Вычислительный системы [42]
про САПР [41]
Безопасность жизнедеятельности. БЖД. [46]
Интернет-технологии ГА [49]

Статистика


Онлайн всего: 5
Гостей: 5
Пользователей: 0

Форма входа

Каталог статей

Главная » Статьи » Системное программное обеспечение

26. Файловая подсистема. Базовая файловая сситема System V.

26. Файловая подсистема. Базовая файловая сситема System V.

Большинство данных в UNIX содержится в файлах, которые организованы в виде дерева и содержатся на носителе данных – обычно на локальном жестком диске.

Базовая файловая система System V

Суперблок  Массив индексных

      Дескрипторов ilist

                       

s_type

s_fsize

s_isize

s_tfree

s_tinode

s_fmod

s_fronly

…….

Список

Свободных inode

Блоки хранения

Данных                               

Список свободных блоков

0


Каждый жесткий диск состоит из одной или нескольких логических частей которые называются разделы (partitions). В UNIX разделы выступают в качестве независимых устройств доступ к которым осуществляется как к различным носителям данных. В разделе может располагаться только одна файловая система.

s5fs  - Файловая система состоит из 3 основных разделов:

 

Суперблок (Superblock) – Содержит общую информацию о файловой системе – ее архитектуре общем числе блоков и индексных дескрипторов, или метаданных (inode). Содержит следующую информацию:

Тип файловой системы ( s_type); Размер файловой системы в логических блоках, включая сам суперблок, ilist и блоки хранения данных ( s_fsize); Размер массива индексых дескрипторов (s_fsize); Число свободных блоков, доступных для размещения ( s_ftree); Число свободных inode , доступных для размещения (s_tinode); Флаги ( флаг модификации s_fmod, флаг режима монтирования s_fronly); Размер логического блока ( 512, 1024, 2048); Список номеров свободных inode ;  Список адресов свободных блоков.

                Поскольку число свободных inode  и блоков хранения данных может быть значительным, хранение двух последних списков целиком в суперблоке непрактично. Для индексных дескрипторов хранится только часть списка. Когда число свободных inode в этом списке ->0 ядро просматривает ilist и вновь формирует список свободных inode – для этого ядро анализирует поле di_node которое равно 0 у свободных inode. Список адресов свободных блоков необходимо хранить целиком, он может занимать несколько блоков хранения данных, но в суперблоке содержится только один блок этого списка. Первый элемент указывает на блок хранящий продолжение списка и т д ( см рис 4.1).

                Массив индексных дескрипторов – (ilist) – Содержит метаданные всех файлов файловой системы. Индексный дескриптор содержит статусную информацию о файле и указывает на расположение данных этого файла. Ядро обращается к inode по индексу в массиве ilist  Один inode  является корневым (root) inode файловой системы, чере него обеспечиваетсыя доступ к стуктуре каталогов и файлов после монтирования файловой системы. Размер массива ilist является фиксированным и задается при создании файловой системы -> S5fs имеет

ограничение по числу файлов независимо от размера этих файлов.

                Каждый файл ассоциирован с 1 inode хотя может иметь несколько имен в файловой системе. Индексный дескриптор не содержит имени файла и содержимого файла. При открытии файла ядро помещает копию дискового inode в в память в таблицу in-core inode которая содержит нескололько дополнительных полей. Структура дискового inode:

                di_mode  Тип файла длополнительные атрибуты выполнения и права доступа;  di_nlinks – число ссылок на файл т е количество имен которое имеет файл в файловой системе;  di_uid, di_gid – идентификаторы владельца-пользователя и владельца-группы; di_size  - Размер файла в байтах Для специальных файлов  - старший и младший номера устройства; di_atime – время последнего доступа к файлу; di_mtime - -/- модификации;  di_ctime  - -/- модификации inode ( кроме модификации полец di_atime, di_mtime); di_addr[13] – массив адресов дисковых блоков хранения данных

                Блоки хранения данных – Данные обычных файлов и каталогов хранятся в блоках. Обработка файла осуществляется через inode, содержащий ссылки на блоки данных. Блоки хранения данных занимают большую часть дискового раздела, и их число определяет максимальный суммарный обыем файлов данной файловой системы. Размер блока кратен 512 байт.

                Достоинства: Простота,

                Недостатки:   Низкая надежность и производительность. Суперблок несет основную информацию о файловой системе в целом и при его повреждении файловая система не может использоваться. Компоненты файловой системы размещены на диске – Метаданные и блоки хранения данных размещены в разных местах на диске и головка диска должна перемещаться между ними -> низкая производительность. Один блок хранения данных может использоваться только одним файлом -> если блок заполнен не полностью то место теряется. Массив inpde имеет фиксированный размер -> ограничено мах число файлов на диске. Имя файла – не более 14 символов.

Категория: Системное программное обеспечение | Добавил: mgtuga (15.01.2009)
Просмотров: 1320 | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *:

Поиск

Дисциплины