Programa
Sistemas Distribuídos
Licenciatura Bolonha em Engenharia Informática
Programa
Geral: 1. Introdução a Sistemas distribuídos (SD); 2. Arquiteturas de SD; 3. Processos; 4. Comunicação; 5. Nomes; 6. Coordenação; 7. Replicação e Consistência de Dados; 8. Tolerância a Faltas. Componente Teórica: Arquitecturas genéricas distribuídas; modelo cliente-servidor; comunicação distribuída (chamada a procedimentos remotos, invocação a objectos remotos, filas de mensagens, streams, grupos); migração de código e agentes; coordenação (sincronização de relógios, salvaguarda de estado, exclusão mútua, eleição); transacções distribuídas; replicação e consistência de dados; tolerância a faltas (fundamentos e problema dos generais bizantinos). Componente Teórica-Prática: Estuda fundamentalmente a comunicação em sistemas distribuídos, explicando detalhadamente como se programam sistemas distribuídos com sockets e threads POSIX.