Distributed Systems Principles and Paradigms

Tamanho: px
Começar a partir da página:

Download "Distributed Systems Principles and Paradigms"

Transcrição

1 Distributed Systems Principles and Paradigms Maarten van Steen VU Amsterdam, Dept. Computer Science (Tradução e Adaptação Ricardo Anido - IC/Unicamp) Capítulo 03: Processos Versão: 20 de março de 2014

2 2 / 33 Conteúdo Capítulo 01: Introdução 02: Arquiteturas 03: Processos 04: Comunicação 05: Nomeação 06: Sincronização 07: Consistência & Replicação 08: Tolerância a Falhas 09: Securança 10: Distribuição de Sistemas Baseados em Objetos 11: Sistemas de Arquivos Distribuídos 12: Sistemas Distribuídos Baseados na Web 13: Sistemas Distribuídos Baseados em Coordenação

3 3.1 Processos 3 / 33 Introdução a Threads Ideia básica Construir processadores virtuais em software, usando processadores físicos: Processador: provê um conjunto de instruções e mecanismos para executar uma série dessas instruções Thread: Um processador mínimo em software em cujo contexto uma série de instruções são executadas. Salvar o contexto de uma thread implica parar a execução corrente e salvar todos os dados necessários para retomar a execução posteriormente. Processo: Um processador em software em que uma ou mais threads podem ser executadas. Executar uma thread significa executar uma série de instruções no contexto dessa thread.

4 3.1 Processos Troca de contexto Contextos Contexto de processador: Conjunto mínimo de valores armazenados nos registros de um processador, usados para execução de uma sequência de instruções (apontador de pilha, apontador de programa, registradores gerais, etc.) Contexto de Thread: Conjunto mínimo de valores armazenados em registradores e memória, usados para execução de uma sequência de instruções (contexto de processador, estado da pilha, etc.) Contexto de Processo: Conjunto mínimo de valores armazenados em registradores e memória, usados para execução de uma sequência de instruções (contexto de thread, registradores de gerência de memória (MMU), etc.) 4 / 33

5 3.1 Processos Troca de contexto Contextos Contexto de processador: Conjunto mínimo de valores armazenados nos registros de um processador, usados para execução de uma sequência de instruções (apontador de pilha, apontador de programa, registradores gerais, etc.) Contexto de Thread: Conjunto mínimo de valores armazenados em registradores e memória, usados para execução de uma sequência de instruções (contexto de processador, estado da pilha, etc.) Contexto de Processo: Conjunto mínimo de valores armazenados em registradores e memória, usados para execução de uma sequência de instruções (contexto de thread, registradores de gerência de memória (MMU), etc.) 4 / 33

6 3.1 Processos Troca de contexto Contextos Contexto de processador: Conjunto mínimo de valores armazenados nos registros de um processador, usados para execução de uma sequência de instruções (apontador de pilha, apontador de programa, registradores gerais, etc.) Contexto de Thread: Conjunto mínimo de valores armazenados em registradores e memória, usados para execução de uma sequência de instruções (contexto de processador, estado da pilha, etc.) Contexto de Processo: Conjunto mínimo de valores armazenados em registradores e memória, usados para execução de uma sequência de instruções (contexto de thread, registradores de gerência de memória (MMU), etc.) 4 / 33

7 5 / 33 Troca de contexto Processsos 3.1 Processos Observações 1 Threads compartilham o mesmo espaço de endereçamento. Troca de contexto pode ser feita independente do systema operacional, em código de usuário. 2 Troca de processos é geralmente mais cara, envolve chamada de sistema. 3 Criar de destruir threads é muito mais barato do que criar e destruir processos.

8 3.1 Processos 6 / 33 Threads e Sistemas Operacionais Ponto principal Kernel de OS deve prover threads, ou threads devem ser implementadas em bilbiotecas em nível de usuário? Solução em espaço de usuário Todas as operações podem ser completamente realizadas dentro de um único processo implementações podem ser muito eficientes. Todos os serviços disponibilizados pelo kernel são feitos em nome do processo em que a thread reside se o kernel decide bloquear uma thread, todo o processo será bloqueado (todas as outras threads desse processo serão bloqueadas). Threads são usadas quando há muitos eventos externos: threads bloqueiam com base em eventos se o kernel não distingue threads, como pode sinalizar eventos para uma determinada thread?

9 3.1 Processos 7 / 33 Threads e Sistemas Operacionais Solução no Kernel Ideia é que kernel contenha implementação de threads; todos os serviços de thread feitos a partir de chamadas a sistemas Operações que bloqueiam uma thread não são mais problema: kernel pode escolher outra thread dentro do mesmo processo. Tratamento de eventos externos é simples kernel (que captura todos os eventos) escolhe a thread associada ao evento. O problema é perda de desempenho devido ao fato de overhead introduzido por chamadas de systema. Conclusão Seria ideal ter um sistema de threads híbrido, implementado em nível de usuário e de kernel.

10 3.1 Processos Threads Solaris Ideia básica Introduziu uma abordagem em dois níveis: processos lightweight que podem executar threads de usuário. Thread state User space Thread Kernel space Lightweight process LWP executing a thread Nota Este conceito foi abandonado; hoje em dia implementação é no nível de usuário (como em java) ou no nível de kernel. 8 / 33

11 3.1 Processos 9 / 33 Threads e Sistemas Distribuídos Cliente Web Multithreaded Escondendo latências de rede: Navegador Web percorre página HTML, e descobre que mais arquivos devem ser buscados. Cada arquivo é buscado usando uma thread separada, cada uma executando uma requisião HTTP (bloqueante). À medida que arquivos chegam, navegador mostra na tela. Multiplas chamadas request-reply para outras máquinas (RPC) Cliente executa várias chamadas ao mesmo tempo, cada uma usando uma thread distinta. Espera até que todos os resultados sejam retornados. Nota: se chamadas são para servidores diferentes, podemos ter uma melhora de desempenho (speed-up) linear.

12 3.1 Processos 10 / 33 Threads e Sistemas Distribuídos Melhora de desempenho Criar thread é muito mais barato do que criar processo. Servidor com uma única thread inibe escalabilidade mesmo em caso simples de sistema com múltiplos processadores. Em clientes: esconder latência de rede reagindo a próxima requisição enquanto anterior não é respondida. Melhor estrutura Maioria de servidores têm demanda alta de E/S. Uso de modelo simples e bem-conhecido de chamadas bloqueantes simplifica estrutura geral. Programas com múltiplas thread tendem a ser menores e mais fáceis de entender e depurar devido ao fluxo simplificado de controle.

13 11 / 33 Virtualização Processsos 3.2 Virtualização Observação Virtualização tem se tornado cada vez mais importante: Hardware muda mais rapidamente do que software Facilidade de portabilidade e migração de código Isolamento de componentes falhos ou invadidos Program Program Interface A Hardware/software system A Interface A Implementation of mimicking A on B Interface B Hardware/software system B (a) (b)

14 12 / 33 Arquitetura de VMs Processsos 3.2 Virtualização Observação Virtualização pode ser realizada em níveis distintos, dependendo fortemente das interfaces oferecidas pelos vários componentes: Library functions System calls Privileged instructions Application Library Operating system Hardware General instructions

15 3.2 Virtualização VMs de processo x VMs de arquitetura Application Runtime system Runtime system Runtime system Applications Operating system Operating system Operating system Operating system Virtual machine monitor Hardware (a) Hardware (b) VM de Processos: Um programa compilado para um código intermediário (portável), que é executado em um sistema de execução (Exemplo: Java VM). VM de Arquitetura: Uma camada de software que imita uma arquitetura de hardware (conjunto de instruções + interfaces de dispositivos) um sistema operacional completo e suas aplicações podem ser providos (Exemplo: VMware, VirtualBox). 13 / 33

16 14 / 33 Processsos 3.2 Virtualização VM de arquitetura e sistemas operacionais Na prática Há vários exemplos de VMs rodando em cima de sistemas operacionais. Executam tradução binária: durante execução de uma aplicação ou sistema operacional, traduz intruções da máquina virtual para o repertório da máquina real. Cuidado com ações sensíveis: chamadas a sistema, instruções privilegiadas. Ações sensíveis são trocadas por chamadas ao sistema da VM.

17 3.3 Clientes 15 / 33 Clientes: Interfaces de usuário Essência A maior parte de software no lado do cliente é focado em interfaces (gráficas) de usuário. Application server Application server User's terminal Window manager Xlib Local OS Application Xlib Local OS Xlib interface X protocol X kernel Device drivers Terminal (includes display keyboard, mouse, etc.)

18 3.3 Clientes 16 / 33 Clientes: Interfaces de usuário Documentos compostos Interface de usuário é application-aware comunicação entre aplicativos: drag-and-drop: mover objetos na tela para invocar interação com outros aplicativos. edição in-place: integrar vários aplicativos no nível de interface de usuários (por exemplo, processamento de texto + facilidades de desenho)

19 17 / 33 Software Client-Side Processsos 3.3 Clientes Geralmente implementados para transparência de distribuição transparência de acesso: stubs client-side para RPCs transparência de localidade/migração: deixar o software client-side manter (ou descobrir) localidade do serviço transparência de replicação: invocações múltiplas tratadas por stub no cliente: Client machine Server 1 Server 2 Server 3 Client appl. Server appl Server appl Server appl Client side handles request replication Replicated request transparência de falhas: frequentemente podem ser colocadas somente no cliente (tentativa de mascarar falhas do servidor ou de comunicação).

20 3.4 Servers 18 / 33 Servidores: Organização Geral Modelo Básico Um servidor é um processo que espera por chegadas de requisições de serviços em endereços de transporte específicos. Na prática, há um mapeamento um-para-um entre uma porta e um serviço. ftp-data 20 File Transfer [Default Data] ftp 21 File Transfer [Control] telnet 23 Telnet 24 any private mail system smtp 25 Simple Mail Transfer login 49 Login Host Protocol sunrpc 111 SUN RPC (portmapper) courier 530 Xerox RPC

21 19 / 33 Processsos 3.4 Servers Servidores: Organização Geral Tipos de servidores Superservidores: Servidores que escutam em várias portas, i.e., provêm vários serviços independentes. Na prática, quando uma requisição de serviço chega, iniciam um subprocesso para tratar da requisição (UNIX inetd, internet service deamon) Servidores Iterativos vs. servidores concorrentes: Servidores iterativos podem tratar de apenas um cliente por vez, em contraste com servidores concorrentes.

22 3.4 Servers Comunicação fora-de-banda Ponto É possível interromper um servidor depois que ele aceitou (ou está prestes a aceitar) uma requisição de serviço? Solução 1 Use uma porta separada para dados urgentes: Servidor tem uma porta separada para mensagens urgentes para o processo/thread. Mensagem urgente chega requisição associada é suspensa. Nota: exige que o S.O. tenha suporte escalonamento baseado em prioridades. Solução 2 Uso de comunicação fora-de-banda da camada de transporte: Exemplo: TCP permite mensagens urgentes na mesma conexão Mensagens urgentes podem ser capturadas com uso de signals no S.O. 20 / 33

23 3.4 Servers Comunicação fora-de-banda Ponto É possível interromper um servidor depois que ele aceitou (ou está prestes a aceitar) uma requisição de serviço? Solução 1 Use uma porta separada para dados urgentes: Servidor tem uma porta separada para mensagens urgentes para o processo/thread. Mensagem urgente chega requisição associada é suspensa. Nota: exige que o S.O. tenha suporte escalonamento baseado em prioridades. Solução 2 Uso de comunicação fora-de-banda da camada de transporte: Exemplo: TCP permite mensagens urgentes na mesma conexão Mensagens urgentes podem ser capturadas com uso de signals no S.O. 20 / 33

24 3.4 Servers Comunicação fora-de-banda Ponto É possível interromper um servidor depois que ele aceitou (ou está prestes a aceitar) uma requisição de serviço? Solução 1 Use uma porta separada para dados urgentes: Servidor tem uma porta separada para mensagens urgentes para o processo/thread. Mensagem urgente chega requisição associada é suspensa. Nota: exige que o S.O. tenha suporte escalonamento baseado em prioridades. Solução 2 Uso de comunicação fora-de-banda da camada de transporte: Exemplo: TCP permite mensagens urgentes na mesma conexão Mensagens urgentes podem ser capturadas com uso de signals no S.O. 20 / 33

25 3.4 Servers 21 / 33 Servidores e Estado Servidores sem estado (stateless) Nunca precisam manter informação precisa sobre o cliente após tratar uma requisição: Não lembram se um arquivo foi aberto (simplesmente fecham o arquivo após acesso) Não prometem invalidar cache de cliente Não mantém quem são os clientes Consequências Clientes e servidores são completamente independentes Inconsistências de estado devido a falhas (crash) no cliente ou servidor são reduzidas Possível perda de desempenho devido, p.ex., servidor não poder antecipar comportamento do cliente (exemplo, prefetching de blocos de arquivos)

26 3.4 Servers 21 / 33 Servidores e Estado Servidores sem estado (stateless) Nunca precisam manter informação precisa sobre o cliente após tratar uma requisição: Não lembram se um arquivo foi aberto (simplesmente fecham o arquivo após acesso) Não prometem invalidar cache de cliente Não mantém quem são os clientes Consequências Clientes e servidores são completamente independentes Inconsistências de estado devido a falhas (crash) no cliente ou servidor são reduzidas Possível perda de desempenho devido, p.ex., servidor não poder antecipar comportamento do cliente (exemplo, prefetching de blocos de arquivos)

