Linux IPC selection? -
i have 2 processes , b. , b needs communicate (bi-directional) passing signals, messages etc. have done basic research ipc's available in linux semaphore, message queues, dbus etc. in confusion in deciding 1 use, can tell me ipc improve utilize application ?
thanks in advance
edited: elaborating application. ( embedded application ) process monitoring temperature, speed calculation etc. process b driving motor, reading sensor values (numeric) etc. need send signal process b telling max temperature reached, stop driving motor. needs send info read sensor in process process b. numeric info needs passed across process. , doing in arm architecture.
selection of ipc technique depends on application trying implement. below comparing base of operations on performance:
ipc name latency throughput description ----------------------------------------------------------------------------------------- signal low n/a can used notification, traditionally- force process alter state socket moderate moderate 1 mechanism works remote nodes, not fast universal d-bus high high high-level protocol increases latency , reduces throughput compared when using base of operations sockets, gains in increased ease of utilize shared n/a high info saved in-between process runs(due swapping memory access time) can have non-constant access latency mapped files n/a high info can saved in-between device boots message low moderate info saved in-between process runs. message queue size limited there less overhead handle messages here 1 more nice comparing
comparing unix/linux ipc
linux ipc message-queue semaphore dbus
No comments:
Post a Comment