Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ВОПРОСЫ К ЭКЗАМЕНУ ОС.doc
Скачиваний:
14
Добавлен:
23.09.2019
Размер:
612.35 Кб
Скачать

45 Справедливое планирование и планирование в системах реального времени.

Справедливое планирование

Если пользователь 1 создаст 9 процессов, а пользователь 2 — 1 процесс, то с использованием циклического планирования или в случае равных приоритетов пользователю 1 достанется 90 % процессора, а пользователю 2 всего 10. Чтобы избежать подобных ситуаций, некоторые системы обращают внимание на хозяина процесса перед планированием. В такой модели каждому пользователю достается некоторая доля процессора, и планировщик выбирает процесс в соответствии с этим фактом. Если в нашем примере каждому из пользователей было обещано по 50 % процессора, то им достанется по 50 % процессора, независимо от количества процессов. Т.е. процессорное время распределяется среди пользователей, а не процессов. Это справедливо если у одного пользователя несколько процессов, а у другого один.

Планирование в системах реального времени

Системы реального времени делятся на: - жесткие (жесткие сроки для каждой задачи) - управление движением. - гибкие (нарушение временного графика не желательны, но допустимы) - управление видео и аудио. Внешние события, на которые система должна реагировать, делятся: - периодические - потоковое видео и аудио. - непериодические (непредсказуемые) - сигнал о пожаре. Что бы систему реального времени можно было планировать, нужно чтобы выполнялось условие: m - число периодических событий i - номер события P(i) - период поступления события T(i) - время, которое уходит на обработку события Т.е. перегруженная система реального времени является не планируемой.

46 Выгружаемые и невыгружаемые ресурсы. Условия взаимоблокировки.

Взаимоблокировка процессов может происходить, когда несколько процессов борются за один ресурс. Ресурсы бывают выгружаемые и невыгружаемые, аппаратные и программные. Выгружаемый ресурс - этот ресурс безболезненно можно забрать у процесса (например: память). Невыгружаемый ресурс - этот ресурс нельзя забрать у процесса без потери данных (например: принтер). Проблема взаимоблокировок процессов возникает при борьбе за невыгружаемый ресурсы. Условия необходимые для взаимоблокировки: 1. Условие взаимного исключения - в какой-то момент времени, ресурс занят только одним процессом или свободен. 2. Условие удержания и ожидания - процесс, удерживающий ресурс может запрашивать новые ресурсы. 3. Условие отсутствия принудительной выгрузки ресурса. 4. Условие циклического ожидания - должна существовать круговая последовательность из процессов, каждый, из которого ждет доступа к ресурсу, удерживаемому следующим членом последовательности.

47 Моделирование взаимоблокировок.

В компьютерных системах существует большое количество ресурсов, каждый из которых в конкретный момент времени может использоваться только одним процессом. В качестве таких примеров можно привести принтеры, накопители на магнитной ленте и элементы внутренних таблиц системы. Появление двух процессов, одновременно передающих данные на принтер, приведет к печати бессмысленною набора символом Наличие двух процессов, использующих один и тот же элемент таблицы файловой системы, обязательно станет причиной разрушения файловой системы. Поэтому все операционные системы обладают способностью предоставлять процессу эксклюзивный доступ (по крайней мере, временный) к определенным ресурсам. Часто для выполнения прикладных задач процесс нуждается в исключительном доступе не к одному, а к нескольким ресурсам. Предположим, например, что каждый из двух процессов хочет записать отсканированный документ на компакт-диск. Процесс Л запрашивает разрешение на использование сканера и получает его. Процесс В запрограммирован по-другому, поэтому сначала запрашивает устройство для записи компакт-дисков и также получает его. Затем процесс Л обращается к устройству для записи компакт-дисков, но запрос отклоняется до тех пор. Пока это устройство занято процессом В. Вместо того чтобы освободить устройство для записи компакт-дисков, В запрашивает сканер. В этот момент процессы заблокированы и будут вечно оставаться в этом состоянии. Такая ситуация называется тупиком, тупиковой ситуацией или взаимоблокировкой.

<- На такой модели очень хорошо проверить возникает ли взаимоблокировка. Если есть цикл, значит, есть и взаимоблокировка.