27 3.4 Servers Servidores e Estado Question Comunicação orientada a conexão casa com projeto stateless? 22 / 33

28 3.4 Servers 23 / 33 Servidores e Estado Servidores Stateful Mantém estado de clientes: Registra que arquivo foi aberto (pre-fetching pode ser feito) Sabe que dados o cliente tem no cache, e permite que clientes mantenham cópias locais de dados compartilhados Observação O desempenho de servidores stateful pode ser excelente, desde que clientes possam manter cópias locais. Confiabilidade não é um grande problema.

29 3.4 Servers 23 / 33 Servidores e Estado Servidores Stateful Mantém estado de clientes: Registra que arquivo foi aberto (pre-fetching pode ser feito) Sabe que dados o cliente tem no cache, e permite que clientes mantenham cópias locais de dados compartilhados Observação O desempenho de servidores stateful pode ser excelente, desde que clientes possam manter cópias locais. Confiabilidade não é um grande problema.

30 3.4 Servers 24 / 33 Clusters de servidores: três níveis (tiers) distintos Logical switch (possibly multiple) Application/compute servers Distributed file/database system Client requests Dispatched request First tier Second tier Third tier Elemento crucial O primeiro nível é em geral responsável por passar requisições para o servidor apropriado.

31 25 / 33 Processsos Tratamento de requisições 3.4 Servers Observação Fazer o primeiro nível tratar todas as comunicações do/para o cluster pode levar a gargalo. Solução Várias, mas uma popular é TCP-handoff Logically a single TCP connection Response Server Client Request Switch Request (handed off) Server

32 26 / 33 Migração de Código Processsos 3.5 Migração de Código Abordagem para migração de código Migração e recursos locais Migração e sistemas heterogêneos

33 27 / 33 Processsos 3.5 Migração de Código Migração de Código: um pouco de contexto Before execution After execution Client Server Client Server code code C/S state state* resource resource code code RemoteEval state state* resource resource code code CodeOnDemand state state* resource resource code code MobAgents state state* resource resource resource resource

34 28 / 33 Processsos Mobilidade Forte e Fraca 3.5 Migração de Código Componentes de objetos Code segment: contém o código Data segment: contém o estado Execution state: contém o contexto da thread executando o objeto

35 3.5 Migração de Código Mobilidade Forte e Fraca Mobilidade Fraca Mover apenas segmentos de código e dados (e reinicia execução): Relativamente simples, se código é portável Distingue code shipping (push) de code fetching (pull) Mobilidade Forte Mover componente, incluindo estado de execução Migração: mover objeto inteiro de uma máquina para outra Cloning: iniciar um clone, e colocá-lo no mesmo estado de execução 29 / 33

36 3.5 Migração de Código Gerenciando recursos locais Problema Um objeto usa recursos locais que podem ou não estar disponíveis na máquina alvo. Ligação recurso-máquina (Tipos de recursos) Fixo: recurso não pode ser migrado, como hardware local (p. ex. de criptografia) Colado (Fastened): recurso pode ser movido, mas custa caro Descolado (Unattached): recurso pode ser facilmente migrado junto com objeto (p. ex. cache) 30 / 33

37 31 / 33 Processsos Gerenciando recursos locais 3.5 Migração de Código Ligação processo-recurso Por identificador: o processo requer uma instância específica do recurso (p.ex. um banco de dados específico) Por valor: o processo requer o valor de um recurso (p.ex. um conjunto de entradas do cache) Por tipo: o processo requer apenas que um recurso de tipo específico seja disponível (p.ex. uma tela colorida)

38 3.5 Migração de Código Gerenciando recursos locais Descolado Colado Fixo ID MV (or GR) GR (or MV) GR Valor CP (or MV, GR) GR (or CP) GR Tipo RB (or MV, GR) RB (or GR, CP) RB (or GR) GR = Estabelecer referência global MV = Mover o recurso CP = Copiar o valor do recurso RB = Re-ligar a um recurso disponível localmente 32 / 33

39 33 / 33 Processsos 3.5 Migração de Código Migração em sistemas heterogêneos Problema principal A máqunia alvo pode não ser adequada para executar o código migrado A definição de contexto de processo/thread/processador é altamente dependente do hardware local, sistema operacional e sistema de execução Única solução Usar uma máquina abstrata que é implementada em plataformas diferentes: Linguagens interpretadas, efetivamente tendo sua própria VM VM Virtuais (como discutido anteriormente)

Sistemas Distribuídos: Conceitos e Projeto Threads e Migração de Processos

Sistemas Distribuídos: Conceitos e Projeto Threads e Migração de Processos Sistemas Distribuídos: Conceitos e Projeto Threads e Migração de Processos Francisco José da Silva e Silva Laboratório de Sistemas Distribuídos (LSD) Departamento de Informática / UFMA http://www.lsd.deinf.ufma.br

Leia mais

Processos (Threads,Virtualização e Migração de Código)

Processos (Threads,Virtualização e Migração de Código) Processos (Threads,Virtualização e Migração de Código) Roteiro Processos Threads Virtualização Migração de Código O que é um processo?! Processos são programas em execução. Processo Processo Processo tem

Leia mais

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Processos- Clientes, Servidores, Migração Capítulo 3 Agenda Clientes Interfaces de usuário em rede Sistema X Window Software do lado cliente para

Leia mais

ach 2147 desenvolvimento de sistemas de informação distribuídos

ach 2147 desenvolvimento de sistemas de informação distribuídos ach 2147 desenvolvimento de sistemas de informação distribuídos arquiteturas e processos de sistemas distribuídos Daniel Cordeiro 18 e 20 de abril de 2017 Escola de Artes, Ciências e Humanidades EACH USP

Leia mais

Distributed Systems Principles and Paradigms

Distributed Systems Principles and Paradigms Distributed Systems Principles and Paradigms Maarten van Steen VU Amsterdam, Dept. Computer Science (Tradução e Adaptação Ricardo Anido - IC/Unicamp) Capítulo 04: Comunicação Versão: 20 de março de 2014

Leia mais

SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br

SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br - Aula 5 PROCESSOS 1. INTRODUÇÃO Em sistemas distribuídos é importante examinar os diferentes tipos de processos e como eles desempenham seu papel. O conceito de um processo é originário do campo de sistemas

Leia mais

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Questões Em uma rede de sobreposição (overlay), mensagens são roteadas de acordo com a topologia da sobreposição. Qual uma importante desvantagem

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 6 Estrutura de Sistemas Operacionais Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso

