Механизмы синхронизации процессов
Операционная система
- Дайте понятие операционной системы. Перечислите известные вам компоненты ОС и их назначение. Классификация операционных систем.
- Какие требования предъявляются к операционным системам реального времени. Перечислите ограничения и требования, предъявляемые к различным подсистемам операционной системы.
Процессы
- Дайте определение понятию процесс. В чём состоит отличие процесса от приложения.
- Представьте схему состояния процесса. Определите ключевые характеристики для каждого из состояний и условия перехода из одного состояния в другое. Представьте расширенную схему состояний в ОС UNIX.
- Определите содержимое контекстов процесса. Укажите какие изменения происходят в содержимом контекстов при всех изменениях состояния процесса.
- Дайте определение генеологическому дереву процессов. Каким образом определяется взаимоотношение процессов (родетеля и ребёнка). Представьте схемы создания процессов.
- Опишите процесс переключения контекста между двумя процессами.
Планирование процессов
- Планировщик и планирование процессов. Уровни планирования.
- Критерии планирования процессов. Требования к алгоритмам краткосрочного планирования процессов. Критерии оценки алгоритмов краткосрочного планирования.
- Параметры планирования процессов. Вытесняющее и невытесняющее, вынужденное и невынужденное планирование.
- Алгоритмы краткосрочного планирования Firt Come First Serve и Round Robin.
- Алгоритмы краткосрочного планирования Shortest Job First: идея и вариант реалиации.
- Алгоритмы краткосрочного планирования: гарантированное и приоритетное планирование.
- Алгоритмы краткосрочного планирования: многоуровневые очереди и многоуровневые очереди с обратной связью.
Для каждого из рассматриваемых алгоритмов планирования необходимо уметь:
* применять рассмотренный алгоритм на практике;
* оценивать результаты работы алгоритма;
* изменять параметры алгоритма в соответствии с требованиями к применению алгоритма.
Кооперация процессов
- Цели взаимодействия процессов. Определение взаимодействующих процессов. Категории средств для обмена информации.
- Инициализация, адресация и валентность средств связи.
- Линии связи. Варианты буферизации информации. Модели организации данных при передаче.
- Надёжность средств связи. Обеспечение надёжности передачи данных для линий связи.
Алгоритмы синхронизации
- Активности, атомарные операции, псевдопараллельное выполнение активностей, детерминированный набор активностей, условия Бернстайна, race condition.
- Определение критической секции. Общая структура алгоритма синхронизации. Требования к алгоритмам синхронизации.
- Алгоритмы синхронизации процессов: запрет прерываний, переменная-замок.
- Алгоритмы синхронизации процессов: строгое чередование, флаги готовности.
- Алгоритм Петерсона для синхронизации процессов.
- Алгоритм булочной для синхронизации процессов.
- Аппаратная поддержка алгоритмов синхронизации, модернизация существующих алгоритмов.
Для каждого из рассматриваемых алгоритмов синхронизации необходимо:
* знать алгоритм синхронизации
* показывать соответствие и несоответствие требованиям к алгоритмам синхронизации
Механизмы синхронизации процессов
- Необходимость наличия специализированных механизмов синхронизации процессов. Проблема поставщика-потребителя.
- Семафоры. Решение проблемы поставщика-потребителя с помощью семафоров.
- Мониторы. Решение проблемы поставщика-потребителя с помощью мониторов.
- Сообщения. Решение проблемы поставщика-потребителя с помощью сообщений.
- Реализация мониторов с помощью семафоров.
- Реализация сообщений с помощью семафоров.
- Реализация семафоров с помощью мониторов.
- Реализация сообщений с помощью мониторов.
- Реализация мониторов с помощью сообщений.
- Реализация семафоров с помощью сообщений.