Diferenças
Aqui você vê as diferenças entre duas revisões dessa página.
| Ambos lados da revisão anterior Revisão anterior | |||
| so:filas_de_mensagens_posix [2011/05/06 21:26] – [Observações] maziero | so:filas_de_mensagens_posix [2011/09/26 22:31] (atual) – [A entregar] maziero | ||
|---|---|---|---|
| Linha 1: | Linha 1: | ||
| + | ====== Filas de mensagens POSIX ====== | ||
| + | O objetivo deste projeto é usar o mecanismo de filas de mensagens POSIX para construir aplicações comunicantes. | ||
| + | |||
| + | |||
| + | ===== Problema ===== | ||
| + | |||
| + | Construir um sistema com dois processos independentes A e B, onde A sorteia pares de números inteiros aleatórios '' | ||
| + | |||
| + | Comportamento do processo A: | ||
| + | |||
| + | < | ||
| + | estabelece o canal de comunicação | ||
| + | while (true) | ||
| + | { | ||
| + | n1 = random() % 100 | ||
| + | n2 = random() % 100 | ||
| + | envia n1 e n2 a B | ||
| + | | ||
| + | | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Comportamento do processo B: | ||
| + | |||
| + | < | ||
| + | estabelece o canal de comunicação | ||
| + | while (true) | ||
| + | { | ||
| + | | ||
| + | soma = n1 + n2 | ||
| + | | ||
| + | envia soma a A | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | ===== Observações ===== | ||
| + | |||
| + | * Este problema deve ser resolvido usando filas de mensagens POSIX ([[http:// | ||
| + | * O primeiro parâmetro da chamada '' | ||
| + | * Escolha identificadores de fila personalizados (por exemplo: '' | ||
| + | |||
| + | ===== Roteiro ===== | ||
| + | |||
| + | - Defina quantas filas serão necessárias para resolver o problema | ||
| + | - Implemente sua solução | ||
| + | - Avalie o comportamento da solução com um processo A e um processo B | ||
| + | - Idem, com dois processos A e um processo B | ||
| + | - Idem, com um processo A e dois processos B | ||
| + | - Idem, com dois processos A e dois processos B | ||
| + | - Se observou problemas nas situações com mais de um processo de cada tipo, qual seria a forma mais adequada de resolvê-los? | ||
| + | |||
| + | ===== A entregar ===== | ||
| + | |||
| + | - Os arquivos '' | ||
| + | - Um relatório sucinto (e no [[teaching: | ||