Informações gerais

  • Professor: Lucas Wanner (email)
  • Horário:
    • Terças 21:00-23:00, Sala CB 06.
    • Quintas 19:00-21:00, Sala CB 05.
  • Atendimento: Terças 19:00-20:00, Sala 79 IC, ou marcado via email. Não haverá atendimento em dias de prova.
  • Lista de emails
  • Website

Bibliografia

  • Texto principal: A. S. Tanenbaum and M. Van Steen. Distributed Systems: Principles and Paradigms. Second edition, Pearson, 2006. Link para download
  • Coulouris, J. Dollimore, T. Kindberg, and G. Blair. Distributed Systems: Concepts and Design. Fifth Edition, Addison-Wesley, 2011.
  • A.D. Kshemkalyani, M. Singhal, Distributed Computing: Principles, Algorithms, and Systems. Paperback edition, Cambridge University Press, 2011.

Avaliação

A avaliação da disciplina incluirá os seguintes elementos:

  • Provas: (P) Serão aplicadas duas provas teóricas, \(P_1\) e \(P_2\).
  • Testes: (T) Serão aplicados uma série de pequenos testes e exercícios de implementação. A nota dos testes T será a média aritmética entre os testes aplicados.
  • Seminários: (S) Seminários serão apresentados em sala de aula. Os grupos, datas, e tópicos para apresentação serão definidos durante o semestre.
  • Exame: (E) Alunos com média \(2.5 \leq M < 5\) poderão fazer um exame final.

A média M da disciplina será calculada como:

$$M = P_1 \times 0.3 + P_2 \times 0.4 + T \times 0.2 + S \times 0.1 $$

A nota final F será calculada como:

$$ F = \begin{cases} \text{min }\{5, \frac{M+E}{2}\} & \text{caso } 2.5 \leq M < 5 \text{ e o aluno tenha realizado o exame.} \\ M & \text{caso contrário.} \end{cases} $$

Integridade acadêmica: Toda e qualquer violação de integridade acadêmica será punida até o limite da autoridade do professor, incluindo mas não limitado à nota zero na média final do curso.

Calendário e Programa

1 Terça 23 Agosto Introdução e Fundamentos Slides
2 Quinta 25 Agosto Arquituras de sistemas distribuídos Slides
3 Terça 30 Agosto Processos e Threads Slides
4 Quinta 1 Setembro Processos: Clientes/Servidores, Virtualização e Núvem Slides
5 Terça 6 Setembro Comunicação: Revisão, Sockets. Troca de Mensagens. Slides
6 Quinta 8 Setembro Comunicação: Troca de Mensagens. Multicast. Disseminação de informação Slides
7 Terça 13 Setembro Comunicação: Remote Procedure Call Slides
8 Quinta 15 Setembro Nomeação Slides
9 Terça 20 Setembro Sincronização de relógio Slides
10 Quinta 22 Setembro Relógios Lógicos Slides
11 Terça 27 Setembro Exclusão mútua Slides
12 Quinta 29 Setembro Eleição de líder Slides
13 Terça 4 Outubro Revisão / dúvidas
14 Quinta 6 Outubro Prova 1
15 Terça 11 Outubro Consistência: Fundamentos, Modelos Slides
16 Quinta 13 Outubro Replicação: Gerência, Distribuição de conteúdo Slides
17 Terça 18 Outubro Consistência e Replicação: Revisão e Exercícios Slides
Quinta 20 Outubro Aulas Canceladas no IC
18 Terça 25 Outubro Tolerância a falhas: Fundamentos, Comunicação confiável Slides
19 Quinta 27 Outubro Tolerância a falhas: Commit distribuído Slides
20 Terça 1 Novembro Tolerância a falhas: Recuperação, Checkpointing Slides
21 Quinta 3 Novembro Sistemas de Arquivos Slides
22 Terça 8 Novembro Sistemas Peer-to-Peer: DHT/Chord Slides
23 Quinta 10 Novembro Seminários
Terça 15 Novembro Feriado República
24 Quinta 17 Novembro Seminários
25 Terça 22 Novembro Seminários
26 Quinta 24 Novembro Sistemas Peer-to-Peer Slides
27 Terça 29 Novembro Sistemas Web: Arquitetura, Comunicação, HTTP, SOAP, Caching Slides
28 Quinta 1 Dezembro Revisão / dúvidas
29 Terça 6 Dezembro Prova 2
Quinta 8 Dezembro Feriado Municipal
30 Terça 13 Dezembro Revisão da Prova / Segurança em Sistemas Distribuídos
Terça 20 Dezembro Exame