Основы современных операционных систем Лекция 12.

Презентация:



Advertisements
Похожие презентации
Основы современных операционных систем Лекция 32.
Advertisements

Системное программное обеспечение Лекция 6 Механизмы синхронизации.
Основы современных операционных систем Лекция 30.
Основы современных операционных систем Лекция 25.
Основы современных операционных систем Лекция 19.
Основы современных операционных систем Лекция 26.
Системное программное обеспечение Лекция 5 Алгоритмы синхронизации.
Управление процессами 3.Взаимодействие процессов: синхронизация, тупики 3.1.Разделение ресурсов 3.2.Взаимное исключение Проблемы реализации взаимного.
Основы современных операционных систем Лекция 15.
Управление процессами 3.Взаимодействие процессов: синхронизация, тупики 3.1.Разделение ресурсов 3.2.Взаимное исключение Проблемы реализации взаимного.
Взаимодействие процессов: синхронизация, тупики. Параллельные процессы Параллельные процессы – процессы, выполнение которых хотя бы частично перекрывается.
Основы современных операционных систем Лекция 23.
Основы операционных систем. Тема 6. Механизмы синхронизации.
6. Средства синхронизации и взаимодействия процессов 6.1. Проблема синхронизации Процессам Процессам часто нужно взаимодействовать друг с другом, например,
Основы современных операционных систем Лекция 17.
Взаимодействующие параллельные процессы
Взаимодействующие параллельные процессы. Параллельные процессы P1 P2 Q1 Q2 Последовательные процессы Логические параллельные процессы P1 P2 Q1Q2 Физические.
Основы современных операционных систем Лекция 4. (C) В.О. Сафонов, 2010 Архитектура компьютерных систем.
Основы современных операционных систем Лекция 9. (C) В.О. Сафонов, 2010 Взаимодействующие (cooperating) процессы.
Основы современных операционных систем Лекция 1. Литература (C) В.О. Сафонов,
Транксрипт:

Основы современных операционных систем Лекция 12

(C) В.О. Сафонов, Синхронизация процессов

(C) В.О. Сафонов, История

(C) В.О. Сафонов, Ограниченный буфер: Представление

(C) В.О. Сафонов, Ограниченный буфер: Производитель

(C) В.О. Сафонов, Ограниченный буфер: Потребитель

(C) В.О. Сафонов, Ограниченный буфер: Атомарность операций над counter

(C) В.О. Сафонов, Ограниченный буфер: Реализация операций над counter

(C) В.О. Сафонов, Ограниченный буфер: Совместное обращение (interleaving)

(C) В.О. Сафонов, Ограниченный буфер: Эффект interleaving

(C) В.О. Сафонов, Конкуренция за общие данные (race condition)

(C) В.О. Сафонов, Проблема критической секции

(C) В.О. Сафонов, Решение проблемы критической секции

(C) В.О. Сафонов, Первоначальные попытки решения проблемы

(C) В.О. Сафонов, Алгоритм 1

(C) В.О. Сафонов, Алгоритм 2

(C) В.О. Сафонов, Алгоритм 3

(C) В.О. Сафонов, Алгоритм булочной (bakery algorithm) – L. Lamport

(C) В.О. Сафонов, Алгоритм булочной

(C) В.О. Сафонов, Аппаратная поддержка синхронизации

(C) В.О. Сафонов, 2010 Взаимное исключение с помощью TestAndSet

(C) В.О. Сафонов, 2010 Аппаратное решение для синхронизации

(C) В.О. Сафонов, 2010 Взаимное исключение с помощью Swap

(C) В.О. Сафонов, 2010 Общие семафоры – counting semaphores (по Э. Дейкстре)

(C) В.О. Сафонов, 2010 Критическая секция для N процессов

(C) В.О. Сафонов, 2010 Реализация семафора

(C) В.О. Сафонов, 2010 Реализация

(C) В.О. Сафонов, 2010 Семафоры как общее средство синхронизации

(C) В.О. Сафонов, 2010 Два типа семафоров

(C) В.О. Сафонов, 2010 Вариант операции wait(S) для системных процессов (Эльбрус)

(C) В.О. Сафонов, 2010 Реализация общего семафора S с помощью двоичных семафоров

(C) В.О. Сафонов, 2010 Реализация операций над семафором S

(C) В.О. Сафонов, 2010 Классические задачи синхронизации

(C) В.О. Сафонов, 2010 Задача ограниченный буфер

(C) В.О. Сафонов, 2010 Процесс-производитель ограниченного буфера

(C) В.О. Сафонов, 2010 Процесс-потребитель ограниченного буфера

(C) В.О. Сафонов, 2010 Задача читатели-писатели

(C) В.О. Сафонов, 2010 Процесс-писатель

(C) В.О. Сафонов, 2010 Процесс-читатель

(C) В.О. Сафонов, 2010 Задача обедающие философы Общие данные semaphore chopstick[5]; Первоначально все значения равны 1

(C) В.О. Сафонов, 2010 Задача обедающие философы

(C) В.О. Сафонов, 2010 Критические области (critical regions)

(C) В.О. Сафонов, 2010 Пример: ограниченный буфер

(C) В.О. Сафонов, 2010 Процесс-производитель

(C) В.О. Сафонов, 2010 Процесс-потребитель

(C) В.О. Сафонов, 2010 Реализация оператора region x when B do S

(C) В.О. Сафонов, 2010 Реализация

(C) В.О. Сафонов, 2010 Мониторы (C. A. R. Hoare)

(C) В.О. Сафонов, 2010 Мониторы: условные переменные

(C) В.О. Сафонов, 2010 Схематическое представление монитора

(C) В.О. Сафонов, 2010 Монитор с условными переменными

(C) В.О. Сафонов, 2010 Пример: обедающие философы

(C) В.О. Сафонов, 2010 Обедающие философы: реализация операций pickup и putdown

(C) В.О. Сафонов, 2010 Обедающие философы: реализация операции test

(C) В.О. Сафонов, 2010 Реализация мониторов с помощью семафоров

(C) В.О. Сафонов, 2010 Реализация мониторов

(C) В.О. Сафонов, 2010 Реализация мониторов

(C) В.О. Сафонов, 2010 Реализация мониторов

(C) В.О. Сафонов, 2010 Синхронизация в Solaris

(C) В.О. Сафонов, 2010 Синхронизация в Windows 2000

(C) В.О. Сафонов, Q & A