
- •А.Н. Езин операционные системы
- •Содержание
- •Пояснительная записка
- •Тематический план
- •Содержание и форма отчета по самостоятельной работе.
- •Самостоятельная работа 2
- •2.Материал для изучения:
- •3.Задание:
- •Самостоятельная работа3
- •2.Материал для изучения:
- •3.Задание:
- •Самостоятельная работа 4
- •2.Материал для изучения:
- •3.Задание:
- •Самостоятельная работа5
- •2.Материал для изучения:
- •3.Задание:
- •Самостоятельная работа6
- •2.Материал для изучения:
- •3.Задание:
- •Самостоятельная работа7
- •2.Материал для изучения:
- •3.Задание:
- •Самостоятельная работа8
- •2.Материал для изучения:
- •3.Задание:
- •Самостоятельная работа9
- •2.Материал для изучения:
- •3.Задание:
- •Самостоятельная работа 10
- •2.Материал для изучения:
- •3.Задание:
- •Самостоятельная работа 11
- •2.Материал для изучения:
- •3.Задание:
- •Самостоятельная работа 12
- •2.Материал для изучения:
- •3.Задание:
- •Самостоятельная работа 13
- •2.Материал для изучения:
- •3.Задание:
- •Самостоятельная работа 14
- •2.Материал для изучения:
- •3.Задание:
- •Самостоятельная работа 15
- •2.Материал для изучения:
- •3.Задание:
- •Самостоятельная работа 16
- •2.Материал для изучения:
- •3.Задание:
- •Самостоятельная работа 17
- •2.Материал для изучения:
- •3.Задание:
- •Самостоятельная работа 18
- •2.Материал для изучения:
- •3.Задание:
- •Самостоятельная работа 19
- •2.Материал для изучения:
- •3.Задание:
- •Самостоятельная работа 20
- •2.Материал для изучения:
- •3.Задание:
- •Самостоятельная работа 21
- •2.Материал для изучения:
- •3.Задание:
- •Самостоятельная работа 22
- •2.Материал для изучения:
- •3.Задание:
- •Литература
Самостоятельная работа6
Взаимодействие и синхронизация процессов и потоков. Тупики и методы борьбы с ними
1. Цель работы: освоить основные методы организации взаимодействия процессов и потоков; изучить механизмы синхронизации процессов и потоков; овладеть методами прогнозирования возникновения тупиковой ситуации.
2.Материал для изучения:
Литература: Л1 с. 100 - 122; Л2 с. 113 - 131; Л3 с.209 - 277; Л4 с. 158 - 175; Л5 с. 375 - 416.
3.Задание:
3.1. Составить конспект по данной теме.
3.2. Ответить на контрольные вопросы:
Дайте характеристику возможным уровням параллелизма выполнения программ.
Что такое состояние состязания процессов, взаимоисключения и критические участки?
В чем суть возникновения взаимоблокировок процессов?
Дайте характеристику методам обнаружения и предотвращения тупиков?
Что такое мьютекс, как он используется?
Каким образом файлы, процессы и потоки могут быть использованы для синхронизации?
Перечислите синхронизирующие объекты ОС.
Что такое семафор, как он используется?
Что такое мониторы Хоара и Хансена? Как и когда они используются?
Какие методы могут использоваться для ликвидации тупиковых ситуаций?
Как по графу процессов и ресурсов можно обнаружить тупиковую ситуацию?
В чем заключаются недостатки использования блокирующих переменных для реализации взаимоисключений потоков?
Перечислите методы взаимоисключений процессов.
Когда возникает необходимость в синхронизации процессов?
Что такое задача читатели-писатели? Как она решается?
3.3. Выполнить упражнения:
А) В системе есть 3 процесса и 4 ресурса, которые можно предоставить процессам. Текущее распределение ресурсов и максимальное их количество следующее:
Процесс |
Предоставлено R1,R2,R3,R4 |
Требуется R1,R2,R3,R4 |
Максимально R1,R2,R3,R4 |
A |
0 0 1 0 |
2 0 0 1 |
4 2 3 3 |
B |
2 0 0 1 |
1 1 0 0 | |
C |
0 1 2 0 |
2 1 0 1 |
Будет ли в системе тупиковая ситуация?
Б) Пусть система из семи процессов (A, B, C, D, E, F, G) и шести ресурсов по одному каждого вида (R, S, T, V, W, U) в некоторый момент времени соответствует следующему списку:
процесс A занимает ресурс S и хочет получить ресурс R;
процесс B ничего не использует, но хочет получить ресурс T;
процесс C ничего не использует, но хочет получить ресурс S;
процесс D занимает ресурс V и хочет получить ресурсы S и T;
процесс E занимает ресурс T и хочет получить ресурс V;
процесс F занимает ресурс W и хочет получить ресурс R;
процесс G занимает ресурс U и хочет получить ресурс V.
Определить, заблокирована ли эта система и если да, то какие процессы в этом участвуют? Ответ получить, построив граф ресурсов и процессов.
В) Зачем в системе команд многих компьютеров предусмотрена единая, неделимая команда анализа и присвоения значения логической переменной, хотя эти же действия могут быть выполнены с помощью двух разных команд, также обычно присутствующих в системе команд? Дайте аргументированный ответ.
Самостоятельная работа7
Аппаратно-программные средства поддержки мультипрограммирования. Системные вызовы
1. Цель работы: ознакомиться с аппаратно-программными средствами поддержки мультипрограммирования; изучить реализацию системных вызовов.