- •/Классификация операционных систем
- •Сравнительные характеристики ос.
- •/Процессы и примитивы.
- •Примитивы.
- •Процессы.
- •/Предполагаемая среда выполнения процессов.
- •/ Диаграмма переходов.
- •/Создание процессов.
- •/Уровневое представление ос unix
- •/Функции ядра операционной системы.
- •/Понятие прерываний в ос
- •/Структура ос
- •/Обзор подсистем ядра Unix
- •Описание подсистем ядра unix
- •Планирование но наивысшему приоритету (hpf)
- •Метод круговорота (карусель)
- •Очереди с обратной связно (fв)
- •Планирование в unix.
- •Типы многозадачности.
- •Состав планировщика
- •Зависимости подсистем ядра
- •Контроллер памяти (Метоrу Manager)
- •Механизм свопинга (Swapping)
- •Механизм пейджинга (Paging)
- •Внешний интерфейс
- •Verify_area()– проверка прав на доступ к выделенному региону памяти; get_free_page() / free_page() – выделение и освобождение физической памяти.
- •Реализация программ выделения памяти
- •Сборка мусора
- •Типы сборщиков памяти
- •Взаимодействие внутренних модулей мм
- •Архитектура vfs
- •Интерфейсы файловой системы
- •Ioctlo: установить атрибуты файла;
- •Защита файлов
- •Списки прав доступа
- •Механизмы обмена данными в vfs
- •Буферный кэш.
- •Механизмы обмена данными.
- •Логическая файловая система
- •Физическая организация файловой системы
- •Структура файла обычного типа
- •Примечания к физической организации vfs
- •Сетевая подсистема (Net)
- •Состав сетевой подсистемы
- •Представление и структуры данных
- •Внутренняя структура подсистемы
- •Зависимости сетевой подсистемы
- •Подсистема межпроцессного взаимодействия
Примечания к физической организации vfs
-
Так как в разных системах Unix используются разные размеры блоков, то это может привести к некоторой несовместимости файловых систем на отдельных устройствах.
-
Программы, выполняемые под управлением системы Unix, не содержат никакой информации относительно внутреннего формата, в котором ядро хранит данные и, следовательно, данные в программах представляются как бесформатный поток данных.
-
Программы могут интерпретировать поток 6айтов по своему желанию, при этом любая интерпретация никак не будет связана с фактическим способом хранения данных в операционной системе.
-
Файловая система создается специальной командой mkfs, с помощью которой происходит организация файловой системы на некотором устройстве, при этом пользователь должен указать количество блоков, по которому система рассчитает необходимое количество индексных узлов.
-
Поскольку при работе файловой системы происходит обмен между памятью и файлами, перед демонтированием файловой системы необходимо произвести принудительное сохранение информации из буферов на носители. Эта операция выполняется с помощью системной команды sync.
-
Поскольку каждому устройству в системе соответствует некоторый образ, называемый специальным файлом, то все специальные файлы принято размещать в катологе /dev. Связь между такими специальными файлами и системой осуществляется с помощью драйверов. Каждое добавление устройства в систему требует также добавления драйвера и специального файла описания, сопровождаемого системной командой добавления специального узла mknod.
-
Характерной чертой файловой системы Unix является проблема восстановления файловой системы. Эта проблема возникает оттого, что при некоторых ситуациях возможно нарушение адресации в индексных узлах с появлением висячих ссылок, то есть неадресуемых блоков. И наоборот –появление блоков с множественными ссылками. Возможно также дублирование индексации блока в списке свободных и занятых блоков. Устранение таких сбоев ограниченно возможно путем длительного тестирования файловой системы программой fsck. Работа этой программы осуществляется в несколько этапов: проверка блоков и их количества, тестирование системы ссылок, проверка свободных и занятых блоков и узлов.
Внутренняя структура VFS
Рис. 3.12 показывает внутреннюю структуру виртуальной файловой системы.
На рисунке показаны в виде блоков: драйверы устройств вместе со своими компонентами; буфер-кэш вместе со своим демоном kflushd; виртуальная файловая система, составленная из физических файловых систем, и системный интерфейс, предназначенный для организации взаимодействия с VFS.

Зависимости от других подсистем ядра
На рис. 3.1 з показано, что файловая подсистема зависит от всех подсистем ядра. В частности, ее связи с сетевой подсистемой основаны на том, что фактически сокеты представляют собой дескрипторы файлов. Контроллер памяти зависит от файловой системы, так как она поддерживает процесс свопинга. IРС подсистема зависит от файловой системы вследствие поддержки каналов. Планировщик загружает процессы из файловой системы и т.п.

Кроме того, файловая система использует интерфейс сетевой подсистемы для поддержки сетевой файловой системы NFS; она также использует буферный кэш для организации работы виртуального диска; она использует подсистему IPC для поддержки работы загружаемых модулей, и, наконец, она использует планировщик для размещения приостановленных процессов, пока они ожидают готовности оборудования.
