Редактирование: РОС, ответы на задачи
Материал из eSyr's wiki.
Внимание: Вы не представились системе. Ваш IP-адрес будет записан в историю изменений этой страницы.
ПРЕДУПРЕЖДЕНИЕ: Длина этой страницы составляет 95 килобайт. Страницы, размер которых приближается к 32 КБ или превышает это значение, могут неверно отображаться в некоторых браузерах. Пожалуйста, рассмотрите вариант разбиения страницы на меньшие части.
Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.
Текущая версия | Ваш текст | ||
Строка 710: | Строка 710: | ||
turn := 1 turn := 0 | turn := 1 turn := 0 | ||
flag[0] := false flag[1] := false | flag[0] := false flag[1] := false | ||
- | |||
- | |||
- | ''' Алгоритм Петерсона ''' ([http://en.wikipedia.org/wiki/Peterson%27s_algorithm enwiki]) | ||
- | flag[0] = 0 | ||
- | flag[1] = 0 | ||
- | turn = 0 | ||
- | |||
- | P0: flag[0] = 1 P1: flag[1] = 1 | ||
- | turn = 1 turn = 0 | ||
- | '''while'''( flag[1] '''&&''' turn == 1 ); '''while'''( flag[0] '''&&''' turn == 0 ); | ||
- | // do nothing // do nothing | ||
- | // critical section // critical section | ||
- | ... ... | ||
- | // end of critical section // end of critical section | ||
- | flag[0] = 0 flag[1] = 0 | ||
=== Задача 4 === | === Задача 4 === |