Saturday, 15 August 2015

Linux IPC selection? -



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