DC-UFRPE/Bacharelado em Ciência da Computação/Sistemas Distribuídos

Programa da Disciplina

editar
Nome: SISTEMAS DISTRIBUÍDOS
Código: 14059
Departamento: Departamento de Computação (DC)
Área: Computação
Carga-horária total: 60 horas
Créditos: 4
Pré-requisitos: REDES DE COMPUTADORES (Cod. 14058)

Ementa

editar
  • Conceitos Básicos.
  • Paradigmas de Linguagens de Programação Distribuída.
  • Técnicas de Especificação de Sistemas.
  • Ambientes de Suporte e Desenvolvimento de Sistemas Distribuídos.
  • Estudo de Casos. Aplicação Prática.

Objetivos

editar
  • O discente deverá ser capaz de analisar, descrever e projetar sistemas distribuídos (de acordo com os conceitos básicos introduzidos na disciplina).
  • O discente deverá ser capaz também de desenvolver/implementar um sistemas distribuídos através de tecnologias atuais amplamente difundidas (ex.: Serviços Web).
  • Finalmente, o discente deverá ser capaz de analisar, debater e propor soluções inovadoras relacionadas ao atual estado da arte da área de Sistemas Distribuídos.


Conteúdo Programático

editar

1. Caracterização de Sistemas Distribuídos

1.1 Introdução

1.2 Exemplos

1.3 Desafios atuais

2. Modelos de Sistemas Distribuídos

2.1 Introdução

2.2 Modelos físicos

2.3 Modelos arquiteturais

2.4 Modelos fundamentais

3. Comunicação interprocesso

3.1 Introdução

3.2 API para os protocolos Internet

3.3 Representação de dados externos

3.4 Marshalling

3.5 MPI

4. Invocação Remota

4.1 Introdução

4.2 Protocolos request-reply

4.3 Chamada de procedimentos remotos (RPC)

4.4 Chamada de métodos remotos (RMI)

5. Serviços Web

5.1 Introdução

5.2 Descrição de serviços Web

5.3 Padrões

5.4 Segurança em Serviços Web

6. Segurança para Sistemas Distribuídos

6.1 Conceitos básicos de segurança

6.2 Criptografia e algoritmos criptográficos

6.3 Assinatura digital

6.4 Ataques comuns em sistemas distribuídos

7. Tópicos atuais em Sistemas Distribuídos

7.1 Computação em nuvem

7.2 Computação móvel

7.3 Computação orientada a serviços

Bibliografia Básica

editar

Coulouris, G. and Dollimore, J. and Kindberg, T, "Sistemas Distribuídos, 4a Ed.", Bookman, 2007. Tanenbaum, A. S.; Van Steen, M. “Sistemas Distribuidos: Principios E Paradigmas”. Prentice Hall, 2007. Tanembaum, Andrew S. “Redes de Computadores”. Rio de Janeiro: Elsevier, 2003. 945p.

Bibliografia Complementar

editar

Goetz, Brian; Guimarães, Petula. Java concorrente na prática. Rio de Janeiro, RJ: Alta Books, c2008. xx, 278 p. ISBN 9788576082071. Tanembaum, Andrew S. Sistemas operacionais modernos. 3. ed. São Paulo: Pearson Prentice Hall, 2009. xvi, 653p. Tanembaum, Andrew S. “Sistemas operacionais modernos”. 3. ed. São Paulo: Pearson Prentice Hall, 2009. Carvalho, Luciano Gonçalves de. Segurança de redes. Rio de Janeiro: Ciência Moderna, 2005. 79 p. Deitel, Harvey M.; Deitel, Paul J. Java: como programar. São Paulo: Prentice Hall, 2005.