Leia mais

Clientes e Servidores

Clientes e Servidores Clientes e Servidores September 29, 2009 Sumário Definição Localização do Servidor/Objectos Transparência da Distribuição Concorrência Preservação de Estado no Servidor Avarias Adaptação ao Canal de Comunicação

Leia mais

Sistemas Distribuídos: Conceitos e Projeto Estilos Arquitetônicos e Arquitetura Cliente/Servidor

Sistemas Distribuídos: Conceitos e Projeto Estilos Arquitetônicos e Arquitetura Cliente/Servidor Sistemas Distribuídos: Conceitos e Projeto Estilos Arquitetônicos e Arquitetura Cliente/Servidor Francisco José da Silva e Silva Laboratório de Sistemas Distribuídos (LSD) Departamento de Informática /

Leia mais

Prof. Luiz Fernando Bittencourt MC714. Sistemas Distribuídos 2 semestre, 2013

Prof. Luiz Fernando Bittencourt MC714. Sistemas Distribuídos 2 semestre, 2013 MC714 Sistemas Distribuídos 2 semestre, 2013 Virtualização - motivação Consolidação de servidores. Consolidação de aplicações. Sandboxing. Múltiplos ambientes de execução. Hardware virtual. Executar múltiplos

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Processos I: Threads, virtualização e comunicação via protocolos Prof. MSc. Hugo Souza Nesta primeira parte sobre os Processos Distribuídos iremos abordar: Processos e a comunicação

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Gerência de processos Controle e descrição de processos Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Sumário Representação e controle de processos pelo SO Estrutura

Leia mais

Notas da Aula 15 - Fundamentos de Sistemas Operacionais

Notas da Aula 15 - Fundamentos de Sistemas Operacionais Notas da Aula 15 - Fundamentos de Sistemas Operacionais 1. Software de Entrada e Saída: Visão Geral Uma das tarefas do Sistema Operacional é simplificar o acesso aos dispositivos de hardware pelos processos

Leia mais

Cap. 03 Processos. 3.1 Threads. 3.2 Virtualização. 3.3 Clientes. 3.1.1 Introdução às Threads 3.1.2 Threads em Sistemas Distribuídos

Cap. 03 Processos. 3.1 Threads. 3.2 Virtualização. 3.3 Clientes. 3.1.1 Introdução às Threads 3.1.2 Threads em Sistemas Distribuídos Cap. 03 Processos 3.1 Threads 3.1.1 Introdução às Threads 3.1.2 Threads em Sistemas Distribuídos 3.2 Virtualização 3.2.1 Virtualização em Sistemas Distribuídos 3.2.2 Arquiteturas de Máquinas Virtuais 3.3

Leia mais

Arquitetura de Sistemas Operacionais Machado/Maia. Arquitetura de Sistemas

Arquitetura de Sistemas Operacionais Machado/Maia. Arquitetura de Sistemas Arquitetura de Sistemas Operacionais Capítulo 4 Estrutura do Sistema Operacional Cap. 4 Estrutura do Sistema 1 Sistemas Operacionais Pitágoras Fadom Divinópolis Material Utilizado na disciplina Sistemas

Leia mais

Sistemas Operacionais 2014 Introdução. Alexandre Augusto Giron alexandre.a.giron@gmail.com

Sistemas Operacionais 2014 Introdução. Alexandre Augusto Giron alexandre.a.giron@gmail.com Sistemas Operacionais 2014 Introdução Alexandre Augusto Giron alexandre.a.giron@gmail.com Roteiro Sistemas Operacionais Histórico Estrutura de SO Principais Funções do SO Interrupções Chamadas de Sistema

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 07 Arquitetura de Sistemas Operacionais Prof. Maxwell Anderson www.maxwellanderson.com.br Introdução Conceitos já vistos em aulas anteriores: Definição de Sistemas Operacionais

Leia mais

Arquitetura de Computadores. Introdução aos Sistemas Operacionais

Arquitetura de Computadores. Introdução aos Sistemas Operacionais Arquitetura de Computadores Introdução aos Sistemas Operacionais O que é um Sistema Operacional? Programa que atua como um intermediário entre um usuário do computador ou um programa e o hardware. Os 4

Leia mais

Sistemas Operacionais

Sistemas Operacionais UNIVERSIDADE BANDEIRANTE DE SÃO PAULO INSTITUTO POLITÉCNICO CURSO DE SISTEMAS DE INFORMAÇÃO Sistemas Operacionais Notas de Aulas: Tópicos 7 e 8 Estrutura do Sistema Operacional São Paulo 2009 1 Sumário

Leia mais

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO Conceitos básicos e serviços do Sistema Operacional Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO Tipos de serviço do S.O. O S.O.

Leia mais

SISTEMAS OPERACIONAIS. Apostila 03 Estrutura do Sistema Operacional UNIBAN

