Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Общая схема работы процессов с критической секцией
В момент времени т1 процесс А попадает в критическую область, в момент времени т2 процесс В пытается попасть в критическую область, но блокируется до момента времени т3 (момент выхода процесса А из критической области). В момент времени т4 процесс В также покидает критическую область. И как же это сделать? Взаимное исключение с активным ожиданием – методы реализации: Запрещение прерываний. Процесс при входе в критическую область отключает возможность прерываний (переключений на другие процессы) до тех пор, пока не выйдет из критической области. Неприемлемо для пользовательских процессов. Некорректно написанная пользовательская программа, если ей позволить запрещать прерывания, может нарушить работу всей системы. Переменные блокировки. Программное решение. Создаются переменные, которые отображают использование критической области. Данный метод рождает состояние состязания, т.к. два процесса, обращаясь к одной переменной, могут переключаться после считывания, не успевая ее изменить. Строгое чередование. Каждому процессу присваивается свое значение переменной блокировки. Нарушается третье условие устранения состояния состязания – процесс может блокировать другой процесс вне критической области. Алгоритм Петерсона. Используется специальная функция, которая при входе в критическую область изменяет переменную состояния, но при этом используется еще переменная, обозначающая нахождение процесса внутри критической области. При выходе из критической области вызывается другая функция, которая разрешает вход в критическую область другим процессам. Команда TSL. Использование аппаратной переменной гарантирует, что при изменении переменной не произойдет прерывания. Date: 2016-06-06; view: 412; Нарушение авторских прав |