The design of the UNIX Operating System 23 страница
Здесь критический участок для каждого процесса – от операции "Обнаруживает, что хлеба нет" до опе-рации " Возвращается в комнату" включительно. В результате отсутствия взаимоисключения мы из си - туации "Нет хлеба" попадаем в ситуацию "Слишком много хлеба". Если бы этот критический участок выполнялся как атомарная операция – "Достает два батона хлеба", то проблема образования излишков была бы снята.

Таблица 5.1.

Время Студент 1 Студент 2 Студент 3

| 17-05 | Приходит в комнату | ||||
|
| |||||
| 17-07 | Обнаруживает,что хлеба нет | ||||
|
| |||||
| 17-09 | Уходит в магазин | ||||
|
| |||||
| 17-11 | Приходит в комнату | ||||
|
| |||||
| 17-13 | Обнаруживает, что хлеба нет | ||||
|
| |||||
| 17-15 | Уходит в магазин | ||||
| 17-17 | Приходит в комнату | ||||
| 17-19 | Обнаруживает,что хлеба нет | ||||
| 17-21 | Уходит в магазин | ||||
|
| |||||
| 17-23 | Приходит в магазин | ||||
|
| |||||
| 17-25 | Покупает 2 батона на всех | ||||
|
| |||||
| 17-27 | Уходит из магазина | ||||
|
| |||||
| 17-29 | Приходит в магазин | ||||
|
| |||||
| 17-31 | Покупает 2 батона на всех | ||||
|
| |||||
| 17-33 | Уходит из магазина | ||||
| 17-35 | Приходит в магазин | ||||
| 17-37 | Покупает 2 батона на всех | ||||
| 17-39 | Уходит из магазина | ||||
|
| |||||
| 17-41 | Возвращается в комнату | ||||
| 17-43 | |||||
| Основы операционных систем | 52 |

17-45

17-47
Возвращается в комнату

17-49

17-51

17-53
Возвращается в комнату

Сделать процесс добывания хлеба атомарной операцией можно было бы следующим образом: перед на-чалом этого процесса закрыть дверь изнутри на засов и уходить добывать хлеб через окно, а по оконча-нии процесса вернуться в комнату через окно и отодвинуть засов. Тогда пока один студент добывает хлеб, все остальные находятся в состоянии ожидания под дверью (таблица 5.2).

Таблица 5.2.

Время Студент 1 Студент 2 Студент 3

17-05 Приходит в комнату

17-07 Достает два батона хлеба
17-43
Приходит в комнату 
17-47
Приходит в комнату
Дата добавления: 2021-01-21; просмотров: 98; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!
