- •1. Назначение и функции операционных систем. Принципы построения операционных, систем.
- •3. Принципы управления памятью. Распределение памяти. Организация виртуальной памяти.
- •4. Назначение и функции файловой системы. Организация данных на носителе.
- •Основные функции подсистемы управления вводом-выводом. Способы организации обмена данными. Управление обменом. Буферизация.
- •6. Процессы в ос unix. Типы процессов. Атрибуты процессов. Планирование выполнения процессов в ос unix. Таймеры. Порождение и завершение процессов в ос unix.
- •7.Организация взаимодействия процессов в ос unix
- •8. Файловая система в ос unix. Дескрипторы и атрибуты файлов в ос unix.
- •9 Архитектура виртуальной файловой системы. Монтирование и доступ к файловым системам.
8. Файловая система в ос unix. Дескрипторы и атрибуты файлов в ос unix.
В UNIX файлы организованы в виде дерева. Файлы имеют двух владельцев – пользователь и группа. Пользователь системы может быть членом нескольких групп. Существует 3 базовых класса доступа к файлам: для владельца-пользователя файла, для членов группы, являющейся владельцем файла, для остальных пользователей. Три типа прав доступа: на чтение(r), на запись(w), на выполнение(х).
Дескрипторы.
Индексный дескриптор (inode) содержит методанные файла. Каждый файл ассоциирован с одним inode . Несколько имен файла в файловой системе указывает на один и тот же inode. Inode содержит:
тип файла, дополнительные атрибуты выполнения и прав доступа
количество имен которые имеет файл
идентификаторы владельца – пользователя и владельца группы
размер файла в байтах
время последнего доступа к файлу
время последней модификации inode
массив адресов дисковых блоков хранения данных.
Типы файлов:
Обычный файл
Каталог
Специальный файл устройства (обеспечивает доступ к физическому устройству – бывают символьные (небуферизованный обмен данными) и блочные файлы (в виде пакетов фиксированной длины) устройства)
FIFO (используется для связи между процессами)
Связь(символическая- адресует файл, который ссылается на другой файл; жесткая – имена файла жестко связаны с методанными и данными файла, а файл сам не зависти от своего имени в ФС)
Сокеты (унифицирует обмен данными между процессами одной машины с процессами, выполняющимися на других машинах)
В SistemV (Sistem5) файловая система S5fs.
В
ся
информация о самой ФС храниться в
суперблоке, который располагается в
самом начале диска. Суперблок хранит
массив индексных дескрипторов (ilist).
В ilist
хранится inode(индексный
дескриптор), ilist
– имеет ограниченную длину, и следовательно,
System
V
ограничена в количестве файлов. Еще
хранится массив свободных блоков.
Информация в свободных блоках не
ограничена по размеру, часть информации
хранится в суперблоке, а остальная – в
блоках данных (списочная структура).
С
каждым файлом связана служебная
информация – методанные. Они хранятся
в inode,
следовательно файл может иметь несколько
имен. Каталог – это файл.
inode – уникален и связан с файлом однозначно. Можно иметь несколько жестких ссылок на один блок методанных. При создании ссылок в счетчик добавляется. При счетчике = 0 файл уничтожается. На диске хранится урезанный inode - дисковый inode. Когда файл открывается – дисковый inode переписывается в ОП. Inode содержит :счетчик числа ссылок, идентификаторы владельцев и группы, время последнего доступа к файлам, время последнего изменения файла, время последней модификации методанных.
С 0-9 хранит адреса блоков на прямую, с10-12 ссылки на блок данных.
Суперблок в начале сеанса переписывается в оперативную память и хранится там до завершения работы. Изменения вносятся в копии суперблока и только при завершении работы в сам суперблок, следовательно после сбоя копия на диске и реальная картина разные.
В BSD системах файловые системы FFS или UFS.
Все как в S5Fs, отличия:
Суперблок не хранит сведения о свободном inode => суперблок не меняется
все дисковое пространство поделено на разделы, в каждом из которых хранится копия суперблока и хранится адреса свободных блоков и inode.
в FFS увеличен размер блока (блок - минимальный размер физической записи) для уменьшения фрагментации допускается в 1 блоке использовать несколько подблоков, но в них могут хранится данные от разных файлов.
В рамках одной ОС мы имеем дело с несколькими ФС. Современные версии UNIX работает практически с одной виртуальной файловой системой.
