Содержание
- 2. Параллельные процессы Параллельные процессы — процессы, выполнение (обработка) которых хотя бы частично перекрывается по времени. Независимые
- 3. Разделение ресурсов Разделение ресурса — совместное использование несколькими процессами ресурса ВС. Критические ресурсы — разделяемые ресурсы,
- 4. Процесс А input(in); output(in); X Y Y void echo () { char in; input ( in
- 5. Взаимное исключение Тупики (deadlocks) Блокирование (дискриминация) Тупик — ситуация, при которой из-за некорректной организации доступа и
- 6. Тупики (Deadlocks) Процесс A Процесс B Ресурс 1 Ресурс 2 STOP STOP Доступ закрыт Доступ закрыт
- 7. Способы реализации взаимного исключения Запрещение прерываний и специальные инструкции Алгоритм Петерсона Активное ожидание Семафоры Дейкстры Мониторы
- 8. Семафоры Дейкстры Down ( S ) или P ( S ) – Proberen (проверить) Up (
- 9. Использование двоичного семафора для организации взаимного исключения Двоичный семафор — семафор, максимальное значение которого равно 1.
- 10. Мониторы Хоара Монитор Хоара — совокупность процедур и структур данных, объединенных в программный модуль специального типа.
- 11. Обмен сообщениями Синхронизация и передача данных: для однопроцессорных систем и систем с общей памятью для распределенных
- 12. Обмен сообщениями Синхронизация send/receive блокирующие send/receive неблокирующими Адресация Прямая (ID процесса) Косвенная (почтовый ящик, или очередь
- 13. Классические задачи синхронизации процессов Обедающие философы Задача о читателях и писателях Задача о спящем парикмахере
- 14. «Обедающие философы» (доступ равноправных процессов к разделяемому ресурсу)
- 15. #define N 5 void philosopher ( int i ) { while (TRUE) { think () ;
- 16. # define N 5 # define LEFT ( i – 1 ) % N # define
- 17. void philosopher ( int i ) { while ( TRUE ) { think () ; take_forks
- 18. «Читатели и писатели» (задача резервирования ресурса)
- 19. typedef int semaphore ; int rc = 0 ; semaphore mutex = 1 ; semaphore db
- 20. «Спящий парикмахер» (клиент-сервер с ограничением на длину очереди)
- 22. Скачать презентацию