Взаимодействие и синхронизация процессов и потоков

Способы взаимодействия процессов (потоков) можно классифицировать по степени осведомленности одного процесса о существовании другого.

1.Процессы не осведомлены о наличии друг друга (например, процессы разных заданий одного или различных пользователей). Это независимые процессы, не предназначенные для совместной работы.

2.Процессы косвенно осведомлены о наличии друг друга (например, процессы одного задания). Эти процессы не обязательно должны быть осведомлены о наличии друг друга с точностью до идентификатора процесса, однако они разделяют доступ к некоторому объекту, например, буферу ввода-вывода, файлу или БД.

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

 

 

Проблемы, связанные с взаимодействием и синхронизацией процессов и потоков, могут быть представлены следующей таблицей.

Степень осведомленности Взаимосвязь Влияние одного процесса на другой Потенциальные проблемы
Процессы не осведомлены друг о друге Конкуренция
  • Результат работы одного процесса не зависит от действий других.
  • Возможно влияние одного процесса на время работы другого
  • Взаимоисключения
  • Взаимоблокировки
  • Голодание
Процессы косвенно осведомлены о наличии друг друга Сотрудничество с использованием разделения
  • Результат работы одного процесса может зависеть от информации, полученной от других.
  • Возможно влияние одного процесса на время работы другого
  • Взаимоисключения
  • Взаимоблокировки
  • Голодание
  • Синхронизация
Процессы непосредственно осведомлены о наличии друг друга Сотрудничество с использованием связи
  • Результат работы одного процесса зависит от информации, полученной от других процессов.
  • Возможно влияние одного процесса на время работы другого
  • Взаимоблокировки (расходуемые ресурсы)
  • Голодание

При необходимости использовать один и тот же ресурс параллельные процессы вступают в конфликт (конкурируют) друг с другом. Каждый из процессов не подозревает о наличии остальных и не повергается никакому воздействию с их стороны.

Между конкурирующими процессами не происходит никакого обмена информацией. Однако выполнение одного процесса может повлиять на поведение конкурирующего процесса. Это может, например, выразиться в замедлении работы одного процесса, если ОС выделит ресурс другому процессу, поскольку первый процесс будет ждать завершения работы с этим ресурсом.

                       36.Файловые системы ext2,ext3,ext4       

Файловая система- это порядок определяющий способы организации и хранения информации.

Файловая Система OC linux/unix

Файловая система представляет собой некоторое устройство (например, жесткий диск), отформатированное для хранения файлов. Файловые системы могут находиться на жестких дисках, гибких дисках, CD-ROM или других носителях, которые позволяют осуществлять произвольный или последовательный доступ к данным.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: