71
определяется путем чтения (ввода) содержимого регистра РгТП и его
анализа командами процессора.
В логику управления регистрами входят схема анализа
приоритетов (САП) и схема взаимного исключения (СВЗИ). Первая
выделяет запрос на общий ресурс с наиболее высоким приоритетом из
нескольких поступивших, вторая исключает вхождение в критический
интервал запрашивающего процесса, когда в нем
находится текущий
процесс.
Возможен другой вариант построения устройства синхронизации,
когда команда запроса общего ресурса заменяется соответствующим
сигналом, формируемым короткой внутренней командой процессора,
время выполнения которой составит не более одного такта процессора.
Некоторые неудобства реализации состоят в необходимости введения
в процессор двух дополнительных внешних выводов: одного (выход)
для выдачи сигнала запроса общего
ресурса, другого (вход) - для
приема сигнала разрешения на доступ.
Рассмотренные выше способы синхронизации обладают высоким
быстродействием, однако, если в вычислительной системе имеется m
общих ресурсов, обслуживающих n процессов, то при возникновении
любых прерываний потребуется сохранение текущего состояния
регистров РгЗп и РгТП, чтобы иметь возможность корректного
возврата к прерванной программе. Избежать
значительных временных
потерь, связанных с сохранением состояния процесса, возможно, если
в устройство синхронизации включить m регистров запроса и m
регистров РгТП, которые образуют буферную память запросов и
текущих процессов. В этом случае каждая пара регистров РгЗп и РгТП
становится клиентской частью устройства синхронизации, а
единственная схема управления – серверной частью, причем i-
я
клиентская пара регистров принадлежит i-му общему ресурсу.
В распределённых ВС устройство синхронизации может быть
подключено как периферийное устройство, выполненное на основе
специализированного процессора, называемого процессором
синхронизации. Применение специализированного процессора
вызвано тем, что распределённые ВС используют механизм передачи
сообщений для организации обмена данными между любыми двумя
устройствами. Для реализации этого
механизма и необходим
процессор, осуществляющий функции контроллера для приема –
передачи информации. Одновременно на этот процессор можно
возложить функции синхронизации процессов [1].