Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Лекция №10. Процесс Порядок захвата ресурсов Порядок освобождения ресурсов A S




 

Процесс Порядок захвата ресурсов Порядок освобождения ресурсов
A S, R
B T, S
C T, R

 

 
 

 

 


Последовательность:

 

 

Последовательность:

Здесь – захват потоком A ресурса R; – освобождение потоком A ресурсов R и S.

Вывод:

1) тупики возникают не при каждом исполнении;

2) аккуратным планированием можно избежать блокировок;

3) блокировки можно обнаружить;

 

 

Стратегии борьбы с блокировками

1. «Страусовый алгоритм»:

Допущение, что блокировки в системе можно игнорировать. Усилия, затраченные на преодоление блокировок, могут себя не оправдать.

2. Обнаружение и устранение:

Дать возможность произойти блокировке, обнаружить ее и предпринять действия для ее исправления.

 

Способы восстановления:

- принудительная выгрузка ресурса;

- восстановление через откат (прежде чем захватить ресурс, процесс сохраняет свое состояние (checkpoint, контрольная точка), в случае конфликта можно вернуться к сохраненному состоянию);

- выгрузить процесс целиком (если нет побочных эффектов (процесс не влияет на состо­яние системы)).

 

Обнаружение тупика в случае единственности ресурса каждого типа:

1) В текущем состоянии построить граф Холта;

2) Обнаружить на нем цикл по какому-либо алгоритму:

 

Процесс Захват ресурса Ждет ресурс
A R S
B - T
C - S
D V S, T
E T V
F W S
G V U

Алгоритм:

Выполняется для каждой вершины графа, в начале все ребра не марки­рованы.

1. Список посещенных вершин пустой, выбираем начальную вершину M.

2. M добавляем в список. Если M в списке есть, то обнаружен цикл.

3. Если у M имеется немаркированное исходящее ребро, то идем к шагу 4, ина­че – к шагу 5.

4. Выбираем любое немаркированное ребро, маркируем его, переходим к но­вой вершине и объявляем её текущей; переходим к шагу 2.

5. Удаляем последнюю вершину из списка, выбираем ее текущей, переходим к шагу 3.

 

Обнаружение тупика, если имеется несколько ресурсов каждого типа:

(E 1, E 2, …, Em)= E – вектор ресурсов;

Ej - сколько ресурсов типа j (1 j m)

(A 1, A 2, …, Am)= A – вектор доступных ресурсов

Матрица текущего распределения ресурсов:

, где – сколько процесс i получил ресурсов типа j.

Матрица запросов ресурсов:

Алгоритм:

Все процессы не маркированы:

1) В матрице R ищем строку, соответствующую немаркированному процессу, которая меньше либо равна А, (ri A).

2) Если такая строка найдена, то маркируем процесс, прибавляем строку к вектору А, возвращаемся к шагу 1.

3) Если процессов нет, то конец.

Если находятся немаркированные процессы, то они в тупике.

Пример: Находится ли система в тупике?

E=(4, 2, 3, 1) A=(2, 1, 0, 0)

 




Поделиться с друзьями:


Дата добавления: 2014-12-07; Просмотров: 432; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.