- •Основные понятия и концепции ос
- •Классификация ос
- •Управление процессами
- •Операции над процессом
- •13092012 Лекция 2
- •Алгоритмы планирования
- •Средства взаимодействия и синхронизации процессов
- •Синхронизация процессов
- •20092012 Лекция 3 Взаимоблокировки
- •Ликвидация взаимоблокировок
- •Неделимые транзакции
- •04102012 Лекция 4 Архитектура и управление процессами в ос семейства Windows
- •11102012 Лекция 5 Синхронизация потоков
- •Архитектура и процессы unix
- •Управление процессами
- •Создание новых процессов
- •18102012 Лекция 6 Межпроцессное взаимодействие
- •Файловая система
- •Структуризация файлов
- •25102012 Лекция 7 Адресация доступа к файлам
- •Операции над файлами
- •Обобщенная модель файловой системы
- •Отображаемые в память файлы
- •Современная архитектура файловых систем
- •Файловые системы Windows
- •01112012 Лекция 8 Файловая система fat
- •Файловая система ntfs
- •081112 Лекция 9
- •Файловые системы unix Традиционная фс s5
- •Виртуальная фс vfs (Virtual File System)
- •Монтирование файловых систем vfs
- •15112012 Лекция 10 Управление вводом/выводом
- •Драйверы устройств
- •Система ввода/вывода unix
- •29112012 Лекция 11 Подсистема ввода/вывода Windows
- •06122012 Лекция 12 Основные процедуры драйверов устройств
- •Процедуры обслуживания прерывания isr (interrupt Service Routine)
- •Дерево устройств
- •Диспетчер электропитания
- •13122012 Лекция 13 Основные требования ос
- •Множественные прикладные среды
- •Способы построения множественных прикладных сред
- •Реализация множества прикладных средств в Windows системах
Операции над файлами
Реализуются через системные вызовы. Существует два способа выполнить последовательность действий над файлами:
Для каждой операции выполняется как универсальное, так и уникальное действие.
Цепочки: open-read-close : open-read-close : open-read-close ….
Более отказоустойчивый. В файловых серверах
Универсальные операции выполняются в начале и в конце последовательности
Цепочки: : open-read-read-….-close
Более быстрый. Используется в универсальных ОС
Права доступа к файлу определяются как набор операций, который конкретный пользователь может применить к конкретному файлу. В общем случае права доступа описываются матрицей прав доступа:
|
Файл 1 |
… |
Файл N |
Пользователь 1 |
Права доступа |
|
|
…. |
|
|
|
Пользователь M |
|
|
|
Реализуются права доступа в виде Access Control List (ACL). Список ассоциируется с ресурсом и содержит права пользователя по отношению к этому ресурсу.
Права доступа могут определяться:
Избирательно – как для каждого файла и пользователя владелец файла задаёт допустимые операции.
Мандатно – ОС наделяется пользователя правами в зависимости от его групп автоматически.
Обобщенная модель файловой системы
Запрос к файлу (операция, имя файла, логическая запись)
|
Символьный уровень
Базовый уровень
Уровень проверки прав доступа
Логический уровень
Физический уровень
|
Подсистема ввода/вывода
Каждый уровень предоставляет некоторый интерфейс (набор функций) выше лежащего и использует функции нижележащего.
Символьный уровень – определяет по символьному имени файла его уникальное имя.
Базовый уровень – определяет по уникальному имени файла его характеристики. При этом характеристики перемещаются в диска в ОП для ускорения доступа.
Если права есть, то продолжаем. Нет – сообщаем.
На логическом уровне определяются координаты запрашиваемой логической записи в файле, то есть, на каком расстоянии в байтах она располагается от начала файла, как если бы он был размещен непрерывно.
На физическом уровне определяется номер физического блока, содержащего требуемую логическую запись и смещение записи в блоке.
Отображаемые в память файлы
Для упрощения доступа к файлам ОС обеспечивают отображение файлов в адресное пространство выполняемого процесса. Для этого используются системные вызовы MAP(имя файла, виртуальный адрес) - отобразить и UNMAP - отметить отображение.
При этом внутренние системные таблицы изменяются таким образом, что данный файл служил хранилище страниц виртуальной памяти на диске. То есть обращение по ассоциированному адресу вызывает страничный отказ и соответствующая страница ищется в физической памяти.
При завершении процесса все страницы отображения вытесняются на диск и отображение отменяется.
Современная архитектура файловых систем
Файловые системы имеют многоуровневую структуру, на верхнем уровне которой находится переключатель файловых систем, преобразующий пользовательские запросы в формат, воспринимаемый конкретной системой.
Каждый компонент следующего уровня представлен в виде драйвера, поддерживающего определенную организацию ФС. Каждый драйвер регистрируется у переключателя, передавая ему таблицу точек входа (возможное обращение к ФС).
