Paradigmas de comunicação entre processos
Conteúdo
Processos Threads
Em sistemas não distribuídos Em sistemas distribuídos Virtualização Clientes Servidores Migração de código Exercícios
Processos - Threads
Processo Thread Em sistemas não distribuídos
Benefícios
Monothread – chamada bloqueadora de sistema, o processo é bloqueado como um todo Multithreading – paralelismo em ambiente multiprocessado Engenharia de software – fácies de estruturar como um conjunto de threads cooperativos
3
4
2
Processos - Threads
Processos - Threads
Em sistemas distribuídos
Clientes multithread
Exemplo: browsers WEB.
Servidores multithread
Principal utilização em sistemas distribuídos é encontrada no lado do servidor Servidor de Arquivos Multthread Servidor de Arquivos Monothread Servidor de Arquivos sem thread (estado finito)
5
6
3
Processos - Threads
Processos - Virtualização
Thread e processos
Fazer mais coisas ao mesmo tempo
Virtualização de recursos
Ter um único recurso e poder fingir que há mais delas
7
8
4
Processos - Virtualização
2 modos de aplicar a virtualização
Máquina virtual de processo Monitor de máquina virtual
Permitem o isolamento de uma aplicação completa e seu ambiente
Processos - Clientes
Interfaces de usuário em rede
Tarefa de máquinas clientes é proporcionar aos usuários meios de interagir com servidores remotos 2 modos
Máquina cliente terá uma contraparte separada que pode contatar o serviço pela rede.
Exemplo: Sincronização entre um PDA (agenda) e uma agenda remota
Fornecer o acesso direto a serviços remotos oferecendo apenas uma interface de usuário
Exemplo: Thin clients (terminais clientes minimizados)
9
10
5
Processos - Clientes
Software do lado cliente para transparência de distribuição
Compreende mais do que apenas interfaces de usuário Processamento e dados no lado cliente Ideal seria que o cliente não ficasse ciente de que está se comunicando com