EISD - Sistemas Distribuídos (2009 - 2010)
Up one level- Docente Responsável
- Rui Oliveira
- Docente Responsável pelas aulas teóricas
- Rui Oliveira
- Docente(s) das aulas práticas
- Carlos Baquero Moreno
- Victor Francisco Fonte
- Ricardo Vilaça
Elementos de avaliação: dois testes, um durante o semestre e outro no final com pesos de 30 e 70% da nota final, respectivamente.
- Introdução a processos, concorrência e sistemas distribuídos;
- Concorrência em memória partilhada;
- Passagem de mensagens e sistemas distribuídos
Introdução a processos, concorrência e sistemas distribuídos
- Processos e threads;
- Partilha de memória versus passagem de mensagens;
- Evolução dos sistemas distribuídos;
- Caracterização de um sistema distribuído;
- Introdução a paradigmas de programação de sistemas distribuídos;
Concorrência em memória partilhada
- Exclusão mútua: atomicidade, corridas e secções críticas; mutexes; granularidade e hierarquias de recursos; two-phase locking; locking hierárquico;
- Sincronização via semáforos;
- Sincronização via monitores: tipos abstractos de dados concorrentes; variáveis de condição; espera e semânticas de sinalização; invariantes e predicados;
- Concorrência em linguagens orientadas a objectos: objecto como monitor, locking recursivo, monitores aninhados;
- Modelo de memória: falsas intuições sobre visibilidade; coêrencia sequêncial e coerências mais fracas;
Passagem de mensagens e sistemas distribuídos
- Canais e portos, send e receive, unicast e broacast;
- Modelos síncronos e assincronos;
- Modelos orientados ou não à conexão;
- Modelo cliente-servidor: padrões pedido-resposta, servidores com ou sem estado, controlo de concorrência em servidores;
- Modelo dos actores;
- Algoritmos distribuídos;
- Principles of Concurrent and Distributed Programming: Algorithms and Models, M. Ben-Ari, Prentice-Hall, 2006;
- Java Concurrency in Practice, Brian Goetz, Tim Peierls, Joshua Bloch, Addison Wesley, 2006
- Operating System Concepts (7ª ed), Avi Silberschatz, Peter Baer Galvin, Greg Gagne, John Wiley & Sons , 2005;
- Concurrency: State Models & Java Programs, Jeff Magee, Jeff Kramer, John Wiley & Sons;
- Documentação disponível online nesta página.
Sumários dos turnos TP das 5ª Feiras:
1 Oct TP3 Contador partilhado, Threads e lock java
1 Oct TP4 Contador partilhado, Threads e lock java
8 Oct TP3 Banco com lock centralizado
8 Oct TP4 Banco com lock centralizado
15 Oct TP3 Dispensa de aula RT, latada.
15 Oct TP4 Dispensa de aula RT, latada.
22 Oct TP3 Locks conta a conta. Ordem de obtenção de locks.
22 Oct TP4 Locks conta a conta. Ordem de obtenção de locks.
29 Oct TP3 Saldo minimo, variáveis de condição, bounded box.
29 Oct TP4 Saldo minimo, variáveis de condição, bounded box.
5 Nov TP3 Conclusão do banco com saldo minimo e box com duas cv
5 Nov TP4 Conclusão do banco com saldo minimo e box com duas cv
12 Nov TP3 Barreira com re-entrada
12 Nov TP4 Barreira com re-entrada
19 Nov TP3 Leitores e escritores com e sem starvation de escritores
19 Nov TP4 Leitores e escritores com e sem starvation de escritores
26 Nov TP3 Sockets Servidor e Client
26 Nov TP4 Sockets Servidor e Client
3 Dez TP3 Servidor multi-threaded
3 Dez TP4 Servidor multi-threaded
10 Dez TP3 Servidor de somas com somas globais. Inicio do Chat.
10 Dez TP4 Servidor de somas com somas globais. Inicio do Chat.
- Aula Teórica de 16 de Outubro
- Conforme despacho RT – 64/09, não haverá aula teórica no próximo dia 16 de Outubro.
- Aulas Teórica-Prática de 15 de Outubro
- Conforme despacho RT – 64/09, e para sincronização dos turnos não haverá aulas teórico-práticas no próximo dia 15 de Outubro. Turnos das 9h00 e 16h00.
- Aulas Teorico-prática de 30 de Novembro
- Não haverá aulas Teorico-prática no dia 30 de Novembro (Turnos 1 e 2)
- Teste 9 Dezembro 2009
- O teste de 9 de Dezembro considerará a matéria teórica dada e, das aulas práticas, threads, paradigma de monitor e mecanismos explícitos de exclusão mútua e de variáveis de condição. É disponibilizado o enunciado do ano lectivo 2008/2009
- Notas exame 20 Fevereiro e Finais
- A notas de "Exame" referem-se à nota obtida no exame de 20 de Feveiro. A "Nota Final" corresponde à nota final à cadeira que, sempre que isso beneficiou o aluno/a, teve em conta a nota obtida no primeiro teste e valendo esta 30% da nota final.