📌 Informações Gerais da Disciplina
- Código:
CSECBJI.87- Período: Eletivas (optativas) | Núcleo: Básico | Carga Horária: 60
- Docente Responsável: Docente IFF (contato@iff.edu.br)
- Livro / Material Didático Principal: Elementos de Eletrônica Digital (Capuano & Idoeta)
📋 Ementa e Objetivos Pedagógicos
📋 Ementa
Arquiteturas paralelas. Modelos, ferramentas e ambientes de computação paralela e distribuída. Tópicos emergentes em computação paralela e distribuída.
🎯 Objetivos
- Prover conhecimento e experiência em programação paralela para o desenvolvimento de software que tenha como requisito a sua execução em um ambiente paralelo e distribuído.
🔒 Pré-requisitos e Dependências Curriculares (Trancas)
📋 Pré-requisitos Exigidos:
🔓 Disciplinas Trancadas (Liberadas após conclusão):
- Esta disciplina não tranca nenhuma outra disciplina posterior.
📖 Conteúdo Programático
- 1. Sistemas de Trocas de Mensagens
- 2. Processadores de Comunicação
- 3. Alocação de Processadores
- 4. Modelos Síncrono e Assíncrono de Computação
- 5. Computações em Sistemas Anônimos
- Limitações Intrínsecas
- Noções de conhecimento em sistemas distribuídos
- 6. Modelos de Computação
- Eventos, ordem e estados globais
- A complexidade de computações distribuídas
- 7. Algoritmos Básicos
- Propagação de Informação
- Algoritmos simples sobre grafos
- i. Teste de conectividade
- ii. Distâncias mais curtas
- 8. Técnicas Básicas
- Eleição de líder
- Gravação de estados globais
- Sincronização de redes
- 9. Introdução à Alto-Estabilização
- Detecção de Terminação
- Detecção de Deadlocks
- 10. Outros Algoritmos sobre Grafos
- Árvores geradoras mínimas
- Fluxos em redes
- 11. Compartilhamento de Recursos
- Algoritmos de exclusão mútua
- Dinning Philosopers
- Drinking Philosopers
📚 Bibliografia Básica e Complementar (ABNT)
📕 Bibliografia Básica
- COLOURIS, G., DOLLIMORE, J., KINDBERG, T. Sistemas Distribuídos: Conceitos e Projeto. 4ª Edição.
- Porto Alegre: Bookman, 2007.
- STEVENS, W. R., FENNER, B., RUDOFF, A. M. Programação de Rede Unix: API para Soquetes de Rede. Porto Alegre: Booknan, 2005.
- TANENBAUM, A. S., VAN STEEN, M. Sistemas Distribuídos: Princípios e Paradigmas. 2ª Edição. São Paulo: Pearson, 2007.
📗 Bibliografia Complementar
- CORMEN, T. H., LEISERSON, C. E., RIVEST, R. L., STEIN, C. Algoritmos: Teoria e Prática. 3ª Edição. São Paulo: Elsevier, 2012.
- KUROSE, J., ROSS, K. Redes de Computadores e a Internet: Uma Abordagem Top-Down. 6ª Edição.
- Pearson, 2013.
- RHODES, B.
- GOERZEN, J. Programação de Redes com Python: Guia Abrangente de Programação e Gerenciamento de Redes com Python 3. São Paulo: Novatec, 2015.
- TANENBAUM, A. S. Sistemas Operacionais Modernos. 4ª Edição. Pearson, 2015.
- TANENBAUM, A. S., WOODHULL, A. S. Sistemas Operacionais: Projeto e Implementação. 3ª Edição.
- Porto Alegre: Bookman, 2018.