2016-01-26 2 views
2

В Linux довольно распространенный метод IPC между процессами и службами userland - это, например, интерфейс сокета (либо Unix-домен, либо netlink).Windows IPC-аналог для Linux Unix домена и сокетов Netlink

Просто - Что представляет собой аналог Windows и как процессы пользовательской связи взаимодействуют с сервисами?

Чтобы настроить сцену: Предположим, у меня работает фоновый сервис, который контролирует устройства в сети. Если бы я хотел написать программу для использования услуг, предоставляемых этой службой, каков будет общий «способ Windows» для этого?

Если я совершенно вне базы здесь, то каким образом служба Windows может распространяться на ОС Windows, чтобы другие процессы могли знать, что она активно слушает подключения?

+0

насчет UDP на окнах с Winsock 2? –

+0

@SeverinPappadeux, я уверен, что этот подход будет работать. Это общий метод проектирования? Это то, что я ищу с этим вопросом - общие методологии проектирования для такого рода общения. – sherrellbc

+0

Честно говоря, я бы проверял первые вещи от Boost, например [this] (http://www.boost.org/doc/libs/1_60_0/doc/html/interprocess.html) –

ответ

2

Окна назвал трубы,

«Именованная труба именованный, односторонним или двусторонним трубы для связи между сервером труб и одного или нескольких клиентов труб. Все экземпляры именованной трубы совместно используют одно и то же имя канала, но каждый экземпляр имеет свои собственные буферы и дескрипторы и предоставляет отдельный канал для обмена сообщениями клиент/сервер . Использование экземпляров позволяет нескольким клиентам-клиентам до использовать один и тот же именованный канал одновременно ».

https://msdn.microsoft.com/en-us/library/windows/desktop/aa365590%28v=vs.85%29.aspx