¡GoConqr estrena diseño! Cuéntanos qué te parece.

Mapa mental

SD - Processos

agyotoku SD Prova Portugués

Contenido del mapa

SD - Processos

  1. Threads

    • Processador -> hardware -> provê conjunto de instruções
    • Thread -> software -> procesador minimo com contexto e um conjunto de instruções
    • Processo -> software -> procesador com uma ou mais threads -> executa thread -> executar as intruções daquela thread
    • Contexto
      • Processador -> conjunto de valores guardados nos registradores
      • Thread -> conjunto minimo de valores guardados em registradores e memoria
      • Processo -> conjunto minimo de valores guardados em registradores e memoria para execução de uma thread
    • Thread compartilham o mesmo espaço de endereçamento
    • Operações em thread são mais baratos que processos Ex: Troca de contexto, criação e destruição de processo e thread
    • SO ou cliente implementa thread
      • Cliente
        • Operações feitas em um unico processo -> mais eficiente
        • Se o nucleo decidir bloquear a thread, bloqueia o processo inteiro
        • Problema do SO identificar qual thread se trata, já que possui várias threads para eventos externos
      • SO
        • Todas as operações são chamadas ao sistema
        • Escalonamento de thread
        • Tratamento de eventos externos simples
        • Problema é a perda de eficiencia já que requer um trap para o nucleo
      • Conclusão: Juntar thread cliente e SO
        • Lightweight process - SOLARIS
          • Thread no usuário e LWP no kernel
    • Thread em Sistemas Distribuidos
      • Cllientes multithread
        • Requisição em threads
        • Exibe conforme chegam
        • Vantagem: Esconde a latencia de rede
      • Servidores multithread
        • Thread como Dispatcher
        • Se as chamadas forem a servidores diferentes -> gera speed-linear
      • Uso de bloqueantes
        • Usar bloqueantes simples e conhecidas simplifica o programa
        • Programas multithreaded são menores e mais simples pelo fluxo de controle simplificado
  2. Cliente / Servidor

    • Cliente
      • Networked user interfaces - Interface de usuário interligado
        • Abordagem: Thin-Client
      • Compound Documents
        • Compartilhamento e Troca de dados
        • Funções adicionais ao Thin-Client
          • Drag-and-drop
          • In-place editing
            • Exemplo: rotação de imagem
      • Transparência da distribuição
        • Acesso
          • stubs do cliente para RPC
        • localização/migração
          • software cliente controla a localização atual
        • replicação
          • Multiplas evocações/requests são gerenciadas pelo stub do cliente
        • falhas
          • geralmente são de responsabilidade do cliente
    • Servidor
      • Servidores interativos x concorrentes
        • Interativos - trata somente um cliente
        • Concorrentes - trata mais de um cliente ao mesmo tempo
      • Superservers x Normal
        • Normal
          • Possui um daemon para manter quais clientes está tratando, mas gerencia tudo
        • Superserver
          • Trata a requisição e cria servidor para request e o server "normal" trata
      • Comunicações de controle
        • Problema: Interromper servidor em processamento ou tratando requisição
        • Solução
          • Porta diferente para dados urgentes - Necessita de SO com escalonamento por prioridade
          • Comunicação de controle da camada de transporte - TCP permite envio de mensagens urgente na mesma conexão e SO trata
      • Estados
        • Stateless
          • Consequências
            • Clientes e servidores independentes
            • Inconsistencias de estado são reduzidas
            • Não pode fazer prefetching - Possivel perda de desempenho
          • Comunucação orientada a conexão
            • não viola o modelo stateless
            • Necessita lembrar que a camada de transporte mantem estado
            • Melhor usar protocolo stateless e operações idempotentes - que não alterem o resultado conforme aplicações
        • Stateful
          • Consequências
            • Prefetching
            • Amarram cliente-servidor
            • Cache - Aumenta o desempenho
            • Problema de confiabilidade, segurança, espaço ocupado
      • Aglomerado de Servidores
        • Camadas
          • Dispatched request - balanceador
          • Aplicação e servidores
          • Arquivos e dados distribuidos
        • Tratamento de requisição
          • Várias camadas tratando
          • Uso do TCP-handoff
            • Passa por um switch redirecionando a requisição para um servidor
        • Servidores distribuidos
          • IPv6 Mobile
            • conecta com outro par / servidor de forma transparente
          • CDN
            • Servidor colaborador
            • Original e colaborador parece um unico servidor
  3. Virtualização

    • Motivações
      • Mudança de hardware
      • Portabilidade e migração melhores
      • Isolamento de componentes com problemas
    • Tipos
      • Process Virtual Machine - Maquina de processamento virtual
        • Programa compilado por um intermediário portatil e executado por um interpretador
        • Exemplo: Java VM
      • Virtual Machine Monitor - Maquina de monitoramento virtual
        • Programa que imita o conjunto de instruções de hardware
        • Exemplos: VMware e VirtualBox
    • Interfaces
      • Hardware -> Instruções privilegiadas e instruções gerais
      • SO - Chamadas ao sistema
      • Bibliotecas -> Funções
      • Aplicação utiliza da interface da biblioteca e instruções gerais do hardware
  4. Migração de código

    • Motivação: Desempenho
    • 3 segmentos de migração
      • Código
      • Recurso
      • Execução
    • Mobilidade fraca x forte
      • Fraca
        • Código e dados migrados e execução reiniciada
        • Implementação simples
        • Modalidades: Pull e Push
      • Forte
        • Código, dados e execução migrados
        • Implementação complexa
        • Modalidades: Migração e Clonagem
          • Migração: Move o objeto inteiro de máquina
          • Clonagem: Clona e configura para o mesmo estado da execução
    • Migração e Recursos locais
      • Ligação objeto-recursos
        • ID
          • objeto requer instancia especifica
        • Valor
          • objeto requer valor de um recurso
        • Tipo
          • objeto requer um tipo de recurso disponivel
      • Tipos de recursos
        • Fixos
          • Hardware
        • Anexados
          • Migração de alto custo - BD local
        • Desanexado
          • Migração de baixo custo - cache
    • Migração em sistemas heterogeneos
      • Problemas
        • Maquina destino não ser adequada
        • Contexto de thread/processo/processador dependente de hardware/SO/bibliotecas locais
      • Solução
        • Maquina virtual
          • Linguagens interpretadas que possuem MV (Java)
          • Uma MV

Información

Descripción
Prova SD Mapa Mental sobre SD - Processos, creado por agyotoku el 19/06/2016.
Creado por
agyotoku
Visitas
0
Valoración

Escríbenos

¿Sobre qué es tu mensaje?

¿Qué te parece el nuevo diseño?

¿Te gusta?