comunicação entre processos é a comunicação que ocorre entre dois programas diferentes . Ao se comunicar , um programa muitas vezes age como um cliente e recebe informações do servidor. O cliente é um programa que pede alguma coisa, enquanto o servidor é o programa que oferece algo . Alguns programas podem servir como clientes e servidores . Mecanismos de comunicação
aplicativos utilizam diferentes mecanismos de comunicação . O desenvolvedor do usuário ou software decide qual mecanismo o programa usa ao se comunicar com outros programas. Os aplicativos podem usar vários métodos de comunicação entre processos. Alguns aplicativos podem se comunicar com aplicativos de outras redes , enquanto outros aplicativos se comunicam apenas com aplicativos na mesma rede local. Alguns aplicativos só podem se comunicar com os aplicativos em execução no mesmo sistema operacional, enquanto outros aplicativos podem se comunicar com os programas com diferentes sistemas operacionais.
Processos Escolhendo
usuários às vezes escolher quais aplicações de um determinado programa vai interagir, enquanto outros aplicativos escolher seus próprios parceiros de comunicação. Alguns métodos de comunicação entre processos pode interagir com qualquer programa que é projetado para aceitar ou enviar dados para eles. Por exemplo, alguns permitem que as pessoas copiar o texto e outros dados de um programa e colá -los em um tipo completamente diferente de programa.
Simples Comunicação entre
a área de transferência é um exemplo de comunicação entre processos. Quando os usuários copiar dados de um programa , eles colocaram os dados em um único local recuperáveis em um formato específico . Outros programas podem olhar para os dados e recuperar dados que entender. Por exemplo, um usuário pode ter texto e imagem em um documento de processamento de texto e copiá-lo para a área de transferência . Em seguida , o usuário pode ter um programa de text-to -speech ler os dados. Desde que o programa text-to -speech não podem ler imagens , o programa vai ignorar a imagem e só ler o texto. As formas mais simples de comunicação entre processos envolvem um programa de gravação de dados em um local específico e um outro programa a leitura dos dados . Memória gerenciado é um processo semelhante, mas envolve dados associado a um arquivo em qualquer sistema de arquivos.
Primeiro -in first-out
Pipes são comunicação seqüencial de um processo para outro processo relacionado. FIFOs são como tubos. Processos independentes podem se comunicar uns com os outros através de um único FIFO, ou first-in first-out , pipe. O tubo é criado para uma finalidade . Arquivos especiais FIFO têm nomes e programas específicos que abrir o FIFO pelo nome.
Sockets
Sockets são usadas para permitir que os processos não relacionados para se comunicar uns com os outros . Comunicação com a Internet ocorre através de sockets . Comunicação entre processos baseados em socket é usado principalmente para os códigos enviados para ou a partir de um sistema BSD ou para comunicação entre processos de rede. Caso contrário , os programas devem utilizar a comunicação entre processos IRIX , uma vez que é mais rápido, mais fácil de implementar e pode envolver-se em multi- processamento.
Bloqueando mensagens
Bloqueio de operações de mensagens podem suspender processos até que o outro aplicativo que estão trabalhando com está pronto para a informação. Alguns programas de envolver-se em processo de comunicação não bloqueante quando não esperar pela permissão de outro programa.