![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Двоичный семафор
С каждым семафором связывается список процессов, ожидающих разрешения пройти семафор. ОС может выполнить три действия над процессами: 1) может назначить для исполнения готовый процесс; 2) может заблокировать исполняющийся процесс и поместить его в список, связанный с конкретным семафором; 3) может деблокировать процесс, тем самым переводя его в готовое к исполнению состояние и позволяя ему когда-нибудь возобновить исполнение. Находясь в списке заблокированных, ожидающий процесс не проверяет семафор непрерывно, как в случае активного ожидания. Вместо него на процессоре может исполняться другой процесс (рис. 5, 6).
Рис.5. Временная диаграмма для двоичного семафора (S)
Достоинство синхронизации на основе семафорных операций – отсутствие активного ожидания представления ресурса.
Рис. 6. Временная диаграмма для двоичного семафора (семафоры - S1 и S2) Б – блокировано, СS1 и CS2 – критические участки 1 и 2, идентифицированные семафорами S1 и S2.
|