Escolar Documentos
Profissional Documentos
Cultura Documentos
Evoluo histrica
Computadores iniciais: caros e grandes execuo por um operador: setup do job (carregar cartes), executar programa, imprimir resultado Anos 50 e 60: batching, spooling, multiprogramao batching: juntar jobs semelhantes para processamento spooling: sobreposio de I/O e CPU multiprogramao: diversos programas sendo executados concorrentemente pela CPU Objetivo: otimizar a utilizao da CPU
Evoluo histrica
No existia a interao entre usurio e computador alto custo para processos interativos: depurao
Incio dos anos 60: sistemas de time sharing utilizao de diversos terminais burros conectados a um computador impresso de um computador por usurio tarefas principais/comuns so executadas pelo computador principal
desenvolvimento dos minicomputadores: menores e mais rpidos!
Evoluo histrica
Final dos anos 60 e incio dos anos 70: surgimento das redes de computadores e do sistema operacional UNIX Ethernet Xerox Palo Alto (1973): Local Area Network permitiu interligar mais computadores a distncias maiores usando uma velocidade maior (e.g. rede de computadores de um prdio) ARPANet DoD (1969): Wide Area Network interligao entre computadores localizados dispersamente (cidades e/ou pases diferentes)
Evoluo histrica
Final dos anos 70: protocolo TCP/IP definio de padro para comunicao entre computadores Incio dos anos 80: microprocessadores e estaes de trabalho reduo do custo (em relao aos mainframes) Final dos anos 80: estaes de trabalho ligadas em rede diversos servios para comunicao entre pessoas/mquinas FTP, TELNET, MAIL
Motivao
Avanos em microeletrnica
processadores mais rpidos e baratos
Avanos em comunicaes
redes mais eficientes e confiveis
Relao custo/desempenho
melhor utilizar diversos processadores interconectados do que um nico computador centralizado
Conceitos
O que um Sistema Distribudo? Um sistema distribudo uma coleo de computadores independentes que parecem um sistema nico para o usurio [Tanenbaum]. um sistema onde os componentes de HW e SW, localizados em computadores interligados por uma rede, comunicam e coordenam suas aes somente atravs de troca de mensagens [Coulouris]. Dois aspectos: Hardware: autonomia Software: sistema nico
Caractersticas
Processos so executados concorrentemente no sistema distribudo no existe um controle global! processos usam troca de mensagens para coordenar suas aes
Inexistncia de relgio global noo de tempo global importante na coordenao de processos sincronizao de relgios possui um limite de preciso
Caractersticas
Falhas independentes a falha de um dos componentes (rede, mquinas, programas) do sistema distribudo no implica na falha do sistema como um todo
Velocidade
10.000 CPUs x 50 MIPS = 500.000 MIPS Uma CPU para isto deveria executar uma instruo a cada 0,002 nanosegundos (2 picosegundos).
Vantagens
Vantagens
Maior confiabilidade (reliability) e disponibilidade grau de tolerncia contra erros e falhas de componentes em um sistema 5% fora do ar = 5% em perda de desempenho Aplicaes crticas - aviao, reatores nucleares replicao de componentes Facilidade de expanso permite aumentar o poder de processamento/armazenamento sem se desfazer daquilo que j possui, isto , de maneira gradativa
Vantagens
Desvantagens
Maior dificuldade na garantia de segurana (crtico!) Desevolvimento de sw distribudo mais complexo Gerncia de recursos mais complexa
Desafios localizao
colocar os recursos em um determinado local e permitir a localizao destes recursos quando necessrio
coordenao
acordo entre os componentes distribudos sobre o que fazer e de que forma
Exemplos de SDs
Internet: grande coleo de diferentes redes de computadores interconectadas. Comunicao atravs de troca de mensagens Servios: www, ftp, mail
Intranet: parte da Internet administrada separamente Polticas de segurana locais (firewall) Necessidades: servio de compartilhamento de arquivos, firewalls para proteo, facilidade de instalao e suporte de software
Exemplos de SDs
Computao mvel: avanos na miniaturizao de dispositivos e redes sem fio
Integrao de pequenos dispositivos computacionais portteis Laptops, PDAs, celulares, pagers, cmeras digitais, wearable devices, dispositivos integrados a utenslios Problemas: descoberta de recursos no ambiente, reconfigurao de dispositivos, privacidade e segurana
SETI@home
vCluster
Desenvolvido pelo CPAD -http://www.cpad.pucrs.br
Motivao: subutilizao dos recursos computacionais em laboratrios acadmicos ~ 90% ociosidade aplicaes cientficas com demanda por recursos computacionais Objetivo: Explorao de ciclos ociosos
vCluster