- •Вопросы для подготовки к экзамену по дисциплине «Операционные системы»
- •Тематический план
- •Лекция 1 (2/2) введение
- •В будущем:
- •Раздел 1. Основы теории операционных систем
- •Тема 1.1 Общие сведения об операционных системах
- •1. Системы пакетной обработки,
- •2.Системы разделения времени
- •3. Системы реального времени.
- •2. Мультипрограммирование в системах разделения времени
- •3. Мультипрограммирование в системах реального времени
- •Требования к ос
- •Тема 1.1 Общие сведения об операционных системах (продолжение)
- •Тема 1.2 Интерфейс пользователя
- •Тема 1.3 Операционное окружение
- •1. Основная ф-ция ос: ос как виртуальная машина
- •Раздел 2. Машинно-зависимые свойства
- •Тема 2.1 Архитектурные особенности модели микропроцессорной системы семейства Pentium.
- •С истемная магистраль данных (шина)
- •Оперативная память
- •5.1.1.2. Контроллеры.
- •5.1.1.3. Жесткий диск.
- •Центральный процессор
- •Характеристики процессора.
- •Тема 2.2 Обработка прерываний
- •Тема 2.3 Планирование процессов
- •Планировщик!!!!!!! Понятие вычислительного процесса и ресурса.
- •2. Основная ф-ция ос: Повышение эффективности использования компьютера за счет рационального управления его ресурсами.
- •Дисциплины диспетчеризации и алгоритмы планирования процессов
- •Алгоритмы планирования процессов
- •Тема 2.4 Обслуживание ввода-вывода
- •Основные понятия и концепции организации ввода/вывода в ос
- •Основные системные таблицы ввода/вывода
- •2. Таблица описания виртуальных логических устройств.
- •3. Таблица прерываний.
- •Очередь запросов ввода-вывода. Алгоритм обработки прерываний по вводу-выводу.
- •Тема 2.5 Управление памятью
- •Функции ос по управлению памятью.
- •Типы адресов.
- •Алгоритмы распределения реальной памяти.
- •Свопинг и виртуальная память. Методы распределения памяти с использованием дискового пространства
- •Свопинг
- •Страничное распределение
- •Сегментное распределение
- •Сегментно-страничное распределение
- •Раздел 3. Машинно-независимые свойства операционных систем
- •Тема 3.1 Работа с файлами
- •Тема 3.2 Планирование заданий
- •Тема 3.3 Распределение ресурсов
- •Средства синхронизации и взаимодействия процессов
- •Синхронизация процессов на основе семафорных операций
- •1. Двоичный семафор
- •2. Универсальный семафор (считающий семафор)
- •Тупики и методы борьбы с ними
- •1. Граф распределения ресурсов
- •3. Вычислительные схемы
- •Тема 3.4 Защищенность и отказоустойчивость операционных систем
- •Раздел 4. Работа в операционных системах dos и windows 2000
- •Тема 4.1 Структура операционной системы
- •Практическая работа №1 Изучение структуры операционной системы Windows 2000.
- •Тема 4.2 Интерфейс пользователя
- •Тема 4.3 Организация хранения данных
- •Тема 4.4 Средства управления и обслуживания
- •Тема 4.5 Утилиты операционной системы
- •Тема 4.6 Поддержка приложений других операционных систем
- •Раздел 5. Инсталляция и конфигурирование ос. Восстановление
- •Тема 5.1. Инсталляция и настройка ос.
- •Практическая работа №19 «Конфигурирование системы. Подключение новых устройств.»
- •Тема 5.2. Восстановление системы.
- •Практическая работа №20 «Работа с программами резервного копирования»
Синхронизация процессов на основе семафорных операций
Д
Рисунок 2
Реализация критической секции с
использованием системных
функций
WAIT(D) и POST(D)
Обобщающее средство синхронизации процессов предложил Дейкстра, который ввел два новых примитива. В абстрактной форме эти примитивы, обозначаемые P и V, оперируют над целыми неотрицательными переменными, называемыми семафорами. Пусть S такой семафор. Операции определяются следующим образом:
V(S) : переменная S увеличивается на 1 одним неделимым действием; выборка, инкремент и запоминание не могут быть прерваны, и к S нет доступа другим процессам во время выполнения этой операции.
P(S) : уменьшение S на 1, если это возможно. Если S=0, то невозможно уменьшить S и остаться в области целых неотрицательных значений, в этом случае процесс, вызывающий P-операцию, ждет, пока это уменьшение станет возможным. Успешная проверка и уменьшение также является неделимой операцией.
В частном случае, когда семафор S может принимать только значения 0 и 1, он превращается в блокирующую переменную. Операция P заключает в себе потенциальную возможность перехода процесса, который ее выполняет, в состояние ожидания, в то время как V-операция может при некоторых обстоятельствах активизировать другой процесс, приостановленный операцией P (сравните эти операции с системными функциями WAIT и POST).
Рассмотрим использование семафоров для взаимоисключения процессов.
1. Двоичный семафор
С каждым семафором связывается список процессов, ожидающих разрешения пройти семафор.
ОС может выполнить три действия над процессами:
может назначить для исполнения готовый процесс;
может заблокировать исполняющийся процесс и поместить его в список, связанный с конкретным семафором;
может деблокировать процесс, тем самым переводя его в готовое к исполнению состояние и позволяя ему когда-нибудь возобновить исполнение.
Находясь в списке заблокированных, ожидающий процесс не проверяет семафор непрерывно, как в случае активного ожидания. Вместо него на процессоре может исполняться другой процесс (рис. 5, 6).
Рис.5. Временная диаграмма для двоичного семафора (S)
До
момента t1 ресурс
был не занят. В момент t1
процесс Pr1, выполняет
операцию P(S)
и входит в критический участок (CS).
В момент t2 процесс Pr2
выполняет операцию P(S)
– занять ресурс, это приводит к изменению:
S = -1 – означает, что Pr2 в
состоянии блокирования.В момент t3
– конец критического участка для
процесса Pr1. Выполняется
операция V(S)
– освободить, это приводит к увеличению
значения S на единицу
(т.е. S=0). Для процесса
блокированного (Pr2) это
сигнал на разблокировку и предоставления
ему ресурса. В момент t4 процесс
Pr2 освобождает ресурс,
выполняется операция V(S),
которая изменяет значение S на 1 (т.е.
S=1).
Достоинство синхронизации на основе семафорных операций – отсутствие активного ожидания представления ресурса.
Рис. 6. Временная диаграмма для двоичного семафора (семафоры - S1 и S2)
Б – блокировано, СS1 и CS2 – критические участки 1 и 2, идентифицированные семафорами S1 и S2.
