Операционные системы распределенных вычислительных систем

       

Доступ к синхронизационным переменным определяется моделью последовательной консистентности;


2. Доступ к синхронизационным переменным запрещен (задерживается), пока не выполнены все предыдущие операции записи;

3. Доступ к данным (запись, чтение) запрещен, пока не выполнены все предыдущие обращения к синхронизационным переменным.

Первое правило определяет, что все процессы «видят» обращения к синхронизационным переменным в определенном (одном и том же) порядке .

Второе правило гарантирует, что выполнение процессором операции обращения к синхронизационной переменной возможно только после «выталкивания» конвейера (полного завершения выполнения на всех процессорах всех предыдущих операций записи переменных, выданных данным процессором). Третье правило определяет, что при обращении к обычным (не синхронизационным) переменным на чтение или запись, все предыдущие обращения к синхронизационным переменным должны быть выполнены полностью. Выполнив синхронизацию перед обращением к общей переменной, процесс может быть уверен, что получит правильное значение этой переменной.

a) Пример допустимой последовательности событий.



P1:

W(x)1

W(x)2

S

P2:

R(x)1

R(x)2

S

P3:

R(x)2

R(x)1

S

б) Пример недопустимой последовательности событий.

P1:

W(x)1

W(x)2

S

P2:

S

R(x)1

В отличие от предыдущих моделей консистентности, модель слабой консистентности ориентирована на консистентность групповых операций чтения/записи. Эта модель наиболее эффективна для приложений, в которых отдельные (изолированные) обращения к общим переменным встречаются довольно редко.



Содержание раздела