Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры_ОС.rtf
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
2 Мб
Скачать
☆

8. Файловая система в ос unix. Дескрипторы и атрибуты файлов в ос unix.

В UNIX файлы организованы в виде дерева. Файлы имеют двух владельцев – пользователь и группа. Пользователь системы может быть членом нескольких групп. Существует 3 базовых класса доступа к файлам: для владельца-пользователя файла, для членов группы, являющейся владельцем файла, для остальных пользователей. Три типа прав доступа: на чтение(r), на запись(w), на выполнение(х).

Дескрипторы.

Индексный дескриптор (inode) содержит методанные файла. Каждый файл ассоциирован с одним inode . Несколько имен файла в файловой системе указывает на один и тот же inode. Inode содержит:

  • тип файла, дополнительные атрибуты выполнения и прав доступа

  • количество имен которые имеет файл

  • идентификаторы владельца – пользователя и владельца группы

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

  • время последнего доступа к файлу

  • время последней модификации inode

  • массив адресов дисковых блоков хранения данных.

Типы файлов:

  1. Обычный файл

  2. Каталог

  3. Специальный файл устройства (обеспечивает доступ к физическому устройству – бывают символьные (небуферизованный обмен данными) и блочные файлы (в виде пакетов фиксированной длины) устройства)

  4. FIFO (используется для связи между процессами)

  5. Связь(символическая- адресует файл, который ссылается на другой файл; жесткая – имена файла жестко связаны с методанными и данными файла, а файл сам не зависти от своего имени в ФС)

  6. Сокеты (унифицирует обмен данными между процессами одной машины с процессами, выполняющимися на других машинах)

В SistemV (Sistem5) файловая система S5fs.

В ся информация о самой ФС храниться в суперблоке, который располагается в самом начале диска. Суперблок хранит массив индексных дескрипторов (ilist). В ilist хранится inode(индексный дескриптор), ilist – имеет ограниченную длину, и следовательно, System V ограничена в количестве файлов. Еще хранится массив свободных блоков. Информация в свободных блоках не ограничена по размеру, часть информации хранится в суперблоке, а остальная – в блоках данных (списочная структура).

С каждым файлом связана служебная информация – методанные. Они хранятся в inode, следовательно файл может иметь несколько имен. Каталог – это файл.

inode – уникален и связан с файлом однозначно. Можно иметь несколько жестких ссылок на один блок методанных. При создании ссылок в счетчик добавляется. При счетчике = 0 файл уничтожается. На диске хранится урезанный inode - дисковый inode. Когда файл открывается – дисковый inode переписывается в ОП. Inode содержит :счетчик числа ссылок, идентификаторы владельцев и группы, время последнего доступа к файлам, время последнего изменения файла, время последней модификации методанных.

С 0-9 хранит адреса блоков на прямую, с10-12 ссылки на блок данных.

Суперблок в начале сеанса переписывается в оперативную память и хранится там до завершения работы. Изменения вносятся в копии суперблока и только при завершении работы в сам суперблок, следовательно после сбоя копия на диске и реальная картина разные.

В BSD системах файловые системы FFS или UFS.

Все как в S5Fs, отличия:

  1. Суперблок не хранит сведения о свободном inode => суперблок не меняется

  2. все дисковое пространство поделено на разделы, в каждом из которых хранится копия суперблока и хранится адреса свободных блоков и inode.

  3. в FFS увеличен размер блока (блок - минимальный размер физической записи) для уменьшения фрагментации допускается в 1 блоке использовать несколько подблоков, но в них могут хранится данные от разных файлов.

В рамках одной ОС мы имеем дело с несколькими ФС. Современные версии UNIX работает практически с одной виртуальной файловой системой.