Neste exercício trabalharemos com uma simulação simplória de um sistema de atendimento ao cliente (SAC, ou call center). A nossa simulação incluirá apenas os seguintes aspectos, ambos relacionados com o acompanhamento da carga no call center: o número de chamadas em atendimento em um dado instante e o histórico diário de atendimento para cada um dos operadores que atendem a chamadas.
Nosso modelo de simulação é composto por dois programas: um programa chamado operador e um programa chamado supervisor. Esses dois programas interagem com o usuário da simulação através da entrada e da saída padrão.
O programa operador modela um atendente do call center. Ele lê a entrada padrão e interpreta os seguintes comandos:
O programa supervisor não aceita comandos do usuário via entrada padrão. Ele imprime regularmente as seguintes informações na saída padrão:
Ambos os programas iniciam seu trabalho imprimindo sua identificação, isto é, o número do processo em execução (veja a man page para getpid). Para executar o programa operador, o usuário precisa conhecer a identificação do supervisor correspondente. Essa identificação é um argumento fornecido (na linha de comando) pelo usuário do programa programa operador.
Francisco Reverbel