
- •1. Состав и назначение и классификация операционной системы Введение
- •Понятие процесса и ресурса
- •Состав операционной системы
- •Классификация ос
- •Ос пакетной обработки
- •Ос оперативной обработки
- •Моделирование режима мультипрограммирования
- •2. Планирование процессов Понятия о планировании и диспетчеризации процессов
- •Создание процессов
- •Завершение процесса
- •Состояние процесса
- •Алгоритмы планирования
- •Методы планирования
- •Детерминированное планирование
- •Планирование по критерию минимума суммарного времени выполнения работ
- •Стохастическое планирование
- •Последовательный выбор
- •Алгоритм одноуровневого циклического выбора
- •Алгоритм многоуровневого циклического выбора
- •Планирование процессов на основе приоритетов
- •Обслуживание с абсолютными приоритетами
- •3. Синхронизация процессов Цели и средства синхронизации процессов
- •Понятие системные вызовы. Критические секции
- •Синхронизация методом взаимных исключений
- •Метод блокирующей переменной (спин-блокировка)
- •Блокирующей переменной с использованием системного вызова
- •Метод семафоров
- •Условная (барьерная) синхронизация
- •Тупиковые ситуации во взаимодействии процессов и методы их устранения
- •3. Управление памятью Проблемы организации памяти мультипроцессорных вычислительных систем. Функции ос по управлению памятью.
- •Методы защиты памяти
- •Метод граничных ресурсов
- •Метод ключей защиты
- •Защита отдельных ячеек
- •Организация виртуальной памяти
- •Статическое и динамическое распределение памяти. Распределение памяти фиксированными разделами
- •Страничная организация виртуальной памяти
- •Сегментная и сегментно-страничная организация виртуальной памяти
- •Структура страничной таблицы
- •Методы уменьшения времени доступа к памяти Обеспечение быстрого доступа к данным кэш-память
- •Ускорение формирования адреса. Буферы быстрого преобразования адреса
- •Алгоритмы замещения страниц в виртуальной памяти
- •4. Архитектура операционной системы
- •Многослойная структура ос
Ос пакетной обработки
Задачи, планируемые к выполнению, называются пакетом. Системы пакетной обработки функционирует в режиме непрерывного выполнения задания, и пользователь не имеет непосредственного контакта с программой на стадии выполнения. Переключение между задачами в пакетном режиме инициируется выполняющейся в данный момент задачей, поэтому промежутки времени выполнения той или иной задачи неопределены.
В машинах ранних поколений этот режим использовался широко и заключается в следующем. Сформированный пакет задач, рассчитанный на длительное время обработки (на час и более), размещался на одном из внешних носителей, после чего запускался. Результаты предоставлялись пользователю после выполнения всего пакета заданий.
В современном понимании пакетная обработка заключается в том, что пользователь запускающий задание локально или удаленно, прямого оперативного управления вычислительным процессом, реализуемым этим заданием, не имеет. Задание выполняется либо до конца, либо до аварийного завершения.
Модель пакетной обработки, представленная сетевой системой массового обслуживания, имеет вид, показанный на рис. 2.
Рис.2. Модель пакетной обработки
Программа «планировщик» устанавливает порядок выполнения задач: FIFO, LIFO, по приоритетному принципу и др. Основным критерием при планировании процессов является минимизация времени выполнения пакета работ или максимизация загрузки устройств.
Ресурсы процессам предоставляет супервизор, являющийся частью ядра операционной системы. В универсальных вычислительных системах непосредственный доступ процесса к ресурсам отсутствует из-за возможных коллизий. Поэтому запросы на ресурсы удовлетворяются через ядро операционной системы с помощью специальных команд ОС – системных вызовов. Системные вызовы обеспечивают интерфейс между операционной системой и пользовательскими программами, позволяя им обращаться за услугами ядра ОС. При системном вызове задача переходит в привилегированный режим или режим ядра. В данном режиме работы процессора доступны привилегированные операции, к которым относят и операции ввода-вывода к периферийным устройствам. Системный вызов похож на обычный вызов подпрограммы и реализуется с использованием программных прерываний.
Время решения задачи может составлять единицы и десятки часов. Этот режим плох для отладки программ, т.к. программист не имеет непосредственного контакта с запущенной программой. Однако СПО обладают высокой пропускной способностью, т.е. большим числом задач, выполняемых в единицу времени. Это важное преимущество систем пакетной обработки объясняется небольшим числом прерываний во время выполнения задачи, запросы которых инициируются в основном подсистемой внешней памяти в процессе подкачки или откачки (свопинга) программ или данных в/из виртуальной памяти. Таким образом, пакетная обработка используется для достижения максимальной эффективности использования ресурсов вычислительной машины при выполнении вычислительных задач.