Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Условие монопольного управления Хавендер не нарушает



№11 Обнаружение тупиков

Обнаружение тупика – установление факта наличия в системе процессов ожидающих «нереализуемое» состояние.

Основной подход к решению – построение графа распределения ресурсов и нахождение в нем циклов. (Чрезвычайно затратный подход. На практике в чистом виде не используется.)

Восстановление работы системы – продолжение работы некоторых процессов после устранения причины тупика.

Сложности решения:

• Неочевидность тупика.

• Трудно остановить процесс в произвольной точке кода.

• Большие накладные расходы на реализацию сохранения результатов.

• В системах с большим числом разноприоритетных процессов трудно удалить процессы с высоким приоритетом.

Виртуализация ресурсов – средство борьбы с тупиками

Система не устраняет условий возникновения тупиков – при возникновении конкурирующих запросов ВСЕ ресурсы могут быть заменены на «виртуальный аналог».

Особенности решения:

• Алгоритмически простое решение.

• Формально, не боится большого числа процессов.

• Сложность возврата из «виртуального мира» в реальный в случае иерархической виртуальности.

№12 Обход тупиков. Алгоритм банкира.

Алгоритм банкира – ресурсы процессу можно выдавать только в том случае, если состояние системы останется надежным.

Надежное состояние – ОС гарантирует всем процессам завершение в конечное время.

Введем следующие обозначения:

M(i) – максимальная потребность i-го процесса в ресурсе;

L(i) – текущая величина ресурса, выделенного i-му процессу;

С(i) – текущая потребность в ресурсе, C(i)=M(i)-L(i);

Т – суммарный ресурс, имеющийся в системе;

а – остаточный ресурс, а=Т-åL(i);

Пусть в некоторый момент времени в системе существуют три процесса.

  L(i) M(i) C(i)
Process 1      
Process 2      
Process 3      
a  

T=12

Решение примера

№13 Прерывания ОС и BIOS. Обработка прерываний.

Прерывание - это событие, при котором меняется последовательность команд, выполняемых процессором.

Что происходит после прерывания?

l Управление передается ОС

l ОС запоминает состояние прерванного процесса (например в PCB)

l Передача управления соответствующей программе обработчику прерывания

Типы прерываний.

SVC прерывание ( super visor call instruction ) - программа вызывает супервизор – ОС, то есть требует системную услугу.

то есть SVC – механизм не позволяет получать программе пользователя системные ресурсы без контроля со стороны ОС (механизм доступа, паролей и так далее)

l I/O прерывание: инициатор – устройство ввода-вывода (изменение его состояния)

l Внешнее прерывание (оператор, другой процессор)

l Прерывание по рестарту (при сигнале рестарт процессору)

l Прерывание по ошибке программы Прерывание по ошибке ЭВМ





Дата публикования: 2015-02-03; Прочитано: 332 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...