SISTEMAS OPERACIONAIS. Apostila 03 Estrutura do Sistema Operacional UNIBAN SISTEMAS OPERACIONAIS Apostila 03 Estrutura do Sistema Operacional UNIBAN 1.0 O Sistema Operacional como uma Máquina Virtual A arquitetura (conjunto de instruções, organização de memória, E/S e estrutura

Leia mais

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 2. Cursos de Computação

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 2. Cursos de Computação Cursos de Computação Sistemas Operacionais Prof. M.Sc. Sérgio Teixeira Aula 05 Estrutura e arquitetura do SO Parte 2 Referência: MACHADO, F.B. ; MAIA, L.P. Arquitetura de Sistemas Operacionais. 4.ed. LTC,

Leia mais

Camadas de Serviço de Hardware e Software em Sistemas Distribuídos. Introdução. Um Serviço Provido por Múltiplos Servidores

Camadas de Serviço de Hardware e Software em Sistemas Distribuídos. Introdução. Um Serviço Provido por Múltiplos Servidores Camadas de Serviço de Hardware e Software em Sistemas Distribuídos Arquiteutra de Sistemas Distribuídos Introdução Applications, services Adaptação do conjunto de slides do livro Distributed Systems, Tanembaum,

Leia mais

Sistemas Distribuídos Capítulos 3 e 4 - Aula 4

Sistemas Distribuídos Capítulos 3 e 4 - Aula 4 Sistemas Distribuídos Capítulos 3 e 4 - Aula 4 Aula passada Threads Threads em SDs Processos Clientes Processos Servidores Aula de hoje Clusters de Servidores Migração de Código Comunicação (Cap. 4) Fundamentos

Leia mais

SISTEMAS DISTRIBUIDOS

SISTEMAS DISTRIBUIDOS 1 2 Caracterização de Sistemas Distribuídos: Os sistemas distribuídos estão em toda parte. A Internet permite que usuários de todo o mundo acessem seus serviços onde quer que possam estar. Cada organização

Leia mais

Sistemas Operacionais Aula 03: Estruturas dos SOs. Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com

Sistemas Operacionais Aula 03: Estruturas dos SOs. Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com Sistemas Operacionais Aula 03: Estruturas dos SOs Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com OBJETIVOS Descrever os serviços que um sistema operacional oferece aos usuários e outros sistemas

Leia mais

SISTEMAS OPERACIONAIS

SISTEMAS OPERACIONAIS SISTEMAS OPERACIONAIS Arquitetura Sistemas Operacionais Andreza Leite andreza.leite@univasf.edu.br Plano de Aula Sistemas monolíticos Sistemas em camadas Sistemas micro-núcleo Modelo Cliente-Servidor Máquinas

Leia mais

Introdução. Definição de um Sistema Distribuído (1) Definição de um Sistema Distribuído(2) Metas de Sistemas Distribuídos (2)

Introdução. Definição de um Sistema Distribuído (1) Definição de um Sistema Distribuído(2) Metas de Sistemas Distribuídos (2) Definição de um Sistema Distribuído (1) Introdução Um sistema distribuído é: Uma coleção de computadores independentes que aparecem para o usuário como um único sistema coerente. Definição de um Sistema

Leia mais

Considerações no Projeto de Sistemas Cliente/Servidor

Considerações no Projeto de Sistemas Cliente/Servidor Cliente/Servidor Desenvolvimento de Sistemas Graça Bressan Graça Bressan/LARC 2000 1 Desenvolvimento de Sistemas Cliente/Servidor As metodologias clássicas, tradicional ou orientada a objeto, são aplicáveis

Leia mais

Sistemas Operacionais Aula 06: Threads. Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com

Sistemas Operacionais Aula 06: Threads. Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com Sistemas Operacionais Aula 06: Threads Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com Objetivos Introduzir o conceito de thread Discutir as APIs das bibliotecas de threads Pthreads, Win32

Leia mais

4 Estrutura do Sistema Operacional. 4.1 - Kernel

4 Estrutura do Sistema Operacional. 4.1 - Kernel 1 4 Estrutura do Sistema Operacional 4.1 - Kernel O kernel é o núcleo do sistema operacional, sendo responsável direto por controlar tudo ao seu redor. Desde os dispositivos usuais, como unidades de disco,

Leia mais

Sistemas distribuídos:comunicação

Sistemas distribuídos:comunicação M. G. Santos marcela@estacio.edu.br Faculdade Câmara Cascudo - Estácio de Sá 16 de abril de 2010 Formas de comunicação Produtor-consumidor: comunicação uni-direccional, com o produtor entregando ao consumidor.

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Modelo Cliente-Servidor: Introdução aos tipos de servidores e clientes Prof. MSc. Hugo Souza Iniciando o módulo 03 da primeira unidade, iremos abordar sobre o Modelo Cliente-Servidor

Leia mais

Projeto de Sistemas Distribuídos. Prof. Andrêza Leite andreza.lba@gmail.com

Projeto de Sistemas Distribuídos. Prof. Andrêza Leite andreza.lba@gmail.com Projeto de Sistemas Distribuídos Prof. Andrêza Leite andreza.lba@gmail.com Exemplos de SD Quais podem ser? Ex. de SD: Internet Internet é um conjunto de redes de computadores, de muitos tipos diferentes,

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Soquetes Um soquete é formado por um endereço IP concatenado com um número de porta. Em geral, os soquetes utilizam uma arquitetura cliente-servidor. O servidor espera por pedidos

Leia mais

Sumário. Clientes e Servidores. Localização do Servidor/Objectos. Clientes e Servidores. Definição. Localização do Servidor/Objectos.

Sumário. Clientes e Servidores. Localização do Servidor/Objectos. Clientes e Servidores. Definição. Localização do Servidor/Objectos. Sumário Definição Clientes e Servidores Localização do Servidor/Objectos Segurança Concorrência September 29, 2008 Preservação de Estado no Servidor Avarias Adaptação ao Canal de Comunicação C/S e Arquitectura

Leia mais

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Basedos na Web Capítulo 12 Agenda Arquitetura Processos Comunicação Nomeação Sincronização Consistência e Replicação Introdução

Leia mais

Programação Concorrente Processos e Threads

Programação Concorrente Processos e Threads Programação Concorrente Processos e Threads Prof. Eduardo Alchieri Processos O conceito mais central em qualquer sistema operacional é o processo Uma abstração de um programa em execução Um programa por

Leia mais

SISTEMAS OPERACIONAIS

SISTEMAS OPERACIONAIS SISTEMAS OPERACIONAIS Tópico 4 Estrutura do Sistema Operacional Prof. Rafael Gross prof.rafaelgross@fatec.sp.gov.br FUNÇÕES DO NUCLEO As principais funções do núcleo encontradas na maioria dos sistemas

Leia mais

Faculdades Santa Cruz - Inove. Plano de Aula Base: Livro - Distributed Systems Professor: Jean Louis de Oliveira.

Faculdades Santa Cruz - Inove. Plano de Aula Base: Livro - Distributed Systems Professor: Jean Louis de Oliveira. Período letivo: 4 Semestre. Quinzena: 5ª. Faculdades Santa Cruz - Inove Plano de Aula Base: Livro - Distributed Systems Professor: Jean Louis de Oliveira. Unidade Curricular Sistemas Distribuídos Processos

Leia mais

Comunicação em Sistemas Distribuídos

Comunicação em Sistemas Distribuídos Comunicação em Sistemas Distribuídos Sockets Aplicações Protocolo de Aplicação FTP, SMTP, HTTP, Telnet, SNMP, etc. sockets TCP, UDP IP Data Link Ethernet, Token Ring, FDDI, etc Física Conjunto de APIs

Leia mais

Figura 01 Kernel de um Sistema Operacional

Figura 01 Kernel de um Sistema Operacional 01 INTRODUÇÃO 1.5 ESTRUTURA DOS SISTEMAS OPERACIONAIS O Sistema Operacional é formado por um Conjunto de rotinas (denominado de núcleo do sistema ou kernel) que oferece serviços aos usuários e suas aplicações

Leia mais

6 - Gerência de Dispositivos

6 - Gerência de Dispositivos 1 6 - Gerência de Dispositivos 6.1 Introdução A gerência de dispositivos de entrada/saída é uma das principais e mais complexas funções do sistema operacional. Sua implementação é estruturada através de

Leia mais

Sistemas Operacionais I Parte III Estrutura dos SOs. Prof. Gregorio Perez gregorio@uninove.br 2007. Roteiro. Componentes do Sistema

Sistemas Operacionais I Parte III Estrutura dos SOs. Prof. Gregorio Perez gregorio@uninove.br 2007. Roteiro. Componentes do Sistema Sistemas Operacionais I Parte III Estrutura dos SOs Prof. Gregorio Perez gregorio@uninove.br 2007 Roteiro Serviços Estrutura dos Sistemas Operacionais Funções do Sistema Operacional Chamadas do Sistema

Leia mais

Sistemas Operacionais. Conceitos de um Sistema Operacional

Sistemas Operacionais. Conceitos de um Sistema Operacional Sistemas Operacionais Conceitos de um Sistema Operacional Modo usuário e Modo Kernel Como já vimos são ambientes de execução diferentes no processador Há um conjunto de funções privilegiadas acessadas

Leia mais

Prof. José Maurício S. Pinheiro UniFOA 2009-2

Prof. José Maurício S. Pinheiro UniFOA 2009-2 Tecnologias WEB Virtualização de Sistemas Prof. José Maurício S. Pinheiro UniFOA 2009-2 Conceitos Virtualização pode ser definida como técnica que combina ou divide recursos computacionais para prover

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Aula 3 Msc. Daniele Carvalho Oliveira Doutoranda em Ciência da Computação - UFU Mestre em Ciência da Computação UFU Bacharel em Ciência da Computação - UFJF Processos Um processo

Leia mais

Introdução a Virtualização. Sergio Roberto Charpinel Junior Profa. Roberta Lima Gomes

Introdução a Virtualização. Sergio Roberto Charpinel Junior Profa. Roberta Lima Gomes Introdução a Virtualização Sergio Roberto Charpinel Junior Profa. Roberta Lima Gomes Por que virtualizar? Descentralização de recursos computacionais Cloud computing Plena utilização de recursos físicos

Leia mais

1º Estudo Dirigido. Capítulo 1 Introdução aos Sistemas Operacionais

1º Estudo Dirigido. Capítulo 1 Introdução aos Sistemas Operacionais 1º Estudo Dirigido Capítulo 1 Introdução aos Sistemas Operacionais 1. Defina um sistema operacional de uma forma conceitual correta, através de suas palavras. R: Sistemas Operacionais são programas de

Leia mais

Aplicações. Sistema Operacional Hardware. Os sistemas de computadores são projetados com basicamente 3 componentes: Máquinas Virtuais e Emuladores

Aplicações. Sistema Operacional Hardware. Os sistemas de computadores são projetados com basicamente 3 componentes: Máquinas Virtuais e Emuladores Máquinas Virtuais e Emuladores Marcos Aurelio Pchek Laureano Sistemas de Computadores Os sistemas de computadores são projetados com basicamente 3 componentes: hardware sistema operacional aplicações Sistemas

Leia mais

Máquinas virtuais. Máquina virtual de um processo. Máquinas virtuais (3) Máquina virtual de sistema. Máquinas virtuais (1) VMware para Windows e Linux

Máquinas virtuais. Máquina virtual de um processo. Máquinas virtuais (3) Máquina virtual de sistema. Máquinas virtuais (1) VMware para Windows e Linux System API Máquinas virtuais System ISA (Instruction Set Architecture) Aplicações Chamadas ao sistema Sistema de Operação Hardware User ISA (Instruction Set Architecture) Uma máquina virtual executa software

Leia mais

Sistemas Operacionais. Prof. Pedro Luís Antonelli Anhanguera Educacional

Sistemas Operacionais. Prof. Pedro Luís Antonelli Anhanguera Educacional Sistemas Operacionais Prof. Pedro Luís Antonelli Anhanguera Educacional INTRODUÇÃO Sistema Operacional (S.O.) Aplicativos Formado por um conjunto de rotinas que oferecem serviços aos usuários, às aplicações

Leia mais

Introdução. O que vimos. Infraestrutura de Software. (cont.) História dos Sistemas Operacionais. O que vimos 12/03/2012. Primeira geração: 1945-1955

Introdução. O que vimos. Infraestrutura de Software. (cont.) História dos Sistemas Operacionais. O que vimos 12/03/2012. Primeira geração: 1945-1955 O que vimos Infraestrutura de Software Introdução (cont.) Complexidade do computador moderno, do ponto de vista do hardware Necessidade de abstrações software Sistema computacional em camadas SO como uma

Leia mais

Virtualização Gerencia de Redes Redes de Computadores II

Virtualização Gerencia de Redes Redes de Computadores II Virtualização Gerencia de Redes Redes de Computadores II *Créditos: baseado no material do Prof. Eduardo Zagari Virtualização - Introdução Introduzido nos anos 60 em Mainframes Em 1980 os microcomputadores

Leia mais

Infra-estrutura de Software

Infra-estrutura de Software Infra-estrutura de Software Apresentação Ciência da Computação Professor: Carlos Ferraz Monitoria: em formação Horários: Quartas e Sextas, 08-10h (D-005) Laboratório: G4, normalmente URL: http://www.cin.ufpe.br/~cagf/if677/2013-1

Leia mais

SISTEMAS OPERACIONAIS 2007

SISTEMAS OPERACIONAIS 2007 SISTEMAS OPERACIONAIS 2007 VISÃO GERAL Sumário Conceito Máquina de Níveis Conceituação de SO Componentes do SO Visões do SO Conceito de Sistemas O que se espera de um sistema de computação? Execução de

Leia mais

Universidade Federal de Minas Gerais. Sistemas Operacionais. Aula 23. Sistemas Operacionais Distribuídos

Universidade Federal de Minas Gerais. Sistemas Operacionais. Aula 23. Sistemas Operacionais Distribuídos Aula 23 Distribuídos SOs de Rede Em sistemas operacionais de rede você sabe quando é local e quando é remoto. Assim, o trabalho não muda, com exceção de comandos para acesso remoto: - telnet - ftp - etc.

Leia mais

Redes. Pablo Rodriguez de Almeida Gross

Redes. Pablo Rodriguez de Almeida Gross Redes Pablo Rodriguez de Almeida Gross Conceitos A seguir serão vistos conceitos básicos relacionados a redes de computadores. O que é uma rede? Uma rede é um conjunto de computadores interligados permitindo

Leia mais

Sistemas Distribuídos Processos I. Prof. MSc. Hugo Souza

Sistemas Distribuídos Processos I. Prof. MSc. Hugo Souza Sistemas Distribuídos Processos I Prof. MSc. Hugo Souza Até agora vimos a organização como um todo dos SDS, com o mapeamento estrutural e suas devidas características descritas em elementos, regras, conceitos,

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos LICENCIATURA EM COMPUTAÇÃO Prof. Adriano Avelar Site: www.adrianoavelar.com Email: eam.avelar@gmail.com O que veremos hoje... Evolução Histórica Motivação Conceitos Características

Leia mais

SISTEMAS OPERACIONAIS. Maquinas Virtuais e Emuladores

SISTEMAS OPERACIONAIS. Maquinas Virtuais e Emuladores SISTEMAS OPERACIONAIS Maquinas Virtuais e Emuladores Plano de Aula Máquinas virtuais Emuladores Propriedades Benefícios Futuro Sistemas de Computadores Os sistemas de computadores são projetados com basicamente

Leia mais

Infra-Estrutura de Software. Introdução. (cont.)

Infra-Estrutura de Software. Introdução. (cont.) Infra-Estrutura de Software Introdução (cont.) O que vimos Complexidade do computador moderno, do ponto de vista do hardware Necessidade de abstrações software Sistema computacional em camadas SO como

Leia mais

Resumo até aqui. Gerenciamento Proteção Compartilhamento. Infra-estrutura de Software

Resumo até aqui. Gerenciamento Proteção Compartilhamento. Infra-estrutura de Software Resumo até aqui Complexidade do computador moderno, do ponto de vista do hardware Necessidade de abstrações software Sistema computacional em camadas SO como uma máquina estendida abstrações SO como um

Leia mais

Capítulo 8. Sistemas com Múltiplos Processadores. 8.1 Multiprocessadores 8.2 Multicomputadores 8.3 Sistemas distribuídos

Capítulo 8. Sistemas com Múltiplos Processadores. 8.1 Multiprocessadores 8.2 Multicomputadores 8.3 Sistemas distribuídos Capítulo 8 Sistemas com Múltiplos Processadores 8.1 Multiprocessadores 8.2 Multicomputadores 8.3 Sistemas distribuídos 1 Sistemas Multiprocessadores Necessidade contínua de computadores mais rápidos modelo

Leia mais

Cap 03 - Camada de Aplicação Internet (Kurose)

Cap 03 - Camada de Aplicação Internet (Kurose) Cap 03 - Camada de Aplicação Internet (Kurose) 1. Qual a diferença entre um Programa de computador e um Processo dentro do computador? R. Processo é um programa que está sendo executado em uma máquina/host,

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Carlos Ferraz cagf@cin.ufpe.br Tópicos da Aula Apresentação do curso Introdução Definição de sistemas distribuídos Exemplo Vantagens e desvantagens Convergência digital Desafios Visão

Leia mais

Sistemas Operacionais 1/66

Sistemas Operacionais 1/66 Sistemas Operacionais 1/66 Roteiro Máquinas virtuais Emuladores Propriedades Benefícios Futuro 2/66 Sistemas de Computadores Os sistemas de computadores são projetados com basicamente 3 componentes: hardware

Leia mais

Sistemas Distribuídos. Ricardo Ribeiro dos Santos ricrs@ec.ucdb.br

Sistemas Distribuídos. Ricardo Ribeiro dos Santos ricrs@ec.ucdb.br Sistemas Distribuídos Ricardo Ribeiro dos Santos ricrs@ec.ucdb.br Curso de Engenharia de Computação UCDB Agosto/2003 Tópicos Conceitos de HW em SD Multiprocessadores e Multicomputadores Conceitos de SW

Leia mais

Sistemas Distribuídos 59. Sistemas Distribuídos 61. "Receive não-bloqueante:

Sistemas Distribuídos 59. Sistemas Distribuídos 61. Receive não-bloqueante: Comunicação entre processos! Memória Compartilhada: " os processo compartilham variáveis e trocam informações através do uso dessas variáveis compartilhadas COMUNICAÇÃO ENTRE PROCESSOS P1 Área Compartilhda!

Leia mais

Sistemas Operacionais. Roteiro. Sistemas de Computadores. Os sistemas de computadores são projetados com basicamente 3 componentes: Marcos Laureano

Sistemas Operacionais. Roteiro. Sistemas de Computadores. Os sistemas de computadores são projetados com basicamente 3 componentes: Marcos Laureano Sistemas Operacionais Marcos Laureano 1/66 Roteiro Máquinas virtuais Emuladores Propriedades Benefícios Futuro 2/66 Sistemas de Computadores Os sistemas de computadores são projetados com basicamente 3

Leia mais

Fundamentos de Sistemas Computacionais Introdução

Fundamentos de Sistemas Computacionais Introdução Fundamentos de Sistemas Computacionais Introdução Prof. Eduardo Alchieri Sistema Computacional Hardware Software Usuários Um ou mais processadores, memória, discos, impressoras, teclado, mouse, monitor,

Leia mais

SO Sistemas Operacionais

SO Sistemas Operacionais GOVERNO DO ESTADO DO RIO DE JANEIRO FUNDAÇÃO DE APOIO A ESCOLA TÉCNICA ESCOLA TÉCNICA ESTADUAL REPÚBLICA SO Sistemas Operacionais Curso de Informática ETE REPÚBLICA - Rua Clarimundo de Melo, 847, Quintino

Leia mais

Sistemas Operacionais Arquitetura e organização de sistemas operacionais: Uma visão estrutural hardware & software. Prof. MSc.

Sistemas Operacionais Arquitetura e organização de sistemas operacionais: Uma visão estrutural hardware & software. Prof. MSc. Sistemas Operacionais Arquitetura e organização de sistemas operacionais: Uma visão estrutural hardware & software Prof. MSc. Hugo Souza Continuando nossas aulas relativas ao Módulo 1, veremos a seguir

Leia mais

Metas de um Sistema Distribuído

Metas de um Sistema Distribuído Metas de um Sistema Distribuído Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do

Leia mais

Infraestrutura de Hardware. Memória Virtual

Infraestrutura de Hardware. Memória Virtual Infraestrutura de Hardware Memória Virtual Perguntas que Devem ser Respondidas ao Final do Curso Como um programa escrito em uma linguagem de alto nível é entendido e executado pelo HW? Qual é a interface

Leia mais

Sistemas Operacionais 2014 Sistemas Distribuídos. Alexandre Augusto Giron

Sistemas Operacionais 2014 Sistemas Distribuídos. Alexandre Augusto Giron Sistemas Operacionais 2014 Sistemas Distribuídos Alexandre Augusto Giron ROTEIRO Conceitos Hardware/Software para Sistemas Distribuídos Estrutura de Rede Objetos Distribuídos Sistemas de Arquivos Distribuídos

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Aula 4 Msc. Daniele Carvalho Oliveira Doutoranda em Ciência da Computação - UFU Mestre em Ciência da Computação UFU Bacharel em Ciência da Computação - UFJF Migração de Código Em

Leia mais

Padrões Arquiteturais e de Integração - Parte 1

Padrões Arquiteturais e de Integração - Parte 1 1 / 58 - Parte 1 Erick Nilsen Pereira de Souza T017 - Arquitetura e Design de Aplicações Análise e Desenvolvimento de Sistemas Universidade de Fortaleza - UNIFOR 11 de fevereiro de 2015 2 / 58 Agenda Tópicos

Leia mais

Sistemas Distribuídos. Introdução. Edeyson Andrade Gomes. www.edeyson.com.br

Sistemas Distribuídos. Introdução. Edeyson Andrade Gomes. www.edeyson.com.br Sistemas Distribuídos Introdução Edeyson Andrade Gomes www.edeyson.com.br SUMÁRIO Definições Características Desafios Vantagens Desvantagens 2 Definições DEFINIÇÕES Um sistema distribuído é uma coleção

Leia mais

Capítulo 8 - Aplicações em Redes

Capítulo 8 - Aplicações em Redes Capítulo 8 - Aplicações em Redes Prof. Othon Marcelo Nunes Batista Mestre em Informática 1 de 31 Roteiro Sistemas Operacionais em Rede Modelo Cliente-Servidor Modelo P2P (Peer-To-Peer) Aplicações e Protocolos

Leia mais

Processes. Chapter 3 PROCESSOS. O capitulo anterior concentrou-se na comunicação em Sistemas Distribuídos.

Processes. Chapter 3 PROCESSOS. O capitulo anterior concentrou-se na comunicação em Sistemas Distribuídos. Processes Chapter 3 PROCESSOS O capitulo anterior concentrou-se na comunicação em Sistemas Distribuídos. Essa comunicação acontece entre processos e eles são fundamentais em SDs. O conceito de processos

Leia mais

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP) Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,

