Sistemas Distribuídos
Sistemas Distribuídos - objetivos - Melhor relação custo/benefício Capacidade de processamento além dos limites de sistemas centralizados (velocidade da luz, aquecimento) Maior domínio de aplicações Maior confiabilidade e disponibilidade Crescimento gradativo da capacidade de processamento
Sistemas Distribuídos - objetivos - Compartilhamento de dados comuns entre usuários Compartilhamento de recursos de hardware e software Comunicação entre pessoas Flexibilidade na distribuição de tarefas de acordo com as aplicações
Sistemas Distribuídos - requisitos - Controle de concorrência Consistência Extensibilidade (openness) Escalabilidade (crescimento gradativo "suave") Tolerância a falhas Transparência
Sistemas Distribuídos - transparência - Acesso Localizacão Concorrência Replicação Falha Migração Desempenho Escala Paralelismo
Sistemas Distribuídos - componentes básicos - Comunicação Sistema de nomes Manutenção de consistência Alocação de carga de trabalho
Comunicação modelos: cliente/servidor grupo níveis de abstração: processos e mensagens objetos e operações (RPC) formas de sincronismo: síncrona assíncrona
Sistemas Distribuídos - consistência: transações - Atômica: para o mundo externo, a transação ocorre de forma indivisível. Consistente: a transação não viola invariantes de sistema. Isolada: transações concorrentes não interferem entre si (serializable). Durável: os efeitos de uma transação terminada com commit são permanentes.
Orientação a Objetos Parte II
Orientação a Objetos - conceitos fundamentais - Identidade Encapsulamento Classificação/Instanciação Generalização/Especialização Herança Polimorfismo
Orientacão a Objetos - associação e ligacão - Relacionamento entre instâncias de duas ou mais classes descrevendo um grupo de ligações com estrutura e semântica comuns. Exemplo: Um país tem como capital uma cidade. Exemplo: Um funcionário trabalha numa empresa.
Orientacão a Objetos - modelo dinâmico - Representa os aspectos de um sistema relativos ao tempo e às modificações de estado Abrangência: interações seqüência de operações fluxo de controle Representação: estados e eventos