Please enable JavaScript.
Coggle requires JavaScript to display documents.
Mecanismos de comunicação, Vitor Neis da Silva - Coggle Diagram
Mecanismos de comunicação
Pipes
m dos mecanismos de comunicação entre processos mais simples de usar no ambiente UNIX é o pipe, ou “cano”. Um pipe é um canal de comunicação unidirecional entre dois processos. Na interface de linha de comandos UNIX, o pipe é frequentemente usado para conectar a saída padrão (stdout) de um processo à entrada padrão (stdin) de outro processo, permitindo assim a comunicação entre eles.
Filas de mensagens
As filas de mensagens são um bom exemplo de implementação do conceito de mailbox , permitindo o envio e recepção ordenada de mensagens tipadas entre processos em um sistema operacional.
mq_receive
recebe uma mensagem da fila; caso a fila esteja vazia, o receptor é bloqueado até que surja uma mensagem para ser recebida; a variante mq_timedreceive permite definir um prazo máximo de espera;
mq_close
: fecha o descritor da fila criado por mq_open
mq_send
envia uma mensagem para a fila; caso a fila esteja cheia, o emissor fica bloqueado até que alguma mensagem seja retirada da fila, abrindo espaço para o envio; a variante mq_timedsend permite definir um prazo máximo de espera: caso o envio não ocorra nesse prazo, a chamada retorna com erro;
mq_setattr e mq_getattr
permitem ajustar ou obter atributos (parâmetros) da fila, que definem seu comportamento, como o tamanho máximo da fila, o tamanho de cada mensagem, etc.;
mq_unlink
remove a fila do sistema, destruindo seu conteúdo
mq_open
abre uma fila já existente ou cria uma nova fila
Memória compartilhada
A comunicação entre tarefas situadas em processos distintos deve ser feita através do núcleo, usando chamadas de sistema. Não existe a possibilidade de acesso a variáveis comuns a ambos, pois suas áreas de memória são distintas e isoladas. A comunicação através do núcleo pode ser ineficiente caso seja frequente e o volume de dados a transferir seja elevado, por causa das trocas de contexto envolvidas nas chamadas de sistema.
Vitor Neis da Silva