Leia mais

Sistemas Distribuídos RPC x RMI. Edeyson Andrade Gomes www.edeyson.com.br

Sistemas Distribuídos RPC x RMI. Edeyson Andrade Gomes www.edeyson.com.br Sistemas Distribuídos RPC x RMI Edeyson Andrade Gomes www.edeyson.com.br Roteiro da Aula Chamada Remota a Procedimento Definição Passagem de Parâmetros STUBS Semântica de Falhas 2 RPC Chamada Remota a

Leia mais

Capítulo 8 Arquitetura de Computadores Paralelos

Capítulo 8 Arquitetura de Computadores Paralelos Capítulo 8 Arquitetura de Computadores Paralelos Necessidade de máquinas com alta capacidade de computação Aumento do clock => alta dissipação de calor Velocidade limitada dos circuitos => velocidade da

Leia mais

UNIVERSIDADE. Sistemas Distribuídos

UNIVERSIDADE. Sistemas Distribuídos UNIVERSIDADE Sistemas Distribuídos Ciência da Computação Prof. Jesus José de Oliveira Neto Comunicação Inter-Processos Sockets e Portas Introdução Sistemas distribuídos consistem da comunicação entre processos

Leia mais

Projeto de Sistemas Distribuídos. Prof. Andrêza Leite andreza.lba@gmail.com

