Диплом, курсовая, контрольная работа
Помощь в написании студенческих работ

Свободная согласованность. 
Архитектура ЭВМ и систем

РефератПомощь в написанииУзнать стоимостьмоей работы

Затем ПЭ выполняет операцию release над переменной синхронизации, чтобы показать, что он завершил работу. Операция release не требует завершения незаконченных записей, более того, могут сразу же начинаться новые операции записи/считывания. Однако операция release не может быть завершена, пока не закончатся все ранее начатые записи; Сначала ПЭ выполняет операцию acquire над переменной… Читать ещё >

Свободная согласованность. Архитектура ЭВМ и систем (реферат, курсовая, диплом, контрольная)

В этой модели для синхронизации используются две операции: acquire (запрашивать) и release (разблокировать). Она похожа на модель слабой согласованности и в какой-то мере устраняет ее недостаток благодаря использованию критических областей. Если процесс выходит за пределы критической области, это не значит, что все записи должны немедленно завершиться. Требуется только, чтобы все записи были завершены до того, как любой процесс снова войдет в эту критическую область.

Процессы записи/считывания протекают в такой последовательности:

  • сначала ПЭ выполняет операцию acquire над переменной синхронизации, чтобы получить монопольный доступ к общим разделяемым данным. После этого ПЭ может использовать эти данные для записи или считывания;
  • затем ПЭ выполняет операцию release над переменной синхронизации, чтобы показать, что он завершил работу. Операция release не требует завершения незаконченных записей, более того, могут сразу же начинаться новые операции записи/считывания. Однако операция release не может быть завершена, пока не закончатся все ранее начатые записи;
  • • перед началом следующей операции acquire производится проверка предыдущих операций release на завершенность. Если операции release не завершены, то операция acquire задерживается. Поэтому, когда следующая операция acquire появится через достаточно длительный промежуток времени после последней операции release, ей не придется ждать и она сможет войти в критическую область без задержки. Если же операция acquire появится через небольшой промежуток времени после операции release, ее выполнение (а также выполнение всех команд, следующих за ней) может быть задержано до завершения всех операций release. Такой алгоритм гарантирует, что все переменные в критической области будут обновлены.

Таким образом, при свободной согласованности не нужно так часто задерживать выполнение команд, как при слабой согласованности.

Показать весь текст
Заполнить форму текущей работой