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++.
[ Hits: 23.980 ]
Por: Alessandro de Oliveira Faria (A.K.A. CABELO) em 20/10/2005 | Blog: http://assuntonerd.com.br
total 0 drwxr-x--- 5 cabelo users 120 2005-09-03 14:44 exemplo drwxr-x--- 2 cabelo users 200 2005-09-03 14:44 libPara compilar e instalar a biblioteca, entre na pasta lib e execute o comando make. Após a compilação, execute o comando make install como super-usuário:
total 0 drwxr-x--- 2 cabelo users 112 2005-09-03 14:44 comunica drwxr-x--- 2 cabelo users 112 2005-09-03 14:44 semaforo drwxr-x--- 2 cabelo users 112 2005-09-03 14:44 tcpPara não tornar muito extenso este artigo, irei explicar apenas a comunicação inter-processo através da fila de mensagem.
total 8 -rw-r----- 1 cabelo users 779 2005-09-03 14:44 cliente.cpp -rw-r----- 1 cabelo users 1100 2005-09-03 14:44 server.cppPara compilar, use o compilador g++ como no exemplo abaixo, assim obtendo os 2 binários para execução dos nossos testes:
total 88 -rwxr-xr-x 1 cabelo users 37965 2005-09-03 15:01 cliente -rw-r----- 1 cabelo users 779 2005-09-03 14:44 cliente.cpp -rwxr-xr-x 1 cabelo users 38072 2005-09-03 15:01 server -rw-r----- 1 cabelo users 1100 2005-09-03 14:44 server.cppAntes de executar os nossos programas teste, execute o comando ipcs:
- Segmentos da memória compartilhada - chave shmid proprietario perms bytes nattch status 0x00000000 851969 cabelo 600 262144 1 dest 0x00000000 917506 cabelo 600 393216 2 dest 0x00000000 950275 cabelo 600 196608 2 dest 0x00000000 4292612 cabelo 600 393216 2 dest 0x00000000 4325381 cabelo 600 196608 2 dest 0x00000000 4358150 cabelo 666 57600 1 dest ------ Arrays de semáforos ------ chave semid proprietario perms nsems ----- Filas de mensagens ------ chave msqid proprietario perms bytes usados mensagensReparem que não existe nenhuma fila de mensagem criada até o presente momento. Agora execute o programa server e veja o que acontece ao executar o ipcs em outro terminal:
- Segmentos da memória compartilhada - chave shmid proprietario perms bytes nattch status 0x00000000 851969 cabelo 600 262144 1 dest 0x00000000 917506 cabelo 600 393216 2 dest 0x00000000 950275 cabelo 600 196608 2 dest 0x00000000 4292612 cabelo 600 393216 2 dest 0x00000000 4325381 cabelo 600 196608 2 dest 0x00000000 4358150 cabelo 666 57600 1 dest ------ Arrays de semáforos ------ chave semid proprietario perms nsems ----- Filas de mensagens ------ chave msqid proprietario perms bytes usados mensagens 0x0000000d 65537 cabelo 666 0 0Agora vamos executar o programa cliente (em outro terminal) para efetuar a comunicação entre os dois processos criados (o server e o cliente).
SANE: Compartilhe seu scanner na rede
STEPMANIA: Transforme seu PC com GNU/LINUX em uma máquina Dance Dance Revolution
Transforme o seu celular Android em webcam sem fio na plataforma Linux
TOR: A Internet sem rastreabilidade
Apache Cassandra NoSQL, uma tecnologia emergente
OpeniBoot - Seu iPhone com Linux!
Controle de tráfego utilizando HTB no Debian Sarge
Empacotamento de Kernel em Sistemas Debian-Based
Implementando um kernel GNU/Linux mais seguro
Atualizando o Slackware 9.1 para o kernel 2.6.5
Papagaiando o XFCE com temas e recursos
WhatsApp com Chamadas no Linux via Waydroid
XFCE - quase um Gnome ou Plasma mas muito mais leve
LXQT - funcional para máquinas pererecas e usuários menos exigentes
SNMP Scan no OCS Inventory só funciona com HTTPS corretamente configurado
Removendo jogos e bloatware do KDE no Gentoo
Gentoo: Sincronização com Git e Automação via Systemd
Instalação do tema Fluent GTK no Zorin OS
PKI na Prática: Criando CA e Certificado Wildcard (Automatizado)
GOG confirma suporte oficial ao sistema Linux: "o trabalho começo... (1)
Midia de instalação LM-21.3 não inicializa (14)
eu queria saber no lenovo slim, se tem como ver os mhz de memoria e tu... (3)









