Nome da Atividade
INTROD PROCESSAMENTO PARALELO E DISTRIBUÍDO
CÓDIGO
22000272
Carga Horária
60 horas
Tipo de Atividade
DISCIPLINA
Periodicidade
Semestral
Unidade responsável
CRÉDITOS
4
CARGA HORÁRIA TEÓRICA
4
CARGA HORÁRIA OBRIGATÓRIA
4
FREQUÊNCIA APROVAÇÃO
75%

Ementa

Classificação de arquiteturas para sistemas paralelos e distribuídos. Modelos de programação concorrente. Memória compartilhada. Troca de Mensagens. Estudos de casos.

Objetivos

Objetivo Geral:

A disciplina tem o objetivo de estender os conhecimentos de programação concorrente obtidos em Sistemas Operacionais para a aplicação em sistemas modernos com memória compartilhada ou troca de mensagens. Para sistemas paralelos, são apresentados os aspectos de modelagem de sistemas, sincronização e ambientes de programação. Para sistemas distribuídos, são apresentados o paradigma de troca de mensagens, os problemas clássicos relacionados ao uso de redes e ambientes de programação. No final da disciplina, espera-se que o aluno seja capaz de programar sistemas paralelos e distribuídos e compreender as principais questões relacionadas ao desenvolvimento nessas plataformas.

 

Objetivos Específicos:

Capacitar os alunos à criação de aplicações que necessitem de processamento paralelo e/ou distribuído. Desenvolvimento de aplicações utilizando os conceitos e práticas aplicados durante a disciplina.

Conteúdo Programático

1. Revisão de programação concorrente
2. Definição de dependência
3. Classificação de arquiteturas para sistemas paralelos e distribuídos
• Classificação de Flynn
4. Modelos para programação concorrente
• PRAM
• BSP
5. Programação com memória compartilhada
• Memórias Transacionais
• Estudo de caso
6. Programação com troca de mensagens
• Relógios lógicos
• Mensagens síncronas, assíncronas, caixas postais
• Estudo de caso

Bibliografia

Bibliografia Básica:

  • Comissão Regional de Alto Desempenho - RS. Caderno dos Cursos Permanentes das ERADs. Porto Alegre: SBC, 2006
  • Couloris, G. Dollimare, J. , Kindberg, T. Sistemas distribuídos: conceitos e projeto. Bookman, 2007.
  • Rauber, T., Rünger, G. Parallel Programming for Multicore and Cluster Systems. Berlin: Springer-Verlag, 2010.

Bibliografia Complementar:

  • Wilkinson, B., Allen, M. Parallel programming: techniques and applications using networked workstations and parallel computers. Upper Saddle River, New Jersey: Prentice-Hall, 2004.
  • Navaux, P. O. A., De Rose, C. A. F. Arquiteturas Paralelas. Porto Alegre: Sagra Luzzatto, 2003
  • Tanenbaum, A. S. Redes de Computadores. 5. ed. Rio de Janeiro: Pearson, 2011.
  • Kurose, J. F., Ross, K. W. Redes de Computadores e a Internet.5.ed. São Paulo: Pearson Addison Wesley, 2010.
  • Tanenbaum, A., Van Steen, M. Distributed Systems: Principles and Paradigms. 2nd ed. Prentice Hall, 2006.

Turmas Ofertadas

Turma Período Vagas Matriculados Curso / Horários Professores
T51 2020 / 1 45 29 Ciência da Computação (Bacharelado)
Engenharia de Computação (Bacharelado)
Horários
ManhãTardeNoite
SEX13:30 - 14:20
14:20 - 15:10
GERSON GERALDO HOMRICH CAVALHEIRO
Professor responsável pela turma

ANDRE RAUBER DU BOIS
Professor Regente

T71 2020 / 1 50 17 Ciência da Computação (Bacharelado)
Engenharia de Computação (Bacharelado)
Horários
ManhãTardeNoite
SEX10:00 - 10:50
10:50 - 11:40
GERSON GERALDO HOMRICH CAVALHEIRO
Professor responsável pela turma

Rafael Burlamaqui Amaral
Professor Regente

Disciplinas Equivalentes

Disciplina Curso
SISTEMAS OPERACIONAIS II Ciência da Computação (Bacharelado)
INTROD PROCESSAMENTO PARALELO E DISTRIBUÍDO Engenharia de Computação (Bacharelado)

Página gerada em 22/01/2021 01:19:33 (consulta levou 0.178172s)