Межпроцессное взаимодействие: различия между версиями

[непроверенная версия][отпатрулированная версия]
Содержимое удалено Содержимое добавлено
удалён раздел со списком, который не имел обобщающего АИ
Строка 42:
|-
|}
 
== Реализации ==
{{список примеров}}
Существует несколько [[Интерфейс программирования приложений|API]], подходящих для реализации IPC.
 
API, не зависимые от платформы:
* [[Анонимный канал|анонимные]] и [[Именованный канал|именованные]] каналы;
* [[CORBA]];
* [[D-Bus]] от [[Freedesktop.org]];
* [[Distributed Computing Environment]] (DCE);
* шина сообщений ({{lang-en|message bus}}, MBUS) (описана в RFC 3259);
* [[Lightweight Communications and Marshalling]] (LCM);
* [[Sun RPC|ONC RPC]];
* [[Сокет (программный интерфейс)|сокеты]] ({{lang-en|socket}});
* [[XML]] [[XML-RPC]] или [[SOAP]];
* [[Thrift (протокол)|Thrift]] (протокол);
* [[TIPC]];
* [[Internet Communications Engine]] (ICE) от [[ZeroC]];
* [[localhost]] (виртуальный сетевой интерфейс; функции IPC выполняют [[Протокол передачи данных|сетевые протоколы]]).
 
API, специфичные для определённых платформ или [[Язык программирования|языков программирования]]:
* механизм [[Apple events]] от [[Apple|Apple Inc.]] (ранее известный как «interapplication communications» (IAC));
* [[Java]] [[RMI|remote method invocation]] (RMI);
* [[DCOP|desktop communications protocol]] (DCOP) (компонент [[KDE]] версии 3);
* [[Libt2n]] для [[C++]] (только под [[Linux]]; обрабатывает сложные объекты и исключения);
* порты микроядра [[Mach]];
* технологии компании [[Microsoft]]: [[ActiveX]], [[Component Object Model]] (COM), [[Microsoft Transaction Server]] ([[COM+]]), [[Distributed Component Object Model]] (DCOM), [[Dynamic Data Exchange]] (DDE), [[Object Linking and Embedding]] (OLE), [[Анонимный канал|анонимные каналы]], [[Именованный канал|именованные каналы]], [[Local Procedure Call]], [[:en:Message loop in Microsoft Windows|message loop]], [[MSRPC]], [[.NET Remoting]] и [[Windows Communication Foundation]];
* [[Протокол передачи данных|протокол]] [[IPX/SPX|SPX]] компании [[Novell]];
* механизмы, описанные в стандарте [[POSIX]]: [[mmap]], [[Очередь сообщения|очереди сообщений]], [[Семафор (информатика)|семафоры]], [[разделяемая память]]<ref>Процессы. Очереди сообщений. Взаимодействие между процессами http://www.opennet.ru/base/dev/ipc_prog.txt.html</ref>;
* сообщения в [[Операционная система|ОС]] [[RISC OS]];
* технология [[Doors (компьютеры)|Doors]] в [[Операционная система|ОС]] [[Solaris]];
* очереди сообщений, семафоры и [[разделяемая память]] в [[Операционная система|ОС]] [[UNIX System V]];
* [[распределённый Ruby]];
* [[распределённое межпроцессное взаимодействие]] (distributed IPC);
* [[ToolTalk]] от компании [[Sun Microsystems]];
* Thread-based<ref>Threading — Thread-based parallelism https://docs.python.org/3.5/library/threading.html</ref> and process-based<ref>multiprocessing — Process-based parallelism https://docs.python.org/3.5/library/multiprocessing.html</ref> parallelism in python.
 
== Примечания ==