Sistemas Operacionais I (Obrigatório)
Conceitos sobre Sistemas Operacionais e Redes de Computadores.
Programação C, C++ e Java. Noções de Orientação a Objetos.
Conceitos sobre Troca de Mensagens
Ementa:
Serviços Básicos: diretório, descoberta, localização e gerenciamento de recursos, segurança, transações, e qualidade de serviço (QoS). Suporte para sistemas distribuídos (middleware), objetos distribuídos, orientado a mensagens (message oriented middleware, MOM), sistema de eventos distribuídos. Suporte para sistemas ubíquos. Descrição de sistemas distribuídos; requisitos não-funcionais. Mecanismos de composição e adaptação dinâmica em middleware e aplicações distribuídas.
Tópicos a serem abrodados
TCP/IP
1. Arquitetura, Quadros básicos do IP, TCP e UDP
2. Gateways, Roteamento Estático, Roteamento Dinâmico
3. Protocolos de Roteamento: RIP, EGP, BGP e OSPF
4. Redes classe A, B, C e D (IP-Multicasting), Subredes
5. DNS - Serviços de Nomes Distribuídos
6. Configuração típica de uma internet em ambientes DOS, Windows, UNIX e VM
Programação por sockets
1. Unix, Windows, Java, Multicast
Sistemas Distribuídos
1. conceitosbásicos2. arquiteturas
3. sistemasde arquivos distribuídos
4. modelocliente servidor
5. sincronização
6. tempo
7. sistemasoperacionais distribuídos
Serviços para Sistemas Distribuídos
Serviços Básicos: diretório, descoberta, localização e gerenciamento de recursos, segurança, transações, e qualidade de serviço (QoS). Suporte para sistemas distribuídos (middleware), objetos distribuídos, orientado a mensagens (message oriented middleware, MOM), sistema de eventos distribuídos. Suporte para sistemas ubíquos. Descrição de sistemas distribuídos; requisitos não-funcionais. Mecanismos de composição e adaptação dinâmica em middleware e aplicações distribuídas.
Middlewarepara chamadas e invocações remotas
1. RPC e RMI
Middlewarepara objetos e componentes distribuídos
1. CORBA, DCOM, Java Beans e EJB
Mecanismos para programação Web
1. CGI, Aplets e Servlets
Padrões para transporte de informações
1. XDR, XML
Bibliografia:
· A. Tanembaum and M. van Steen, Distributed Systems: Principles and Paradigms, Prentice Hall, 2002.
· G. Coulouris, J. Dollimore and T. Kindberg, Distributed Systems: Concepts and Design, Addison Wesley, 3rd Edition, 2001.
· D. Lea, Concurrent Programming in Java: Design Principles and Patterns, 2nd Edition, The Java Series, Addison Wesley, 2000.
· E. R. Harold, Java Network Programming, O'Reilly, 2000.
· M. Ben-Ari, Principles of Concurrent Programming, Englewood Cliffs, NJ, Pretice Hall, 1982.
· M. Raynal, Distributed Algorithms and Protocols, John Wiley & Sons, 1988.
· K. P. Birman, Building Secure and Reliable Network Applications, Manning Publications Co., 1996.
· D. Schmidt, M. Stal, H. Rohnert and F. Buschmann, “Pattern-Oriented Software Architecture - Patterns for Concurrent and Networked Objects”, Volume 2, John Wiley & Sons, 2000.
· O. Nierstrasz and D. Tsichritzis, Object-oriented Software Composition, Prentice-Hall, 1995.