Projeto de Sistemas Distribuídos. Prof. Andrêza Leite andreza.lba@gmail.com Projeto de Sistemas Distribuídos Prof. Andrêza Leite andreza.lba@gmail.com Agenda Introdução Exemplos de Sistemas Distribuídos Compartilhamento de Recursos e a Web Principais Desafios para a Implementação

Leia mais

Prof. Marcelo de Sá Barbosa SISTEMAS DISTRIBUIDOS

Prof. Marcelo de Sá Barbosa SISTEMAS DISTRIBUIDOS Prof. Marcelo de Sá Barbosa SISTEMAS DISTRIBUIDOS Objetos distribuídos e invocação remota Introdução Comunicação entre objetos distribuídos Chamada de procedimento remoto Eventos e notificações Objetos

Leia mais

Arquitetura de Sistemas Distribuídos. Introdução a Sistemas Distribuídos

Arquitetura de Sistemas Distribuídos. Introdução a Sistemas Distribuídos Introdução a Sistemas Distribuídos Definição: "Um sistema distribuído é uma coleção de computadores autônomos conectados por uma rede e equipados com um sistema de software distribuído." "Um sistema distribuído

Leia mais

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 1. Cursos de Computação

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 1. Cursos de Computação Cursos de Computação Sistemas Operacionais Prof. M.Sc. Sérgio Teixeira Aula 05 Estrutura e arquitetura do SO Parte 1 Referência: MACHADO, F.B. ; MAIA, L.P. Arquitetura de Sistemas Operacionais. 4.ed. LTC,

