next up previous
Next: Os Semáforos Up: all Previous: Manipulação das FIFOs

Parte III

A parte III da apostila é constituída pelos capítulos 5 a 9, apresentando as extensões em UNIX desenvolvidas para a comunicação efetiva entre processos: os semáforos (capítulo 5), os segmentos de memória compartilhada (capítulo 6) e a troca demensagens (capítulo 7). Tais extensões são comumente conhecidas pela sigla IPC (InterProcess Communication).

A adição de facilidades de comunicação interprocessos foi um dos grandes avanços no sistema UNIX visando o desenvolvimento de aplicações concorrentes. A idéia básica é que esta interface IPC seja similar a um I/O em um arquivo qualquer do sistema.

O sistema UNIX possui uma série de descritores para manipular a leitura e escrita em arquivos, os quais aumentam consideravelmente a flexibilidade do usuário no tratamento de I/O. Por exemplo, um programa pode criar um descritor, enquanto outro diferente vai usá-lo (pense no caso de um comando shell ps que pode imprimir seu resultado num arquivo ao invés da tela, simplesmente através da associação adequada dos descritores). Os tubos são uma outra forma de descritor permitindo a transmissão de dados (em um único sentido) entre processos que tenham algum grau de parentesco.

Os descritores não são, entretanto, a única interface de comunicação em UNIX. O mecanismo de sinal também permite o envio de informações entre processos, entretando alguns problemas reduzem a sua flexibilidade na comunicação interprocessos: o processo que recebe apenas o tipo do sinal sem conhecer efetivamente o emissor desse sinal; mais ainda, o número de sinais a serem utilizados é bastante reduzido.

A utilização dos mecanismos IPC providos pelo UNIX tornou-se rapidamente um padrão para o desenvolvimento de aplicações multiprocessadas.Basicamente, os semáforos, os segmentos de memória compartilhada, e as filas de mensagens representam os três tipos de mecanismos avançados de comunicação interprocessos, reagrupados sob a denominação System V IPC.

Como será visto nos próximos capítulos, existem uma série de semelhanças tanto no que diz respeito às primitivas que implementam os mecanismos de comunicação, quanto nas informações mantidas pelo kernel do sistema para controlá-los.

O capítulo 8 apresentará, finalmente, uma série de exemplos clássicos implementados com a utilização dos conceitos apresentados anteriormente.


next up previous
Next: Os Semáforos Up: all Previous: Manipulação das FIFOs
Celso Alberto Saibel Santos 2000-11-14