Межпроцессное взаимодействие — методика для обмена данными

Дата публикации 05.08.2021

Межпроцессное взаимодействие — это методика научного набора для обмена данными между двумя или более процессами или потоками . Связь также может осуществляться между разными компьютерами, соединенными компьютерной сетью. МПК также может быть отнесен к mezithreadov коммуникации ( английскому между потоками связи ), а также взаимодействием приложений .

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

Contents

Реализация

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

При программировании программист использует API (интерфейс приложения), который может быть стандартизирован (например, POSIX , единая спецификация UNIX ), может определяться соответствующей платформой ( Windows API , D-Bus ), но также может иметь полностью бесплатный или одноцелевой интерфейс.

Можно узнать об аренде выделенных серверов подробнее тут, чтоб не возникало перебоев в работе веб-ресурса. Немаловажно, чтоб ресурс всегда был в рабочем состоянии и работал как можно быстрее.

Примеры использования

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

Читайте также:  43 Тбит/с новый рекорд передачи данных по одному волокну

HTTP-сервер Apache обычно обрабатывает множество запросов веб-браузера одновременно. Он запрограммирован как многопроцессорное приложение, в котором родительский процесс прослушивает сетевой порт и, когда поступает запрос, разделяет дочерний процесс, который берет на себя обслуживание веб-клиента и обработку его запроса. Эта модель значительно упрощает программирование, поскольку программисту не нужно решать работу нескольких клиентов с различной скоростью одновременно. В то же время, однако, для родительского процесса нецелесообразно создавать дочерний процесс до тех пор, пока не поступит запрос, потому что создание дочернего процесса является относительно трудоемкой и требовательной к вычислениям задачей. Следовательно, потомки создаются в соответствующем количестве (английский пул потоков) сразу в начале родительского процесса, и он постоянно назначает им задачи, используя межпроцессное взаимодействие.

Предыдущая
Что такое кард-ридер
Следующая
Внутренняя память - один из основных компонентов компьютера
Помогла статья? Оцените её
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд
Загрузка...
Добавить комментарий

16 − пять =