IPCMSG: Comunicação inter-processos sem magia negra
A biblioteca IPCMSG foi criada para facilitar o desenvolvimento de programas que utilizam comunicação inter-processo. Nesse artigo aprenderemos, de forma prática, como usar essa biblioteca em seus códigos C/C++.
Introdução
A biblioteca IPCMSG foi criada para facilitar o desenvolvimento de programas que utilizam comunicação inter-processo.
A IPCMSG disponibiliza os seguintes recursos:
A biblioteca IPCMSG permite a utilização sem segredo dos recursos de comunicação inter-processos. Um ou mais processos podem comunicar entre si através da troca de mensagens.
A troca de mensagens podem ser sincronizadas ou não dependendo da aplicação em desenvolvimento. Utilizado semáforos em caso de um aplicação com processo sincronizados, assim garantindo a organização nas sincronização dos processos.
Em caso de falha durante um determinado processamento, um processo pode eventualmente não responder a uma mensagem. Para contornar este problema, usamos o recurso de sinais. Sinais são interrupções de software assíncrona que em nosso caso serve com time-out dos envios de mensagens.
A IPCMSG disponibiliza os seguintes recursos:
- Semáforos: Utilizados para sincronizar dois ou mais processos;
- Fila de mensagens: Em sistemas Unix/Linux, este recurso é utilizado para troca eficaz de dados entre processos;
- Sinais: Interrupção de software assíncrona utilizada para time-out nas comunicações inter-processos;
- Sockets: Utilizados para troca de informações entre processos locais e remotos via rede.
A biblioteca IPCMSG permite a utilização sem segredo dos recursos de comunicação inter-processos. Um ou mais processos podem comunicar entre si através da troca de mensagens.
A troca de mensagens podem ser sincronizadas ou não dependendo da aplicação em desenvolvimento. Utilizado semáforos em caso de um aplicação com processo sincronizados, assim garantindo a organização nas sincronização dos processos.
Em caso de falha durante um determinado processamento, um processo pode eventualmente não responder a uma mensagem. Para contornar este problema, usamos o recurso de sinais. Sinais são interrupções de software assíncrona que em nosso caso serve com time-out dos envios de mensagens.
http://cabelo.linuxdicas.com.br/ipcmsg/refman-html/d0/dcc/class_n_e_ti_1_1_i_p_c_m_s_g.html