Leia mais

JXTA. Alessandro Vasconcelos Ferreira de Lima. avfl@cin.ufpe.br

JXTA. Alessandro Vasconcelos Ferreira de Lima. avfl@cin.ufpe.br JXTA Alessandro Vasconcelos Ferreira de Lima Roteiro Motivação Introdução Arquitetura de JXTA Elementos de JXTA Os Protocolos Comparações e Desvantagens Conclusão Motivação Limitações do Modelo Cliente

Leia mais

Comparação SDs X Scs

Comparação SDs X Scs Prof. Alexandre Lima Sistemas Distribuídos Cap 9 1/7 Comparação SDs X Scs Distribuição inerente Economia Velocidade Confiabilidade Crescimento incremental Descrição Algumas aplicações envolvem máquinas

Leia mais

Caracterização de Sistemas Distribuídos

Caracterização de Sistemas Distribuídos Aula 1 Caracterização de Sistemas Distribuídos Prof. Dr. João Bosco M. Sobral mail: bosco@inf.ufsc.br - página: http://www.inf.ufsc.br/~bosco Rodrigo Campiolo mail: rcampiol@inf.ufsc.br - página: http://ww.inf.ufsc.br/~rcampiol

Leia mais

Sistemas Operativos. Threads. 3º ano - ESI e IGE (2011/2012) Engenheiro Anilton Silva Fernandes (afernandes@unipiaget.cv)

Sistemas Operativos. Threads. 3º ano - ESI e IGE (2011/2012) Engenheiro Anilton Silva Fernandes (afernandes@unipiaget.cv) Sistemas Operativos Threads 3º ano - ESI e IGE (2011/2012) Engenheiro Anilton Silva Fernandes (afernandes@unipiaget.cv) Dos Processos para os Threads O conceito de thread foi introduzido na tentativa de

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Software em Sistemas Distribuídos Aplicativo ou Sistema Operacional Sincronismo Interação Controles Um sistema operacional moderno provê dois serviços fundamentais para o usuário

Leia mais

Introdução à Ciência da Computação

Introdução à Ciência da Computação Faculdade de Ciências e Tecnologia Departamento de Matemática e Computação Bacharelado em Ciência da Computação Introdução à Ciência da Computação Aula 05 Rogério Eduardo Garcia (rogerio@fct.unesp.br)

Leia mais