- •Раздел 1. Операционная система unix. Введение в операционную систему unix
- •Отличительные черты ос unix
- •Основы архитектуры операционной системы unix Модель системы unix.
- •Структура ядра ос unix.
- •Основы файловой системы ос unix
- •Типы файлов
- •Структура файловой системы unix
- •Владельцы файлов
- •Права доступа к файлу
- •Дополнительные атрибуты файлов
- •Устройства
- •Маска создания файла
- •Программы Oc unix
- •Процессы ос unix
- •Типы процессов
- •Атрибуты процесса
- •Процесс создания и запуска программ
- •Системный вызов завершения процесса exit
- •Системные функции типа exec
- •Обработка ошибок
- •Ограничения для процессов
- •Пользователи системы, Атрибуты пользователя
- •Средства ВзаимодействиЯ между процессАми
- •Сигналы
- •Посылка сигналов.
- •Int raise (int sig); // посылает сигнал вызывающему процессу (т.Е. Самому себе).
- •Обработка сигналов.
- •Набор сигналов.
- •Файловая подсистема ос unix
- •Индексный дескриптор
- •Блоки хранения данных
- •Недостатки и ограничения файловой системы s5fs
- •Файловая система ffs (Fast File System)
- •Основные отличия ffs от s5fs
- •Ограничения ffs
- •Каталоги ffs
- •Раздел 2. Взаимодействие процессов. Процесс, Понятие и классификация
- •Ресурсы, Понятие и классификация
- •Взаимодействие процессов Задача взаимного исключения
- •Integer очередь;
- •ОБобщенная задача взаимного исключения
- •Integer очередь;
- •Синхронизирующие примитивы (семафоры)
- •Процесс 1 :
- •Процесс 2 :
- •V(свободно);
- •Задача “производитель-потребитель” применение ОбщиХ семафорОв
- •Задача “производитель-потребитель” (буфер ограниченНый)
- •Взаимодействие через переменные состояния
- •Integer array желание[1:n], сп[1:n];
- •Integer чпб, бб, рб, чсеб, I;
- •Integer разм_п, n, max, nmax;
- •Проблема тупиков
- •Алгоритм банкира
- •Integer Св_Деньги; boolean Безопасно;
- •If ((Завершение_под_сомнением [I]) and
- •Применение алгоритма банкира
- •V(Взаимн_искл);
- •V(Возвращенные_Талеры[Номер_Клиента[m]]);
- •If (Попытка_выдать_талер_клиенту(h))
- •Монитороподобные средства синхронизации
- •Механизм типа «критическая область»
- •Механизм типа «условная критическая область»
- •Var s : semaphore; считывание : boolean; m : t;
- •Раздел 3. Вычислительные структуры. Машины, управляемые контроллерами (устройствами управления)
- •Усовершенствованная структура вычислительной машины, управляемой контроллерОм
- •Системы с операционным конвейером
- •Мультипроцессорные системы
- •Транспьютеры
- •Распределение памяти в транспьютерах
- •Диспетчеризация процессов
- •Организация ВводА / выводА в транспьютере.
- •Гарвардская архитектура на примере процессоров семейства adsp
Файловая система ffs (Fast File System)
Суперблок |
Массив свободных блоков и индексных дескрипторов |
ilist |
Блоки хранения данных |
Суперблок |
Суперблок …….. |
Файловая система FFS обладает полной функциональностью системы S5FS и использует те же структуры данных ядра ОС. Отличия касаются расположения файловой системы на диске, дисковых структур данных и алгоритмов размещения свободных блоков.
Здесь суперблок также содержит полное описание файловой системы и располагается в начале раздела, но в нём не хранятся данные о свободных блоках для хранения данных. Следовательно, данные суперблока остаются неизменными на протяжении существования файловой системы. Для повышения надёжности файловой системы суперблок дублируется, т. к. он очень важен.
Физический диск разделён на одну или несколько групп цилиндров. Цилиндр – это набор одноименных дорожек по всем пластинам диска. Группа цилиндров несколько последовательных дисковых цилиндров. Структура данных во всех группах одинаковая. Каждая группа цилиндров содержит управляющую информацию, включающую резервную копию суперблока, массив индексных дескрипторов, данные о свободных блоках и свободных индексных дескрипторах.
В этой файловой системе индексные дескрипторы располагаются по всему дисковому разделу, а не в его начале. За счёт этого достигается уменьшение время доступа к данным файла, т.к. блоки данных располагаются ближе к описывающим их индексным дескрипторам. Это также повышает надёжность файловой системы, т.к. уменьшается вероятность потери всех индексных дескрипторов.
Управляющая информация располагается с различными смещениями от начала группы цилиндров. Это ведёт к тому, что управляющая информация не располагается на одной дисковой пластине, иначе выход из строя одной пластины привел бы к выходу из строя всей файловой системы.
В этой файловой системе предприняты меры по повышению её производительности за счёт того, что предусмотрена возможность дополнительной фрагментации дисковых блоков. FFS поддерживает максимальный размер блока до 64Kb, а минимальный размер фрагмента определяется размером дискового сектора (минимальной адресуемой единицей информации на диске).
Блок является единицей передачи данных в операциях ввода/вывода, а фрагмент определяет адресуемую единицу хранения данных на диске. Не факт, что в одном блоке будут храниться данные только одного файла.
Информация о свободных блоках и фрагментах хранится в виде битовой карты (битовый вектор), т.е. каждому фрагменту ставится в соответствие 1 бит этого вектора. Для определения свободен блок или занят, необходимо проверить 1 бит ( 1 – занят, 0 – свободен).
Основные отличия ffs от s5fs
Файлы, по возможности размещаются в блоках хранения данных, принадлежащих одной группе цилиндров, где расположены и его метаданные.
Все файлы каталога, по возможности, размещаются в одной группе цилиндров.
Каждый новый каталог, по возможности, помещается в группу цилиндров, отличную от группы родительского каталога. Этим достигается равномерное распределение данных по диску.
Последовательные блоки размещаются исходя из оптимизации физического доступа. Это основано на том, что чтение данных с диска состоит из нескольких операций.