Baixe o app para aproveitar ainda mais
Prévia do material em texto
UNIVERSIDADE ESTADUAL DE MATO GROSSO DO SUL Fábio Goulart de Matos Sistemas de Informação - UEMS SI/UEMS Acadêmico: Fábio Goulart de Matos RGM: 017707 Sistemas Operacionais e Aplicações – Silberschatz Resumo: Algoritmo Produtor Consumidor utilizando Threads O algoritmo do produtor consumidor consiste em um conjunto de processos que compartilham o mesmo buffer. Os processos chamados produtores inserem informação no buffer. Os processos chamados consumidores retiram informação deste buffer (Bocchi, 2010). A aplicação dos Threads consiste na melhoria do desempenho no momento da execução do processo. Assim o processo é dividido em processos menores e executado simultaneamente durante a execução. Para construí o algoritmo produtor_consumidor_threads.c, utilizei: Variáveis globais que facilitam a troca de informações, possibilitando utiliza-las em ambos os procedimentos. Para a manipulação dessas variáveis foram desenvolvidos dois procedimentos: o Produtor (): encarregado de preencher o buffer; o Consumidor (): encarregado de consumir os itens do buffer; No desenvolvimento das funções foram inseridas operações que garantem um controle sobre o carregamento e o consumo do buffer. Além de uma linha controla a divisão dos elementos que serão consumidos no buffer. Produtor: Consumidor: Dentro desse processo de controle, os threads são inseridos no processo principal main (). UNIVERSIDADE ESTADUAL DE MATO GROSSO DO SUL Fábio Goulart de Matos Sistemas de Informação - UEMS SI/UEMS Criando a operação: Sincronizando threads: Obs: Não foi necessário a utilização da pthread_exit(), pois dentro do controle das operações tem se um laço for que estipula a quantidade exata das operações realizadas. Para compilar o código, basta digitar no terminal: Referência Bocchi, R. (27 de 01 de 2010). O Produtor e o Consumidor. Acesso em 28 de 06 de 2013, disponível em Viva o Linux: http://www.vivaolinux.com.br/artigo/O-Produtor-e-o- Consumidor/
Compartilhar