ВУЗ:
Составители:
74
При необходимости взаимодействия процессы обращаются к
операционной системе, которая, выполняя функции посредника,
предоставляет им средства межпроцессной связи – конвейеры, почтовые
ящики, разделяемые секции памяти и некоторые другие.
Однако в системах, в которых отсутствует понятие потока, возникают
проблемы при организации параллельных вычислений в рамках процесса. А
такая необходимость может возникать. Действительно, при
мультипрограммировании повышается пропускная способность системы, но
отдельный процесс никогда не может быть выполнен быстрее, чем в
однопрограммном режиме (всякое разделение ресурсов только замедляет
работу одного из участников за счет дополнительных затрат времени на
ожидание освобождения ресурса). Однако приложение, выполняемое в
рамках одного процесса, может обладать внутренним параллелизмом,
который в принципе мог бы позволить ускорить его решение. Если,
например, в программе предусмотрено обращение к внешнему устройству, то
на время этой операции можно не блокировать выполнение всего процесса, а
продолжить вычисления по другой ветви программы. Параллельное
выполнение нескольких работ в рамках одного интерактивного приложения
повышает эффективность работы пользователя. Так, при работе с
текстовым редактором желательно иметь возможность совмещать набор
нового текста с такими продолжительными по времени операциями, как
переформатирование значительной части текста, печать документа или его
сохранение на локальном или удаленном диске. Еще одним примером
необходимости распараллеливания является сетевой сервер баз данных. В
этом случае параллелизм желателен как для обслуживания различных
запросов к базе данных, так и для более быстрого выполнения отдельного
запроса за счет одновременного просмотра различных записей базы.
74 При необходимости взаимодействия процессы обращаются к операционной системе, которая, выполняя функции посредника, предоставляет им средства межпроцессной связи – конвейеры, почтовые ящики, разделяемые секции памяти и некоторые другие. Однако в системах, в которых отсутствует понятие потока, возникают проблемы при организации параллельных вычислений в рамках процесса. А такая необходимость может возникать. Действительно, при мультипрограммировании повышается пропускная способность системы, но отдельный процесс никогда не может быть выполнен быстрее, чем в однопрограммном режиме (всякое разделение ресурсов только замедляет работу одного из участников за счет дополнительных затрат времени на ожидание освобождения ресурса). Однако приложение, выполняемое в рамках одного процесса, может обладать внутренним параллелизмом, который в принципе мог бы позволить ускорить его решение. Если, например, в программе предусмотрено обращение к внешнему устройству, то на время этой операции можно не блокировать выполнение всего процесса, а продолжить вычисления по другой ветви программы. Параллельное выполнение нескольких работ в рамках одного интерактивного приложения повышает эффективность работы пользователя. Так, при работе с текстовым редактором желательно иметь возможность совмещать набор нового текста с такими продолжительными по времени операциями, как переформатирование значительной части текста, печать документа или его сохранение на локальном или удаленном диске. Еще одним примером необходимости распараллеливания является сетевой сервер баз данных. В этом случае параллелизм желателен как для обслуживания различных запросов к базе данных, так и для более быстрого выполнения отдельного запроса за счет одновременного просмотра различных записей базы.
Страницы
- « первая
- ‹ предыдущая
- …
- 72
- 73
- 74
- 75
- 76
- …
- следующая ›
- последняя »