- •Раздел 1. Архитектура операционных систем Тема 1. Принципы построения операционных систем
- •1.1. Понятие об архитектуре аппаратных средств
- •1.1.1. Вводные замечания
- •1.1.2. Классификация программных средств
- •1.1.3. Место и функции системного программного обеспечения
- •1.2. Принципы работы вычислительной системы
- •1.3. Режимы работы операционных систем
- •1.3.1. Режимы обработки данных
- •1.3.1.1. Однопрограммные режимы обработки данных
- •1.3.1.2. Многопрограммные режимы обработки данных
- •1.3.2. Режимы и дисциплины обслуживания
- •1.3.2.1. Режимы обслуживания
- •1.3.3.2. Дисциплины обслуживания
- •1.4. Классификация операционных систем
- •1.4.1. Особенности алгоритмов управления ресурсами
- •1.4.1.1. Поддержка многозадачности
- •1.4.1.2. Поддержка многонитевости
- •1.4.2. Особенности аппаратных платформ
- •1.4.3. Особенности областей использования
- •1.4.4. Особенности методов построения
- •1.5. Основные принципы построения операционных систем
- •1.6. Пользовательский интерфейс операционных систем
- •1.6.1. Классификация интерфейсов
- •1.6.2. Пакетная технология.
- •1.6.3. Технология командной строки.
- •1.6.4. Графический интерфейс
- •1.6.4.1. Простой графический интерфейс.
- •1.6.4.2. Wimp-интерфейс
- •1.6.5. Речевая технология
- •1.6.6. Биометрическая технология)
- •1.6.7. Семантический интерфейс.
- •Контрольные вопросы к теме 1
- •Тема 2. Концептуальные основы операционных систем
- •2.1. Концепция процесса
- •2.2. Концепция ресурса
- •2.3. Концепция виртуальности
- •2.4. Концепция прерывания
- •2.5. Понятие ядра и микроядра ос
- •2.5.1. Понятие ядра ос
- •2.5.2. Понятие микроядра ос
- •Контрольные вопросы к теме 2
- •Тема 3. Понятие управления задачами
- •3.1. Организация управления задачами
- •3.2. Средства и механизмы управления задачами
- •3.2.1. Средства управления задачами на уровне внешнего планирования
- •3.2.2. Средства управления задачами на уровне внутреннего планирования
- •3.3. Алгоритмы управления задачами
- •3.3.1. Алгоритмы управления задачами на уровне внешнего планирования
- •3.3.2. Алгоритмы управления задачами на уровне внутреннего планирования
- •3.3.2.1. Мультизадачность, процессы и нити Мультизадачность
- •Процессы
- •Контекст и дескриптор процесса
- •3.3.2.2. Состав алгоритмов внутреннего планирования
- •3.3.2.3. Алгоритм управления количеством процессов в рабочей смеси
- •3.3.2.4. Алгоритмы выбора очередности обработки
- •3.3.2.5. Алгоритмы выбора величины кванта
- •3.4. Взаимосвязанные и конкурирующие задачи
- •3.4.1. Средства управления ресурсами
- •3.4.2. Механизмы синхронизации процессов
- •3.4.2.1. Параллельные процессы и критические участки
- •3.4.2.2. Примитивы взаимоисключения
- •3.4.2.3. Программная реализация примитивов взаимоисключения
- •3.4.2.4. Реализация примитивов взаимоисключения с использованием аппаратных средств
- •3.4.2.5. Семафоры
- •3.4.2.6. Мониторы
- •3.4.3. Алгоритмы управления ресурсами
- •3.4.3.1. Вводные замечания
- •3.4.3.2. Алгоритм предоставления ресурса по первому обращению
- •3.4.3.3. Алгоритмы предотвращения тупиков
- •3.4.3.3.1. Стратегии предотвращения тупиков
- •3.4.3.3.2. Алгоритм предварительного распределения ресурсов
- •3.4.3.3.3. Алгоритм распределения ресурсов с освобождением при отказе
- •3.4.3.3.3. Алгоритм распределения с линейным упорядочением по типам ресурсов
- •3.4.3.3. Алгоритмы обхода тупиков
- •Контрольные вопросы к теме 3
- •Тема 4. Управление памятью в операционных системах
- •4.1. Понятие об организации и управлении физической памятью
- •4.2. Методы связного распределения основной памяти (без использования дискового пространства)
- •4.2.1. Связное распределение памяти для одного пользователя
- •4.2.2. Связное распределение памяти при мультипрограммной обработке
- •4.2.3. Стратегии размещения информации в памяти
- •4.3. Организация виртуальной памяти (с использованием дискового пространства)
- •4.3.1. Основные концепции виртуальной памяти
- •4.3.2. Схема прямого отображения адресов
- •4.3.3. Отображения адресов при страничной организации виртуальной памяти
- •4.3.4. Отображения адресов при сегментной организации виртуальной памяти
- •4.3.4. Отображения адресов при странично-сегментной организации виртуальной памяти
- •4.4. Управление виртуальной памятью
- •4.4.1. Стратегии управления виртуальной памятью
- •4.4.2. Стратегии вталкивания (подкачки)
- •4.4.3. Стратегии размещения
- •4.4.4. Стратегии выталкивания
- •Контрольные вопросы к теме 4
- •Тема 5. Управление файлами и вводом-выводом в ос
- •5.1.Методы организации данных в операционных системах
- •5.2. Методы доступа к данным
- •5.3. Объединение записей в блоки и буферизация
- •5.4. Управление файлами
- •5.4.1. Понятие файлового способа хранения данных и файловой системы
- •5.4.2. Организация файлов
- •5.4.3. Организация хранения файлов
- •5.4.4. Операции над файлами
- •5.4.5. Файловая система
- •5.4.5.1. Общая модель файловой системы
- •5.4.5.2. Современные архитектуры файловых систем
- •5.5. Система ввода-вывода
- •5.5.1. Общие положения
- •5.5.2. Физическая организация устройств ввода-вывода
- •5.5.3. Организация программного обеспечения ввода-вывода
- •5.5.3.1. Уровни организации программного обеспечения ввода-вывода
- •5.5.3.2. Обработка прерываний
- •5.5.3.3. Драйверы устройств
- •5.5.3.4. Независимый от устройств слой операционной системы
- •5.5.3.5. Пользовательский слой программного обеспечения
- •Контрольные вопросы к теме 5
2.2. Концепция ресурса
Одной из важнейших задач, решаемых современными ОС, является обеспечение эффективного и бесконфликтного распределения ресурсов вычислительной системы между процессами.
Ресурс вычислительной системы – средство вычислительной системы, которое может быть выделено процессу обработки данных на определенный интервал времени.
Основными ресурсами вычислительной системы являются: процессоры; области основной памяти; наборы данных; периферийные устройства; программы.
Для осуществления планирования и распределения ресурсов ОС необходима информация об их свойствах, что достигается введением упорядочения ресурсов по ряду классификационных признаков. Классификация ресурсов ВС представлена в табл.2.3 в направлении от наиболее абстрактных свойств в сторону более детального раскрытия в отношении реализации и использования этих свойств.
Таблица 2.3 – Классификация ресурсов
-
№п/п
Классификационный признак
Содержание класса
1.
Реальность существования
А. Физический
Б. Виртуальный
2.
Возможность расширения
средств
А. Эластичный
Б. Жесткий
3.
Степень активности
А. Активный
Б. Пассивный
4.
Время существования
А. Постоянный
Б. Временный
5.
Степень важности
А. Главный
Б. Второстепенный
6.
Стоимость
А. Дорогой
Б. Дешевый
7.
Структура
А. Простой
Б. Сложный
8.
Восстанавливаемость
А. Воспроизводимый
Б. Потребляемый
9.
Характер использования
А. Параллельно-используемый
Б. Последовательно-используемый
10.
Форма реализации
А. Мягкий
Б. Твердый
Признак “Реальность существования” ресурса разделяет ресурсы на физические и виртуальные (от англ. Virtual – возможный). Под физическим понимают ресурс, который реально существует и при распределении его между процессами в ВС обладает всеми присущими ему физическими характеристиками. Виртуальный ресурс – это некоторая модель физического ресурса.
Признак “Возможность расширения свойств” характеризует ресурс с точки зрения возможности построения на его основе некоторого виртуального ресурса. Физический ресурс, допускающий виртуализацию, т.е. размножение или расширение свойств, называют эластичным. В противном случае ресурс называется жестким.
Признак “Степень активности” отражает способность ресурса воздействовать на другие ресурсы ВС. Ресурс называется активным , если при его использовании он способен выполнять действия по отношению к другим ресурсам. В противном случае ресурс называется пассивным.
Различие ресурсов по признаку “Время существования” обусловлено динамикой ресурсов в отношении процессов, использующих их. Если ресурс существовал в системе до момента порождения процесса и доступен для использования на всем интервале времени существования процесса, то такой ресурс рассматривают как постоянный для данного процесса. Временный ресурс может появляться или уничтожаться в системе динамически в течение времени существования данного процесса.
Необходимость различать ресурсы по признаку “Степень важности” обусловлена двумя причинами: во-первых, необходимостью обеспечения должной работоспособности и, во-вторых, требованиями увеличения гибкости управления процессами и распределения ресурсов. Различают главные и второстепенные ресурсы. Ресурс является главным по отношению к конкретному процессу, если без его выделения процесс принципиально не может развиваться. Ресурсы, в отсутствие которых возможно некое альтернативное развитие процесса, называются второстепенными.
Разделение ресурсов по признаку “Стоимость” на дорогие и дешевые связано с реализацией принципа функциональной избыточности при распределении ресурсов.
Классификационным признаком “Структура” ресурсы разделяются на простые и составные. Ресурс является простым, если он, с точки зрения управляющей программы ВС, не содержит составных элементов и должен быть выделен процессу как единое целое. Составной ресурс характеризуется некоторой структурой, и при каждом акте распределения процесс может получить один или несколько составных частей такого ресурса. Простой и составной ресурсы различаются количеством своих состояний. Простой ресурс может находиться в одном из двух состояний – “занят” и “свободен”. Составной ресурс имеет более двух состояний: “свободен” – все элементы ресурса свободны; “занят” – все элементы ресурса распределены процессом; “частично занят” – часть элементов ресурса распределена процессом, остальные свободны. Иногда говорят о доле занятости составного ресурса (“занято 20%”, “свободно 50%” и т.п.).
Характер использования ресурсов устанавливается признаком “Восстанавливаемость”. Если при распределении системой некоторого ресурса допускается многократное выполнение действий последовательности ЗАПРОС-ВЫДЕЛЕНИЕ-ИСПОЛЬЗОВАНИЕ-ОСВОБОЖДЕНИЕ (З-В-И-О), то такой ресурс называют воспроизводимым. Иногда такого вида ресурсы называют также постоянными, поскольку они всегда находятся в составе ресурсов ВС. В отношении определенной категории ресурсов многократное применение последовательности З-В-И-О невозможно, поскольку на каком-либо цикле работы с ними может наступить ситуация исчерпания ресурса, т.е. обрыв последовательности на шаге ИСПОЛЬЗОВАНИЕ, после чего такой ресурс изымается из использования. Ресурсы с таким свойством называются потребляемыми.
Природа ресурса отражается классификационным признаком “Характер использования”. Ресурс называется последовательно-используемым, если он может использоваться одновременно только одним процессом. Если ресурс одновременно может быть выделен и использован несколькими параллельно работающими процессами, то он называется параллельно-используемым ресурсом. Для обозначения последовательно-используемого ресурса употребляют также термины “монопольно-используемый ресурс” и “критический ресурс”. Параллельно-используемые ресурсы называют разделяемыми ресурсами. Заметим, что один и тот же ресурс может выступать как последовательно-используемый, так и параллельно-используемый.
По признаку “Форма реализации” различают твердые и мягкие ресурсы. Под твердыми ресурсами понимают аппаратные компоненты вычислительной системы (от англ. Hardware – твердое изделие, дословно – скобяной товар). Остальные ресурсы называют мягкими (от англ. Software – мягкое изделие).