Escolar Documentos
Profissional Documentos
Cultura Documentos
Metas de projeto
[C2,C3,T1.5]
Propriedades crticas de um SD
Desafios na construo de um SD
Heterogeneidade
Diferentes formas de representao de mesmo dado em diferentes computadores
Ex. Estrutura com bit mais significativos em um e bit menos significativos em outro
Necessidade de usar mesma representao de tipos primitivos e de estruturas de dados na troca de mensagens Soluo uso de middleware Migrao de cdigo ou cdigo mvel
Ex.: Mquinas virtuais / Applets Java
Transparncia a paralelismo
Lembrando do conceito de transparncia
Esconder do usurio e do programador de aplicaes a separao de componenentes em um sistema distribudo, tal que este seja visto como um sistema centralizado
Paralelismo: diviso de uma tarefa em sub-tarefas coordenadas e que so executadas simultaneamente em processadores distintos Compilador, ambiente de execuo e sistema operacional devem saber tirar vantagem do potencial paralelismo de um sistema distribudo sem mesmo que o programador saiba disso
Flexibilidade
Modelos de estrutura de SD:
Ncleo monoltico: inclui gerenciamento de arquivos, diretrios e processos Micro-ncleo: mecanismo para comunicao entre processos gerenciamento bsico de memria
Vantagens do micro-ncleo
Modularidade => Flexibilidade
servios esto disponveis a todos os clientes, independentemente de localizao servios podem ser reparados sem causar parada total do sistema os prprios usurios podem adicionar novos servios
Confiabilidade
Em teoria, como medir? Aspectos:
disponibilidade: frao do tempo em que o sistema pode ser usado
exatido: replicao versus consistncia segurana: Como um servidor pode verificar a origem de uma mensagem? tolerncia a falhas: replicao versus desempenho
Desempenho
Mtodos de medio:
tempo de resposta
Escalabilidade
Sistema dito escalvel se permanece eficiente quando h um aumento significativo do nmero de recursos e de usurios Evitar:
componentes centralizados (ex: um nico servidor de correio eletrnico para todos os usurios) tabelas centralizadas (ex: uma nica lista telefnica on-line) algoritmos centralizados (ex: roteamento baseado em informao completa)
Mobilidade
Diferentes dispositivos mveis como celulares, PDAs, laptops Conectividade fornecidade por protocolos Internet Protocolos Internet desenvolvido para ambientes fixos Problemas de intermitncia e mobilidade
Endereamento
Roteamento
Algoritmos Distribudos
Nenhuma mquina conhece o estado global Decises so baseadas somente em informao local A parada de uma mquina no arruna o algoritmo No h qualquer suposio quanto a existncia de tempo (relgio) global
Elementos bsicos de um SD
Sistema de nomes Comunicao Estrutura de software Alocao de carga de trabalho Manuteno de consistncia
Sistema de nomes
Nomes permitem que recursos sejam compartilhados Nomes de recursos devem ser independendentes de sua localizao O esquema de nomes deve escalar bem Um sistema de interpretao de nomes deve ser acessvel por programa
Comunicao
O sucesso de um SD depende muito do desempenho/confiabilidade das tcnicas de comunicao usadas em sua implementao Dilema: otimizar implementao da comunicao e prover alto nvel do modelo de programao dessa comunicao
Estrutura de software
Extensibilidade requer componentes de software com interfaces bem definidas Um servio um gerenciador de objetos de um certo tipo e sua interface um conjunto de operaes Novos servios devem interoperar com servios existentes e no duplicar suas funes
capacidade de comunicao
recursos da rede em geral
Manuteno de consistncia
Consistncia de atualizao: atomicidade como meio de atualizao instantnea de muitos elementos Consistncia de replicao: cpias de um mesmo recurso devem ser idnticas Consistncia de cache: modificaes em um cliente devem ser propagadas ao gerenciador e aos demais clientes
confiabilidade e disponibilidade
segurana