Loading AI tools
Из Википедии, свободной энциклопедии
Межпроцессное взаимодействие (англ. inter-process communication, IPC) — обмен данными между потоками одного или разных процессов. Реализуется посредством механизмов, предоставляемых ядром ОС или процессом, использующим механизмы ОС и реализующим новые возможности IPC. Может осуществляться как на одном компьютере, так и между несколькими компьютерами сети.
Из механизмов, предоставляемых ОС и используемых для IPC, можно выделить:
Для оценки производительности различных механизмов IPC используют следующие параметры:
IPC может называться терминами межпотоковое взаимодействие (англ. inter-thread communication) и межпрограммное взаимодействие (англ. inter-application communication).
Межпроцессное взаимодействие, наряду с механизмами адресации памяти, является основой для разграничения адресного пространства между процессами[1].
Метод | Реализуется ОС или процессом |
---|---|
Файл | Все ОС. |
Сигнал | Большинство ОС; в некоторых ОС, например, в Windows, сигналы доступны только в библиотеках, реализующих стандартную библиотеку языка Си, и не могут использоваться для IPC. |
Сокет | Большинство ОС. |
Канал | Все ОС, совместимые со стандартом POSIX. |
Именованный канал | Все ОС, совместимые со стандартом POSIX. |
Неименованный канал | Все ОС, совместимые со стандартом POSIX. |
Семафор | Все ОС, совместимые со стандартом POSIX. |
Разделяемая память | Все ОС, совместимые со стандартом POSIX. |
Обмен сообщениями (без разделения) | Используется в парадигме MPI, Java RMI, CORBA и других. |
Проецируемый в память файл (mmap) | Все ОС, совместимые со стандартом POSIX. При использовании временного файла возможно возникновение гонки. ОС Windows также предоставляет этот механизм, но посредством API, отличающегося от API, описанного в стандарте POSIX. |
Очередь сообщений (Message queue) | Большинство ОС. |
Почтовый ящик | Некоторые ОС. |
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.