Conceitos e Projeto de Sistemas Distribuídos e Paralelos

$1^o$ semestre de 2007

Professor: Wagner Meira Jr.
Estagiário Docente: George Teodoro
Horário: $2^a$ e $4^a$ 14:55 às 16:35
Local: 2015

Objetivo

Essa disciplina tem por objetivo aumentar a cultura e a massa crítica na área de sistemas paralelos e distribuidos em larga escala, como a Internet, além de prover subsídios para quaisquer trabalhos de cunho experimental.

Descrição

Discutiremos alguns conceitos de sistemas operacionais e sistemas distribuídos que são determinantes para a implementação de aplicações distribuídas em larga escala. Além de introduzir os algoritmos e as técnicas pertinentes, este curso tem por objetivo discutir as opções de projeto, os compromissos das várias implementações e suas conseqüências. O curso deverá ter um caráter bastante prático, baseado em projetos que vão investigar asepctos como balanceamento de carga, disponibilidade, manutenção de qualidade de serviço e gerência de energia.

Ementa

  1. concorrência e comunicação em sistemas paralelos e distribuídos;
  2. sincronização e acordo em sistemas paralelos e distribuídos;
  3. persistência e sistemas de arquivos distribuídos;
  4. compartilhamento de recursos em sistemas paralelos e distribuídos;
  5. paradigmas de programação paralela e distribuída; e
  6. análise e avaliação de desempenho de sistemas distribuídos e paralelos.

Programa

Este curso vai enfocar vários dos aspectos fundamentais de da construção de sistemas paralelos e distribuídos, iniciando pelas várias estratégias de paralelização de programas e abordando questões clássicas de sincronização, exclusão mútua e compartilhamento de recursos. Neste contexto vamos estudar e praticar os vários paradigmas de construção de sistemas paralelos e distribuídos (eventos, threads, troca de mensagens, fluxo de dados, e memória compartilhada distribuída).

Avaliação

Seminários:
Onde serão apresentados e discutidos tópicos avançados associados à disciplina.

Trabalhos práticos:
Trabalhos práticos são projetos curtos de implementação onde os alunos têm a oportunidade de praticar os conceitos vistos em sala de aula.

Projetos:
Os alunos vão executar projetos em grupo com o objetivo de implementar e avaliar as técnicas e mecanismos apresentados durante o curso. Cada projeto, além de estudar o funcionamento e as particularidades de uma aplicação, investiga a utilização de mecanismos para melhorar o seu desempenho e eficiência.

Resenha:
Os alunos devem apresentar resenhas das aulas.

Trabalhos Práticos

  1. Trabalho Prático 0: Avaliação de Desempenho

Bibliografia

Material Didático



Wagner Meira Jr
2007-03-25