SINCRONIZAÇÃO ATRAVÉS DO CLOCK

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

Download "SINCRONIZAÇÃO ATRAVÉS DO CLOCK"

Transcrição

1 SINCRONIZAÇÃO ATRAVÉS DO CLOCK _ NOTAS DE AULA _ Prof. Tiago Garcia de Senna Carneiro DECOM/UFOP Em geral, os algoritmos distribuídos têm as seguintes propriedades 1) As informações relevantes estão espalhadas entre diversas máquinas. 2) Os processos tomam decisões baseados exclusivamente nas informações disponíveis no local onde eles estão rodando. 3) Deve ser evitada a qualquer custo a existência de um único ponto de falha. 4) Não existe nenhuma fonte de clock comum, ou qualquer outra fonte precisa de tempo global. Os três primeiros tópicos listados dizem respeito à impossibilidade de se coletar informações em outros pontos para processamento local. Por exemplo, para fazer alocação de recursos, atribuindo dispositivos de entrada/saída a processos de forma a evitar deadcloks, não é aceitável que se envie todas as requisições a um único processogerente, que teria a responsabilidade de examinar todas as requisições e atendê-las ou não, baseado em informações constantes de suas tabelas. Fica evidente que nos sistemas de maior porte, este tipo de solução coloca uma carga muito pesada no processo-gerente. Além do mais um único ponto de falha torna este sistema inconsistente. Pensando por um momento sobre as implicações da falta do tempo global, vamos nos valer do exemplo do programa make do UNIX, e extrair dele algumas conclusões. Normalmente os programas grandes em UNIX são divididos em vários arquivos-fonte, de forma que uma alteração no código em geral só exige a recompilação de um arquivofonte, em vez de obrigar que todo o programa seja recompilado. Se determinado programa constar de 100 arquivos-fonte, o fato de só ser necessária a recompilação de um único arquivo quando de uma modificação no código aumenta em muito a produtividade da equipe de programação. A idéia por trás é a seguinte se um arquivo imput.c foi alterado em um instante 1 e seu arquivo objeto no instante 0.9, fica claro que o arquivo fonte deve ser

2 recompilado. Agora imagine o que poderia ocorrer em um sistema distribuído no qual não houvesse uma fonte única de geração de tempo. Suponha que output.o tenha associado a ele o valor de e que logo depois output.c tenha sido modificado, recebendo o valor de em função do clock nesta máquina ser um pouco mais lento, conforme mostrado na Fig Neste caso o programa make não vai chamar o compilador para recompilar o arquivo-fonte, fazendo com que o programa executável resultante seja uma mistura de arquivos-objeto obtidos de arquivos-fonte velhos e novos. Ele provavelmente não vai funcionar, e o programador vai ficar maluco tentando descobrir o que há de errado com o seu código. A questão é a seguinte: é possivel sincronizar o tempo em um sistema distribuido? Clocks Lógicos O termo exato para designá-los deveria ser temporizador. Em geral, um temporizador usado em computadores é uma máquina baseada em um cristal de quartzo absolutamente preciso. Quando tensionados, os cristais de quartzo oscilam em uma freqüência muito bem definida, que vai depender do tipo do cristal, de como ele foi cortado, e da pressão a qual ele está submetido. Associado a cada cristal estão dois registradores, um contador e um de retenção. Cada oscilação do cristal decrementa o contador de uma unidade. Quando o contador chega a zero, é gerada uma interrupção, e o contador é recarregado com o valor armazenado no registrador de retenção. Desta forma é possível programar-se um temporizador para gerar interrupções a uma taxa de por exemplo, 60 vezes por segundo, ou em qualquer outra freqüência escolhida. Este tipo de interrupção é denominado interrupção de tempo. Tão logo foram introduzidos os sistemas com mais de um processador, cada um deles com seu próprio clock, a situação mudou bastante. Apesar da freqüência de cada oscilador ser bastante estável, não é possível garantir que todos os cristais de todos os processadores estejam oscilando exatamente na mesma freqüência. Na prática, quando um sistema tem n processadores, todos os n cristais estão oscilando em freqüências ligeiramente diferentes uns dos outros, fazendo com que os clocks (software) pouco a pouco percam o sincronismo, e forneçam valores diferentes quando lidos pelos processos. Esta diferença nos valores de tempo é denominada escorregamento do clock. Como conseqüência do escorregamento, os programas que considerarem como corretos e independentes de onde foram gerados, os tempos associados a arquivos, processos, ou mensagens poderão vir a falhar miseravelmente, como no exemplo acima com o programa make. Lamport observou que o sincronismo do clock não precisa ser absoluto. Se dois processos não interagem, não é necessário que seus clocks estejam sincronizados

3 pois a perda da sincronização não vai ser observada, e como tal não poderá causar nenhum tipo de problema. Além do mais, Lamport deixou claro que o que realmente importa não é que todos os processos estejam de acordo sobre o valor exato do tempo em determinado momento, mas sobre a ordem na qual eventos venham a ocorrer. No exemplo do programa make, o que conta é se input.c é mais antigo ou mais recente que input.o, não o momento exato em que cada um foi criado. Para muitos propósitos é suficiente que todas as máquinas estejam de acordo a respeito de determinada marcação de tempo, não sendo porém importante que este tempo coincida com o tempo real, anunciado no rádio ou na televisão. Para que o programa make rode com sucesso, basta que todas as máquinas estejam de acordo com o fato de que são 10:00 horas, apesar do relógio atômico do Observatório Nacional estar marcando 10:02:30 horas, conforme anunciado a cada minuto pela Rádio Relógio Federal. Desta forma, para certas classes de algoritmos, o que vale é a consistência interna dos clocks, e não o quanto eles estão próximos do tempo real. No âmbito de tais algoritmos é usar referir-se aos clocks como clocks lógicos. Pode acontecer de haver uma restrição adicional que exija que os clocks não somente sejam os mesmos, mas que também não possam diferir do tempo real mais que um determinado valor. Neste caso, os clocks são chamados de clocks físicos. Lamport definiu uma relação denominada acontecimento-anterioridade. A expressão a b é lida como a acontece antes de b e significa que todos os processos concordam com o fato de primeiro acontecer o evento a e depois ocorrer o evento b. A relação acontecimento-anterioridade pode ser observada diretamente em duas situações: 1) Se a e b são eventos no mesmo processo, e se a ocorre antes de b, então a b é verdadeira. 2) Se a é o evento de uma mensagem sendo enviada para um processo, e b é evento da mesma mensagem sendo recebida por um outro processo, então a relação a b também é verdadeira. Observe que uma mensagem não pode ser recebida antes de ter sido enviada, pois ela demora um tempo finito para chegar ao destino. A relação acontecimento-anterioridade é uma relação transitiva, de foram que se a b e b c, então a c. Se dois eventos x e y acontecerem em processos diferentes e que não trocam mensagens (nem mesmo indiretamente, através de um terceiro processo), então nem x y nem y x são verdadeiros. Tais eventos são considerados concorrentes, o que simplesmente significa que nada pode ser dito (ou nada precisa ser dito) a respeito de quanto tais eventos ocorrerem, ou sobre qual deles ocorreu antes e qual ocorreu depois. Tudo o que precisamos é de uma forma de medida de tempo de tal maneira que para cada evento a possamos atribuir um valor C (a), correspondente a um instante de

4 tempo, com o qual todos os processos concordem. Esses valores devem ser tais que se a b então C(a) < C(b). Desta forma, podemos apresentar novamente as duas condições anteriores, definindo-as de outro modo. Se a e b são dois eventos dentro do mesmo processo e a ocorre antes de b, então C(a) < C(b). Da mesma maneira, se a é o envio de uma mensagem para um processo, e b é a recepção desta mensagem por outro processo, então devem ser atribuídos valores a C(a) e C(b) de maneira que C(a) < C(b). Além disso, o tempo medido pelo clock, C, deve ser sempre crescente, nunca decrescente. Correções nos valores do clock podem ser feitas adicionando-se um valor positivo ao valor corrente do clock, nunca subtraindo. (Veja fig.11.2 página 318 do livro texto) Existe um algoritmo, proposto por Lamport para atribuir tempos a eventos. Considere os três processos. Tais processos rodam em máquinas diferentes, cada uma delas com seu próprio clock, rodando em velocidades que não são necessariamente as mesmas. Em um mesmo intervalo de tempo real, houve seis interrupções de clock para o processo 0, oito para o processo 1, e 10 para o processo 2. vale observar que todos os três clocks oscilam a uma velocidade constante, apenas as taxas de oscilação são diferentes, devido a diferenças em cada um dos cristais. No tempo 6, o processo 0 manda uma mensagem A para o processo 1. o tempo que esta mensagem leva para chegar ao destino vai depender do clock que estivermos tomando como base. De qualquer forma, o clock do processo 1 estará marcando 16 quando a mensagem chegar. Se esta levar a informação de que foi despachada no tempo 6, o processo 1 acreditará que ela demorou 10 unidades de tempo para percorrer seu caminho. Este valor certamente é um valor plausível. De acordo com o mesmo raciocínio, a mensagem B levou 16 unidades de tempo para sair da máquina onde roda o processo 1 e chegar à do processo 2, novamente um valor aceitável. Agora vem a parte estranha do procedimento. A mensagem C, enviada do processo 2 para o processo 1 deixa a máquina do processo 2 no tempo 60 e chega à máquina do processo 1 no tempo 56. Da mesma forma, a mensagem D, do processo 1 para o processo 0 sai no instante 64 e chega no instante 54. Claramente isto não é possível. Esta situação é que precisa ser evitada. A solução proposta por Lamport segue diretamente a relação acontecimentoanterioridade. Uma vez que C deixa a sua máquina no tempo 60, ele deve chegar ao destino no tempo 61 ou mais tarde. Desta forma, cada mensagem leva consigo o instante de tempo a transmissão de acordo com o clock do transmissor. Quando a mensagem chega, e o tempo do receptor indica um tempo anterior ao que ela traz consigo, o receptor adianta seu clock, fazendo-o tornar-se uma unidade maior que o instante da transmissão. Com uma pequena modificação, este algoritmo cumpre os requisitos necessários para a implementação do tempo global. A modificação é que, entre dois eventos, o clock precisa rodar pelo menos uma vez. Se um processo envia ou recebe uma mensagem em rápida sucessão, ele precisa avançar seu clock (no mínimo) de uma unidade entre os dois eventos. Em algumas situações, mais uma característica é necessária: dois eventos não

5 podem nunca ocorrer exatamente no mesmo instante de tempo. Para alcançar este objetivo, pode-se juntar o número do processo no qual o evento ocorre aos bits de mais baixa ordem do tempo, separados pelo ponto decimal. Então, se acontecerem dois eventos nos processos 1 e 2 no tempo 40, o tempo do primeiro passa a ser 40,1s e o do segundo 40,2. Usando este método, passamos a ter uma forma de atribuir tempos a todos os eventos em um sistema distribuído, sujeita às seguintes condições: 1) Se a ocorrer antes de b no mesmo processo, então C(a) < C(b). 2) Se a e b são o envio e a recepção de uma mensagem, então C(a) < C(b). 3) Para quaisquer eventos a e b, C(a) C(b). Clocks Físicos Em alguns sistemas, como, por exemplo, os de tempo real, o conhecimento do instante de tempo real é muito importante. Para tais sistemas são necessários clocks físicos externos. Por motivos de eficiência e de redundância, considera-se desejável a existência de mais de um clock externo, o que nos causa dois problemas: (1) como sincronizá-los com o clock de tempo real, (2) como sincronizar estes clocks externos entre si. O evento do Sol alcançando seu ponto de maio altura aparente no céu é chamado de trânsito do Sol. Este evento ocorre aproximadamente no meio de cada dia. O intervalo entre dois trânsitos consecutivos do Sol é chamado dia solar. Com a invenção do relógio atômico em 1948, tornou-se possível medir o tempo com um grau de precisão muito maior, e de maneira independente das condições vigentes no globo terrestre e na atmosfera que o cerca, através da contagem das transições do átomo do céssio 133. Os físicos tomaram dos astrônomos a tarefa de medir o tempo, e definiram o segundo como o tempo necessário a que o átomo de césio 133 faça exatamente transições. O BIH Bureau International Del Heure - faz uma média destas informações e produz o Tempo Atômico Internacional, abreviado por TAI. O BIH introduziu os segundos bissextos (leap) sempre que a discrepância entre o tempo solar e o TAI ultrapassar a casa dos 800 ms. Esta correção deu origem a um sistema de tempo baseado em segundos TAI constantes, mas que permanecem em fase com o movimento aparente do Sol. Este sistema de tempo é denominado Tempo Universal Coordenado, abreviado como UTC.

6 Para tornar o UTC acessível às pessoas que por qualquer motivo venham a precisar dele, o National Institute of Standard Time (NIST) opera uma estação de rádio em ondas curtas com o prefixo WWV, a partir de Fort Collins, Colorado. A WWV envia em broadcast um pulso no início de cada segundo UTC. A precisão fornecida pela WWV é de mais ou menos 1 ms, mas devido às condições randômicas da atmosfera que podem alterar o comprimento do sinal, na prática a precisão é em torno de mais ou menos 10 ms. Para se obter o tempo UTC, seja por meio das transmissões em ondas curtas ou das emissões dos satélites, é necessária a precisa determinação das posições relativas entre o transmissor e o receptor, de maneira a compensar o retardo de propagação do sinal. Existem receptores de rádio disponíveis comercialmente para captar os sinais enviados pela WWV, pelo satélite GEOS, e por outras fontes do tempo UTC. Seu custo varia de alguns poucos milhares de dólares a dezenas de milhares de dólares, dependendo da fonte dos sinais, sendo tão mais cara quanto mais confiável for a fonte. O UTC também pode ser obtido de forma mais econômica, porém menos precisa, através de uma linha telefônica conectada à sede do NIST em Fort Collins. Neste caso, também é necessária uma correção, em função da velocidade do modem e do caminho percorrido pelo sinal desde o emissor até o destino. Tal correção introduz um grau de incerteza no valor do tempo obtido, tornando muito difícil a obtenção de tempos altamente precisos. Algoritmos para Sincronização de Clock Se uma das máquinas de determinado sistema distribuído possuir um receptor WWV, o problema resume-se a manter todas as demais máquinas do sistema em sincronismo com ela. Se nenhuma máquina do sistema possuir o receptor, então cada uma delas deve cuidar de seu próprio tempo, e o problema passa a ser o de manter tais máquinas juntas, tanto quanto possível. Assume-se, em primeiro lugar, que todas as máquinas têm um temporizador que causa uma interrupção H vezes por segundo. Quando este temporizador expira, a rotina de manipulação da interrupção adiciona uma unidade a um clock mantido por software, que controla o número de interrupções ocorridas a partir de um determinado tempo passado, conhecido por todas as máquinas do sistema. Nosso sistema de sincronização está longe do ideal por uma série de motivos. O principal deles é que os temporizadores reais não geram exatamente H interrupções em um segundo. Teoricamente, um temporizador com H = 60 deveria gerar interrupções por hora. Na prática, os modernos chips temporizadores apresentam um erro relativo de mais ou menos 10-5, o que significa que uma determinada máquina pode obter entre e interrupções por hora.

7 Algoritmo de Cristian Um algoritmo projetado para rodar em sistemas que tenham uma máquina como o receptor WWV, onde o problema é fazer com todas as outras máquinas se sincronizem com esta. Vamos chamar a máquina com o receptor WWV de servidor de tempo. O algoritmo em análise é baseado no trabalho de Cristian (1989). Periodicamente, cada máquina envia uma mensagem para o servidor de tempo, perguntando pelo tempo corrente. A máquina onde roda o servidor de tempo responde o mais rápido possível, com uma mensagem contendo o tempo corrente, C UTC. Este algoritmo tem dois problemas, um maior e outro menor. O maior é que o tempo nunca pode andar para trás. Se o clock do transmissor estiver adiantado, o valor de C UTC será menor do que o valor corrente de C na máquina transmissora. A adoção pura e simples do valor de C UTC por tal máquina pode causar sérios problemas, tal como o de um arquivo-objeto compilado imediatamente após a mudança do clock passar a ter um tempo associado anterior ao do arquivo-fonte que foi modificado imediatamente antes da mudança. A conclusão a que se chega é que tal mudança deve ser feita gradativamente. Uma das maneiras de implementá-la está descrita a seguir. Suponha que o temporizador seja programado para gerar 100 interrupções por segundo. Em geral, cada interrupção adicionam-se 10 ms ao tempo corrente. Quando houver necessidade de atrasar o tempo corrente, a rotina de interrupção pode adicionar apenas 9 ms de cada vez, até chegar ao valor necessário à correção. O outro problema citado, menos importante que o que acabamos de descrever, é que a consulta ao servidor de tempo, e o conseqüente envio da resposta por parte deste servidor, gasta um tempo não-nulo. Pior ainda é o fato deste retardo poder vir a ser grande, variando com a carga de trabalho da rede. A forma escolhida por Cristina para tratar este assunto foi a de tentar medir este tempo. É muito simples para a máquinacliente determinar precisamente o tempo gasto desde o envio da solicitação ao servidor de tempo, até o recebimento da resposta. Tanto o instante do início da contagem dos tempos, T 0, quanto o instante do final da contagem, T 1, são medidos usando o mesmo clock, de forma que o intervalo determinado é relativamente preciso, mesmo no caso de o clock do transmissor estar bastante defasado do UTC. Algoritmo de Berkely No UNIX de Berkely, foi adotada a estratégia exatamente oposta a esta (Gusella e Zatti, 1989). Nela, o servidor de tempo é uma entidade ativa que consulta periodicamente cada uma das máquinas do sistema a fim de saber o tempo corrente em

8 cada uma delas. Baseado nas respostas, ele calcula um tempo médio, e informa a todas as outras máquinas para avançar ou atrasar seus clocks, tornando-os iguais ao tempo médio calculado. Este método é adequado aos sistemas onde nenhuma máquina tem o receptor WWV. O ajuste do tempo do servidor de tempo deve ser feito periodicamente pelo operador, de forma manual. Neste modelo ainda persistem os problemas apresentados no algoritmo de Cristian. Algoritmos Baseados na Média Todos modelos acima foram algoritmos altamente centralizados. Agora vamos examinar alguns algoritmos descentralizados. Existe uma classe de algoritmos descentralizados para sincronização do clock que trabalham dividindo o tempo em intervalos fixos de ressincronização. O i-ésimo intervalo começa em T 0 + ir e vai até o T 0 + (i + 1)R, onde T 0 é um instante de tempo do conhecimento de todas as máquinas, e R um parâmetro do sistema. No início de cada intervalo, cada uma das máquinas envia em broadcast uma mensagem contendo seu tempo corrente. Pelo fato de o clock nas máquinas do sistema não ser exatamente o mesmo, estas mensagens em broadcast não vão ser emitidas todas ao mesmo tempo. Depois de determinada máquina ter enviado sua mensagem, ela deve inicializar um temporizador local para coletar todas as outras mensagens em broadcast que chegarem durante um intervalo de tempo S. Quando todas as mensagens forem recebidas, ela deve rodar um algoritmo para calcular o novo tempo corrente, baseado nos tempos informados pelas demais máquinas. Tal algoritmo, em sua implementação mais simples, calcula a média dos valores dos tempos correntes de todas as máquinas da rede. Uma outra variação é tentar corrigir cada mensagem, adicionando-lhe um valor estimado do tempo de propagação a partir da fonte. Esta estimativa pode ser feita com base na topologia da rede, ou medindo o tempo gasto para que mensagens de teste ecoem. Sistemas com Várias Fontes Externas de Tempo Para os sistemas onde é necessária uma sincronização altamente precisa com o UTC, é possível equipar o sistema com diversos receptores para WWV, GEOS, ou outras fontes UTC. No entanto, devido à imprecisão inerente à própria fonte de tempo, bem

9 como às flutuações sofridas pelo sinal em seu caminho, o melhor que o sistema operacional pode fazer nestes casos é estabelecer uma faixa (um intervalo de tempo), dentro do qual o UTC deve situar-se. Em geral, as várias fontes de tempo vão produzir intervalos diferentes, o que vai fazer com que as máquinas ligadas a cada uma delas tenham que entrar em acordo a respeito do assunto. Uma forma de se chegar a tal acordo é fazer com que cada máquina ligada a fonte UTC envie periodicamente uma mensagem em broadcast, informando seu intervalo às demais. Tais mensagens podem ser enviadas, por exemplo, no exato momento do início de cada minuto UTC. Observe que pelo fato das máquinas não estarem sincronizadas, nenhuma delas vai receber os pacotes com as informações do intervalo de tempo instantaneamente. Pior do que isto, o retardo entre a transmissão e a recepção depende da distância de cabo e do número de gateways que o pacote tem que atravessar, parâmetros estes que variam com cada par (fonte UTC, processador). Outros fatores também podem ter influência na precisão deste método, a exemplo dos retardos devido às colisões ocorridas quando várias máquinas tentam transmitir informações no mesmo instante em uma rede Ethernet. Assim, mesmo que dois processadores consigam ajustar seus clocks para o UTC correto, depois de poucos segundos, estes clocks não serão mais os mesmos em função do escorregamento verificado entre eles. Outra técnica é a denominada média local. Suponha que as máquinas de determinado sistema distribuído possam ser organizadas, pelo menos conceitualmente, se não for possível organizá-las fisicamente, de acordo com determinado padrão, tal como um anel ou uma grade. Periodicamente, em intervalos menores que os das atualizações do UTC, cada máquina pode trocar informações de tempo com seus vizinhos na estrutura, e ajustar seu clock tomando a média das informações obtidas, considerando seu próprio clock no cálculo da média. A conclusão a que chegamos é a de que manter os clocks de um sistema distribuídos sincronizados por 5 ou 10 ms UTC é uma tarefa bastante dispendiosa e nãotrivial.

Sistemas Distribuídos. Ricardo Ribeiro dos Santos

Sistemas Distribuídos. Ricardo Ribeiro dos Santos Sistemas Distribuídos Ricardo Ribeiro dos Santos ricrs@ec.ucdb.br Curso de Engenharia de Computação UCDB Setembro/2003 Tópicos Sincronização em Sistemas Distribuídos Sincronização de Relógio Estados Globais

Leia mais

Sistemas Distribuídos. Capítulo 6 - Aula 10

Sistemas Distribuídos. Capítulo 6 - Aula 10 Sistemas Distribuídos Aula Passada Capítulo 6 - Aula 10 Nomeação estruturada Implementação de um espaço de nomes Implementação de resolução de nomes Nomeação baseada em atributo Introdução ao problema

Leia mais

Sincronização de Relógios e Relógios Lógicos. Histórico da comunicação. Tempo Global. Mecanismos de ordenação total

Sincronização de Relógios e Relógios Lógicos. Histórico da comunicação. Tempo Global. Mecanismos de ordenação total WTF : Computação mini-curso Distribuída LCMI/DAS/CTC/UFSC canismos de ordenação total Sincronização de Relógios e Relógios Lógicos Prof. Lau Cheuk Lung E-mail: lau.lung@inf.ufsc.br Departamento de Informática

Leia mais

Sincronização de relógios

Sincronização de relógios Sincronização de relógios STD29006 Engenharia de Telecomunicações Prof. Emerson Ribeiro de Mello http://docente.ifsc.edu.br/mello/std 31 DE OUTUBRO DE 2018 Relógios Físicos Problema 1 Quando acordo 1/22

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Sincronização de relógios Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello 25 de novembro

Leia mais

Sincronização em Sistemas Distribuídos

Sincronização em Sistemas Distribuídos Sincronização em Sistemas Distribuídos Universidade Federal do ABC Turma: Ciência da Computação Prof. Dr. Francisco Isidro Massetto Sincronização Como as regiões críticas são implementadas em um SD? Como

Leia mais

Relógio Lógico Algoritmo de Lamport. Relógio Lógico Algoritmo de Lamport. Relógio Físico Algoritmo Centralizado. Relógio Físico Algoritmo Centralizado

Relógio Lógico Algoritmo de Lamport. Relógio Lógico Algoritmo de Lamport. Relógio Físico Algoritmo Centralizado. Relógio Físico Algoritmo Centralizado Relógio Lógico Algoritmo de Lamport Objetivo: Sincronização de clocks lógicos Os tempos associados aos eventos não são necessariamente próximos ao tempo real. Os processos não precisam estar de acordo

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS Sincronização Slide 7 Nielsen C. Damasceno Introdução Utilizando Sistemas Distribuídos, uma grande dificuldade que temos é como garantir o acesso exclusivo a um recurso compartilhado,

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Sincronização de Relógios Físicos Departamento de Informática, UFMA Graduação em Ciência da Computação Francisco José da Silva e Silva 1 Serviços de Tempo Em sistemas centralizados,

Leia mais

Sistemas Distribuídos: Conceitos e Projeto

Sistemas Distribuídos: Conceitos e Projeto Sistemas Distribuídos: Conceitos e Projeto Relógios Francisco José da Silva e Silva Laboratório de Sistemas Distribuídos (LSD) Departamento de Informática / UFMA http://www.lsd.deinf.ufma.br 11 de junho

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sincronização Referência Sistemas operacionais modernos Andrew S. TANENBAUM Prentice-Hall, 995 Seção. pág. 36-325 2 Conteúdo Relógios lógicos Algoritmo de Lamport Relógios físicos Algoritmos para sincronização

Leia mais

Roteiro. Introdução Sincronização de Relógio Físico Sincronização de Relógio Lógico Exclusão Mútua

Roteiro. Introdução Sincronização de Relógio Físico Sincronização de Relógio Lógico Exclusão Mútua Sincronização Roteiro Introdução Sincronização de Relógio Físico Sincronização de Relógio Lógico Exclusão Mútua Introdução A comunicação entre processos é importante, mas não é só isso que importa; Uma

Leia mais

Sistemas Distribuídos Sincronização de Relógios. Edeyson Andrade Gomes www.edeyson.com.br

Sistemas Distribuídos Sincronização de Relógios. Edeyson Andrade Gomes www.edeyson.com.br Sistemas Distribuídos Sincronização de Relógios Edeyson Andrade Gomes www.edeyson.com.br Roteiro da Aula Definições Clock Físico Cristian Berkeley Clock Lógico Lamport 2 Definições Clock Físico Dia Solar

Leia mais

Modelos Fundamentais de um SD. Modelo de Interação ou Sincronismo

Modelos Fundamentais de um SD. Modelo de Interação ou Sincronismo Modelos Fundamentais de um SD Modelo de Falhas/Avarias Modelo de Interação ou Sincronismo Modelo de Segurança 1 Recordando. Modelo de Avarias: Caracteriza o sistema em termos das falhas/avarias, i.e.,

Leia mais

Tempos e Estados Globais. ECO036 - Sistemas Paralelos e Distribuídos

Tempos e Estados Globais. ECO036 - Sistemas Paralelos e Distribuídos Tempos e Estados Globais ECO036 - Sistemas Paralelos e Distribuídos Tópicos Abordados - Tempo - Relógios e Ordenação de eventos. - Relação Happened- Before - Relógios Lógicos - Vetor de Relógios - Relógios

Leia mais

Sincronização e Concorrência

Sincronização e Concorrência Tópicos da Aula Sincronização e Concorrência Sincronização sincronização interna sincronização externa sincronização de relógio métodos de sincronização Cristian Berkeley tempo lógico Controle de Concorrência

Leia mais

Sincronização em Sistemas Distribuídos

Sincronização em Sistemas Distribuídos 1 Sincronização em Sistemas Distribuídos 2 Roteiro Sincronização através do clock Relógios Lógicos Solução de Lamport (1978, 1990) Relógios Físicos Algoritmo de Cristian Algoritmo de Berkeley 3 Sincronização

Leia mais

Sincronização de Relógios

Sincronização de Relógios Sistemas de Tempo Real: Sincronização de Relógios Rômulo Silva de Oliveira Departamento de Automação e Sistemas DAS UFSC romulo@das.ufsc.br http://www.das.ufsc.br/~romulo 1 Sincronização de Relógios Motivação

Leia mais

Sistemas Distribuídos Aula 13

Sistemas Distribuídos Aula 13 Sistemas Distribuídos Aula 13 Aula passada Modelo computação distribuída RPC Marshalling e stubs Semântica operacional RMI Aula de hoje Relógios Hora de referência Sincronizando relógios Algoritmo de Berkeley

Leia mais

Introdução Sincronização Interna Sincronização Externa. Prof a Ana Cristina B. Kochem Vendramin DAINF / UTFPR

Introdução Sincronização Interna Sincronização Externa. Prof a Ana Cristina B. Kochem Vendramin DAINF / UTFPR n n n Introdução Sincronização Interna Sincronização Externa Prof a Ana Cristina B. Kochem Vendramin DAINF / UTFPR Introdução Problema: ausência de um relógio global em SDs; Em um sistema com n computadores,

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Comunicação Sincronização Prof. Marcelo de Paiva Guimarães 1 Comunicação de Grupo Grupo É uma coleção de processos que agem juntos em um sistema, de tal forma que quando uma mensagem

Leia mais

Modelos Fundamentais de um SD. Modelo de Interação ou Sincronismo

Modelos Fundamentais de um SD. Modelo de Interação ou Sincronismo Modelos Fundamentais de um SD Modelo de Falhas Modelo de Interação ou Sincronismo Modelo de Segurança 1 Modelo de Avarias: Caracteriza o sistema em termos das falhas/avarias, i.e., dos desvios em relação

Leia mais

Ordenação. Relógios lógicos

Ordenação. Relógios lógicos Ordenação Relógios lógicos 1 Índice Ordenação FIFO Ordenação Causal Ordenação Total Algoritmos Tempo Lógico Relógios Lógicos Relógios Vectoriais 2 Introdução Ordenação Objectivo Determinar à posteriori

Leia mais

Sistemas Distribuídos Capítulo 6 - Aula 10

Sistemas Distribuídos Capítulo 6 - Aula 10 Sistemas Distribuídos Capítulo 6 - Aula 10 Aula de hoje Introdução ao problema de sincronização Relógios Físicos Algoritmos de Sincronização Aula de hoje Relógios Lógicos Relógios de Lamport Relógios Vetoriais

Leia mais

Roteamento e Roteadores. Conceitos Diversos

Roteamento e Roteadores. Conceitos Diversos e Roteadores Conceitos Diversos Um roteador é um dispositivo que provê a comunicação entre duas ou mais LAN s, gerencia o tráfego de uma rede local e controla o acesso aos seus dados, de acordo com as

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos 2016.1 PROF. MARCIAL PORTO FERNANDEZ MARCIAL@LARCES.UECE.BR PROF. ANDRÉ RIBEIRO CARDOSO ANDREC@LARCES.UECE.BR 1 4. Sincronização em Sistemas Distribuídos 2 Sumário Sincronização de

Leia mais

O Que Veremos. Introdução. Introdução. Definindo Desempenho. Definindo Desempenho. Avaliando e Compreendendo o Desempenho

O Que Veremos. Introdução. Introdução. Definindo Desempenho. Definindo Desempenho. Avaliando e Compreendendo o Desempenho Ciência da Computação Arq. e Org. de Computadores Avaliando e Compreendendo o Desempenho O Que Veremos Avaliando e compreendendo o desempenho: Introdução Definindo desempenho Medindo o desempenho e seus

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Faculdades SENAC Análise e Desenvolvimento de Sistemas 1 de agosto de 2009 Modelo de Interação (Clocks e Eventos) Em SDs é difícil estabelecer limites de tempo sobre o tempo tomado para execução de processos,

Leia mais

COMPUTADOR. Adão de Melo Neto

COMPUTADOR. Adão de Melo Neto COMPUTADOR Adão de Melo Neto 1 PROGRAMA É um conjunto de instruções LINGUAGEM BINÁRIA INTRODUÇÃO Os caracteres inteligíveis são apenas zero(0) e um (1). É uma linguagem de comunicação dos computadores.

Leia mais

Topologias e abrangência de redes de computadores

Topologias e abrangência de redes de computadores Topologias e abrangência de redes de computadores Aula 10 1º semestre Prof. Nataniel Vieira nataniel.vieira@gmail.com Objetivos Tornar os estudantes capazes de reconhecer os tipos de topologias de redes

Leia mais

Sistemas Distribuídos Aula 10

Sistemas Distribuídos Aula 10 Sistemas Distribuídos Aula 10 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 Sincronização Comunicação

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Comunicação em Grupo Referência Sistemas operacionais modernos Andrew S. TANENBAUM Prentice-Hall, 1995 Seção 10.4 pág. 304-311 2 Comunicação em Grupo Suponha que se deseja um serviço de arquivos único

Leia mais

Prof. Marcelo Cunha Parte 6

Prof. Marcelo Cunha Parte 6 Prof. Marcelo Cunha Parte 6 www.marcelomachado.com ARP (Address Resolution Protocol) Protocolo responsável por fazer a conversão entre os endereços IPs e os endereços MAC da rede; Exemplo: Em uma rede

Leia mais

Trabalho do Curso de Redes de Computadores COS765/MAB /1

Trabalho do Curso de Redes de Computadores COS765/MAB /1 Trabalho do Curso de Redes de Computadores COS765/MAB731 2015/1 Universidade Federal do Rio de Janeiro Rosa M.M. Leão e Daniel Sadoc Menasché Primeiro Período de 2015 1 Introdução O objetivo deste trabalho

Leia mais

Sincronização. Tempo e Relógios. Sincronização de Relógios - Algoritmo de Cristian - Algoritmo de Berkeley - Network Time Protocol

Sincronização. Tempo e Relógios. Sincronização de Relógios - Algoritmo de Cristian - Algoritmo de Berkeley - Network Time Protocol Sincronização Tempo e Relógios Sincronização de Relógios - Algoritmo de Cristian - Algoritmo de Berkeley - Network Time Protocol 1 Caso mais simples: Sincronização interna entre dois processos num sistema

Leia mais

FUNDAMENTOS DE REDES DE COMPUTADORES TP1

FUNDAMENTOS DE REDES DE COMPUTADORES TP1 LEIA COM ATENÇÃO AS INSTRUÇÕES ABAIXO Em sala de aula foram distribuídos pontos em exercícios e atividades extraclasse Número de Questões Total da Avaliação 5 Pontos 10 5 Pontos Cada questão tem peso 0,5

Leia mais

FUNDAMENTOS DE REDES DE COMPUTADORES TP2

FUNDAMENTOS DE REDES DE COMPUTADORES TP2 LEIA COM ATENÇÃO AS INSTRUÇÕES ABAIXO Em sala de aula foram distribuídos pontos em exercícios e atividades extraclasse Número de Questões Total da Avaliação 5 Pontos 10 5 Pontos Cada questão tem peso 0,5

Leia mais

TRANSMISSÃO DE DADOS Prof. Ricardo Rodrigues Barcelar

TRANSMISSÃO DE DADOS Prof. Ricardo Rodrigues Barcelar - Aula 1-1. A CAMADA DE ENLACE DE DADOS (Parte 1) Relembrando as aulas do semestre passado quando estudamos os modelos de referência, lembramos que a Camada de Enlace de Dados é a camada responsável pela

Leia mais

Configurar configurações de tempo no WAP125 e no WAP581

Configurar configurações de tempo no WAP125 e no WAP581 Configurar configurações de tempo no WAP125 e no WAP581 Objetivo O relógio de sistema em um ponto de acesso Wireless (WAP) proporciona um serviço decarimbo rede-sincronizado para todos os eventos que ocorrem

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 Consistência Causal(3) Neste exemplo temos uma sequência de eventos permitida quando o depósito é consistente por causalidade, mas proibida quando

Leia mais

Tempo e Relógios. Sincronização de Relógios - Algoritmo de Cristian - Algoritmo de Berkeley - Network Time Protocol.

Tempo e Relógios. Sincronização de Relógios - Algoritmo de Cristian - Algoritmo de Berkeley - Network Time Protocol. Tempo e Relógios Sincronização de Relógios - Algoritmo de Cristian - Algoritmo de Berkeley - Network Time Protocol Relógios Lógicos 1 O papel do tempo Crucial na ordenação de eventos Tempo Real? - Função

Leia mais

TP308 Introdução às Redes de Telecomunicações

TP308 Introdução às Redes de Telecomunicações Unidade IV Roteamento TP308 Introdução às Redes de Telecomunicações 178 Tópicos Serviços Providos pela Camada de Rede Classificação dos Algoritmos de Roteamento Roteamento Centralizado Roteamento Isolado

Leia mais

Tiago Guedes 10º 13ª

Tiago Guedes 10º 13ª Tiago Guedes 10º 13ª Introdução A transmissão de dados ou informação consiste na utilização de um suporte de informação para a transportar entre dois pontos fisicamente distantes. Este trabalho apresenta

Leia mais

GLONASS Sistema idêntico ao GPS, mas projetado e lançado pela Rússia.

GLONASS Sistema idêntico ao GPS, mas projetado e lançado pela Rússia. Sumário UNIDADE TEMÁTICA 1 Movimentos na Terra e no Espaço. 1.1 - Viagens com GPS Funcionamento e aplicações do GPS. Descrição de movimentos. Posição coordenadas geográficas e cartesianas. APSA GPS e Coordenadas

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I BARRAMENTO Slide 1 Sumário Introdução Componentes de Computador Funções dos Computadores Estruturas de Interconexão Interconexão de Barramentos Slide 2 Introdução

Leia mais

REDES DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar

REDES DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar - Aula 4 - INTERFACES E SERVIÇOS Definições: Serviços: Cada camada fornece serviços para camada superior. O modelo especifica o que cada camada faz, não como o serviço é implementado ou acessado. Interfaces:

Leia mais

SSC0640 Sistemas Operacionais I

SSC0640 Sistemas Operacionais I SSC0640 Sistemas Operacionais I 21ª Aula Gerenciamento de Dispositivos de E/S Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Slides adaptados de Marcos José Santana / Regina H. C. Santana / Luciana A.

Leia mais

Unidade 1 de FQA 11.º Ano. Satélites e Movimento Circular Uniforme. GPS - Sistema de Posicionamento i Global. Coordenadas e Relógios

Unidade 1 de FQA 11.º Ano. Satélites e Movimento Circular Uniforme. GPS - Sistema de Posicionamento i Global. Coordenadas e Relógios LOGO FQA Unidade 1 de FQA 11.º Ano Satélites e Movimento Circular Uniforme Marília Peres e Rosa Pais Índice 1 - Sistema de Posicionamento i Global l 2 3 Coordenadas e Relógios Satélites Geoestacionários

Leia mais

Controle de acesso ao meio

Controle de acesso ao meio Controle de acesso ao meio Protocolos de múltiplo acesso usados em canais de difusão Coordenação de transmissores e de receptores em um canal de difusão compartilhado Exemplos de canais de múltiplo acesso

Leia mais

# $ % & ' ( ) * ' ( ) *! " " Orientador +, -

# $ % & ' ( ) * ' ( ) *!   Orientador +, - #$ %&'()* '()*!"" Orientador +,- ."%&/0#12 3"/%'0)/))&/ )4506 7" %/0)/))&/ 8906 8)) :"'/0)/))&/ '% '); Um roteador recebe em alguma de suas interfaces um pacote vindo da rede local ou da rede externa.

Leia mais

O Tempo Real. Fundamentos dos Sistemas de Tempo Real. Rômulo Silva de Oliveira ebook Kindle, 2018

O Tempo Real. Fundamentos dos Sistemas de Tempo Real. Rômulo Silva de Oliveira ebook Kindle, 2018 O Tempo Real Rômulo Silva de Oliveira ebook Kindle, 2018 www.romulosilvadeoliveira.eng.br/livrotemporeal Outubro/2018 1 Tempo Real 1/2 É o tempo do mundo físico É o tempo do relógio da parede Não é tempo

Leia mais

Sistemas Distribuídos Estados globais. Vinícius Fernandes Soares Mota

Sistemas Distribuídos Estados globais. Vinícius Fernandes Soares Mota Sistemas Distribuídos Estados globais Vinícius Fernandes Soares Mota 1 2 Tópicos Tempo e relógio lógicos (revisão curta) Relógios vetoriais Estados Globais Snapshot distribuído 3 Antes... Por que a sincronização

Leia mais

A camada de enlace de dados executa diversas funções específicas. Dentre elas

A camada de enlace de dados executa diversas funções específicas. Dentre elas A camada de enlace de dados executa diversas funções específicas. Dentre elas estão as seguintes: Fornecer uma interface de serviço bem definida à camada de rede. Lidar com erros de transmissão. Regular

Leia mais

EPUSP PCS 2011/2305/2355 Laboratório Digital. Frequencímetro

EPUSP PCS 2011/2305/2355 Laboratório Digital. Frequencímetro Frequencímetro Versão 2014 RESUMO Esta experiência tem como objetivo a familiarização com duas classes de componentes: os contadores e os registradores. Para isto, serão apresentados alguns exemplos de

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Sincronização de relógios Gustavo Reis gustavo.reis@ifsudestemg.edu.br 1 - Sincronização de Relógios Em um sistema centralizado, o tempo não é ambíguo. Quando um processo quer saber

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 Sincronização - Relógios Lógicos Capítulo 6 Agenda Relógios Lógicos Relógios de Lamport Relógios Vetoriais Algumas definições... Um sistema distribuído

Leia mais

Sistemas Distribuídos Aula 19

Sistemas Distribuídos Aula 19 Sistemas Distribuídos Aula 19 Aula passada Eleição de líder Algoritmo do valentão Algoritmo em anel Aula de hoje Redes sem fio Coordenando acesso Eleição em redes sem fio Redes sem Fio Dispositivos formando

Leia mais

Algoritmos Distribuídos. AD Algoritmos Básicos 1

Algoritmos Distribuídos. AD Algoritmos Básicos 1 Algoritmos Distribuídos Algoritmos Básicos Antonio Alfredo Ferreira Loureiro loureiro@dcc.ufmg.br http://www.dcc.ufmg.br/~loureiro Este material está baseado no capítulo 4 do livro An Introduction to Distributed

Leia mais

Redes de Computadores.

Redes de Computadores. Redes de Computadores www.profjvidal.com REDES PONTO-A-PONTO E CLIENTE-SERVIDOR REDES DE COMPUTADORES Uma rede de computadores é formada por um conjunto de módulos processadores capazes de trocar informações

Leia mais

SSC0611 Arquitetura de Computadores

SSC0611 Arquitetura de Computadores SSC0611 Arquitetura de Computadores 6ª Aula Entrada e Saída Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Estrutura da máquina de von Neumann Dispositivos Periféricos Interface com o mundo exterior

Leia mais

Sistemas Distribuídos Capítulo 8 - Aula 13

Sistemas Distribuídos Capítulo 8 - Aula 13 Sistemas Distribuídos Capítulo 8 - Aula 13 Aula de hoje Aula Passada Exclusão Mútua Algoritmos de Eleição Tolerância a Falhas Conceitos básicos Modelos de falha Redundância Resiliência de Processo 1 Tolerância

Leia mais

Universidade Federal do ABC

Universidade Federal do ABC Universidade Federal do ABC Eletrônica Digital Aula 09: Considerações Gerais e Aplicações de Flip-Flop TOCCI, Sistemas Digitais, Sec. 5.11-5.23 http://sites.google.com/site/eletdigi/ 1 Entradas Assíncronas

Leia mais

Sistemas Distribuídos Capítulo 8 - Aula 14

Sistemas Distribuídos Capítulo 8 - Aula 14 Sistemas Distribuídos Capítulo 8 - Aula 14 Aula Passada Tolerância a Falhas Conceitos básicos Modelos de falha Redundância Resiliência de Processo Aula de hoje Comunicação Confiável Cliente-Servidor Comunicação

Leia mais

Comunicação de Dados II

Comunicação de Dados II Comunicação de Dados II Tecnologia em Redes de Computadores IFSULDEMINAS Campus Inconfidentes Prof. Kleber Rezende kleber.rezende@ifsuldeminas.edu.br Interligação em Redes Acomoda distintas tecnologias

Leia mais

Redes de Computadores

Redes de Computadores Redes de Computadores Introdução Rede O que é?? 1 O que é uma rede É a conexão de duas ou mais máquinas com o objetivo de compartilhar recursos entre uma máquina e outra. Recursos Podem ser físicos ou

Leia mais

Halliday Fundamentos de Física Volume 1

Halliday Fundamentos de Física Volume 1 Halliday Fundamentos de Física Volume 1 www.grupogen.com.br http://gen-io.grupogen.com.br O GEN Grupo Editorial Nacional reúne as editoras Guanabara Koogan, Santos, Roca, AC Farmacêutica, LTC, Forense,

Leia mais

Prof. Samuel Henrique Bucke Brito

Prof. Samuel Henrique Bucke Brito Princípios de Comunicação (Sinal) www.labcisco.com.br ::: shbbrito@labcisco.com.br Prof. Samuel Henrique Bucke Brito Modelo Geral de Comunicação A informação é gerada na fonte é transformada (modulada

Leia mais

Sistemas Distribuídos Capítulo 6 - Aula 12

Sistemas Distribuídos Capítulo 6 - Aula 12 Sistemas Distribuídos Capítulo 6 - Aula 12 Aula Passada Relógios Lógicos Relógios de Lamport Relógios Vetoriais Aula de hoje Exclusão Mútua Algoritmos de Eleição 1 Exclusão Mútua - Questão fundamental

Leia mais

Sistemas Distribuídos Capítulo 8 - Aula 15

Sistemas Distribuídos Capítulo 8 - Aula 15 Sistemas Distribuídos Capítulo 8 - Aula 15 Aula de hoje Aula Passada Comunicação Confiável Cliente-Servidor Comunicação Confiável de Grupo Comunicação Confiável de Grupo Multicast Atômico Sincronia Virtual

Leia mais

COMPUTADOR. Adão de Melo Neto

COMPUTADOR. Adão de Melo Neto COMPUTADOR Adão de Melo Neto 1 Modelo Barramento de Sistema É uma evolução do Modelo de Von Newman Processador = UCP = unidade de controle + unidade lógica aritmética Memória; Barramento (novo elemento):

Leia mais

Parte I Multiprocessamento

Parte I Multiprocessamento Sistemas Operacionais I Estrutura dos SO Prof. Gregorio Perez gregorio@uninove.br 2004 Parte I Multiprocessamento Roteiro 1 Multiprocessadores em Sistemas Fortemente Acoplados 1.1 1.2 1.3 Processamento

Leia mais

Unidade 1 de FQA Nível 2. GPS e MCU. Satélites e Movimento Circular Uniforme. GPS - Sistema de Posicionamento i Global. Coordenadas e Relógios

Unidade 1 de FQA Nível 2. GPS e MCU. Satélites e Movimento Circular Uniforme. GPS - Sistema de Posicionamento i Global. Coordenadas e Relógios LOGO FQA Unidade 1 de FQA Nível 2 e MCU Satélites e Movimento Circular Uniforme Marília Peres e Rosa Pais Índice 1 - Sistema de Posicionamento i Global l 2 3 Coordenadas e Relógios Satélites Geoestacionários

Leia mais

O que são os satélites?

O que são os satélites? Pág 1 O que são os satélites? Um satélite artificial é um sistema que orbita em torno do nosso planeta, com uma altitude e velocidade constante. Geralmente os satélites estão equipados com meios radioeléctricos

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Exclusão Mútua Referência Sistemas operacionais modernos Andrew S. TANENBAUM Prentice-Hall, 1995 Seção 11.2 pág. 325-329 Conteúdo Algoritmo centralizado Algoritmo distribuído (Algoritmo

Leia mais

Avaliação de Desempenho

Avaliação de Desempenho Avaliação de Desempenho Clock do Sistema Cristal de Quartzo envia onda de sinais constantes que são convertidas em sinais digitais 1GHz = 1 bilhão de pulsos Taxa de pulsos = taxa de clock Incremento de

Leia mais

Barramento. Prof. Leonardo Barreto Campos 1

Barramento. Prof. Leonardo Barreto Campos 1 Barramento Prof. Leonardo Barreto Campos 1 Sumário Introdução; Componentes do Computador; Funções dos Computadores; Estrutura de Interconexão; Interconexão de Barramentos Elementos de projeto de barramento;

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS INTRODUÇÃO SISTEMAS DISTRIBUÍDOS Até meados dos anos 80 as máquinas eram grandes e caras; A maioria das empresas tinham equipamentos que operavam de forma independente por falta de uma forma confiável

Leia mais

Redes de Computadores

Redes de Computadores s de Computadores Prof. Macêdo Firmino Modelo TCP/IP e OSI Macêdo Firmino (IFRN) s de Computadores Setembro de 2011 1 / 19 Modelo de Camadas Para que ocorra a transmissão de uma informação entre o transmissor

Leia mais

Unidade 1. Viagens com GPS. Sistema de Posicionamento Global. Movimentos na Terra e no espaço MOVIMENTOS NA TERRA E NO ESPAÇO

Unidade 1. Viagens com GPS. Sistema de Posicionamento Global. Movimentos na Terra e no espaço MOVIMENTOS NA TERRA E NO ESPAÇO Unidade 1 MOVIMENTOS NA TERRA E NO ESPAÇO Viagens com GPS 1 Sistema de Posicionamento Global 2 O GPS é um sistema de rádio - navegação por satélites desenvolvido e controlado pelo Departamento de Defesa

Leia mais

Ethernet. IEEE padronizou várias redes locais e metropolitanas com o nome IEEE 802 Os mais importantes são:

Ethernet. IEEE padronizou várias redes locais e metropolitanas com o nome IEEE 802 Os mais importantes são: Ethernet IEEE padronizou várias redes locais e metropolitanas com o nome IEEE 802 Os mais importantes são: 802.3 (Ethernet) 802.11 (LAN sem fio) 802.15 (Bluetooth) 802.16 (MAN sem fio) Ethernet Os tipos

Leia mais

Redes de Computadores I Conceitos Básicos

Redes de Computadores I Conceitos Básicos Redes de Computadores I Conceitos Básicos Prof. Luís Rodrigo lrodrigo@lncc.br http://lrodrigo.lncc.br 2009/1 v2-2009.03.11 Histórico Anos 50-60 Computadores Grandes Porte Sistemas Batch Anos 60-70 Time-sharing

Leia mais

Topologias de redes de computadores

Topologias de redes de computadores Topologias de redes de computadores Objetivos Apresentar as principais topologias de redes e suas classificações. Caracterizar as topologias e sua formação. Conhecer as topologias em sua essência. Apresentar

Leia mais

Modelo de Camadas. Redes de Computadores

Modelo de Camadas. Redes de Computadores Modelo de Camadas Redes de Computadores Sumário Visão Geral de uma Rede de Computadores Protocolos Modelo de Camadas Porque utilizar Tipos de Modelos de Referência Modelo de Referência ISO/OSI Histórico

Leia mais

Sincronização em SDs I. Bruno M. Carvalho Sala: 3B2 Horário: 35T34

Sincronização em SDs I. Bruno M. Carvalho Sala: 3B2 Horário: 35T34 Sincronização em SDs I Bruno M. Carvalho Sala: 3B2 Horário: 35T34 Introdução Sincronização em SDs consiste na aplicação de técnicas que fazem com que os processos concordem com o tempo ou a ordem de ocorrência

Leia mais

LÓGICA DIGITAL CONCEITOS DE CLOCK RELÓGIOS (CLOCK) Prof. Celso Candido ADS / REDES / ENGENHARIA

LÓGICA DIGITAL CONCEITOS DE CLOCK RELÓGIOS (CLOCK) Prof. Celso Candido ADS / REDES / ENGENHARIA RELÓGIOS (CLOCK) 1 Em muitos circuitos digitais, a ordem em que os eventos ocorrem é crítica. Às vezes um evento deve preceder outro, ou então dois eventos deverão ocorrer simultaneamente, para as relações

Leia mais

AULA 06: PROGRAMAÇÃO EM MÁQUINAS PARALELAS

AULA 06: PROGRAMAÇÃO EM MÁQUINAS PARALELAS ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 06: PROGRAMAÇÃO EM MÁQUINAS PARALELAS Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação PROGRAMAÇÃO PARALELA

Leia mais

Introdução a Sistemas Operacionais. Adão de Melo Neto

Introdução a Sistemas Operacionais. Adão de Melo Neto Introdução a Sistemas Operacionais Adão de Melo Neto 41 Definição de SO Sistema Operacional É um conjunto de rotinas (programa) executado pelo processador que controla o funcionamento do computador como

Leia mais

Organização Básica de Computadores. Organização Básica de Computadores. Organização Básica de Computadores. Organização Básica de Computadores

Organização Básica de Computadores. Organização Básica de Computadores. Organização Básica de Computadores. Organização Básica de Computadores Ciência da Computação Arq. e Org. de Computadores Processadores Prof. Sergio Ribeiro Composição básica de um computador eletrônico digital: Processador Memória Memória Principal Memória Secundária Dispositivos

Leia mais

4. Sincronização em Sistemas Distribuídos. 4.1 Sincronização de relógio

4. Sincronização em Sistemas Distribuídos. 4.1 Sincronização de relógio 4. Sincronização em Sistemas Distribuídos A sincronização entre processos é tão importante quanto a comunicação entre processos em sistemas distribuídos. Por exemplo, como as regiões críticas são implementadas

Leia mais

Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação.

Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação. Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de I Organização e Arquitetura Básicas B de (Parte III)

Leia mais

Prof. Marcelo Machado Cunha Parte 2

Prof. Marcelo Machado Cunha Parte 2 Prof. Marcelo Machado Cunha Parte 2 www.marcelomachado.com As redes de computadores se classificam conforme a forma de ligação entre as estações nas seguintes categorias: Linear ou Barramento Estrela Anel

Leia mais

Trabalho de Programação 2 Processador CESAR. 1. Descrição Geral. 2. Especificação do Trabalho

Trabalho de Programação 2 Processador CESAR. 1. Descrição Geral. 2. Especificação do Trabalho 1. Descrição Geral UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL Trabalho de Programação 2 Processador CESAR O trabalho para o computador CESAR está baseado no trabalho desenvolvido para o computador RAMSES.

Leia mais

Redes de Computadores I

Redes de Computadores I Redes de Computadores I Prof.ª Inara Santana Ortiz Aula 3 Protocolos de Comunicação Protocolos de Comunicação Protocolos de Comunicação Para que ocorra a transmissão de uma informação entre o transmissor

Leia mais

Arquitetura e organização de computadores

Arquitetura e organização de computadores Arquitetura e organização de computadores 3º. Semestre - Sistemas de informação Prof. Emiliano S. Monteiro Classificação de computadores Grande porte: Supercomputadores e Mainframes Médio porte: Minicomputadores

Leia mais

4 Sistema Computacional:

4 Sistema Computacional: 4 Sistema Computacional: Hardware: são os componentes e dispositivos eletrônicos que operando em conjunto com outros componentes ou mesmo individualmente realizam uma das funções de um sistema de computação.

Leia mais

Analógico vs Digital

Analógico vs Digital Arquitectura de Computadores I Engenharia Informática (11537) Tecnologias e Sistemas de Informação (6616) Analógico vs Digital Nuno Pombo / Miguel Neto Arquitectura Computadores I 2014/2015 1 Os circuitos

Leia mais

Algoritmos Computacionais

Algoritmos Computacionais UNIDADE 1 Processador e instruções Memórias Dispositivos de Entrada e Saída Software ARQUITETURA BÁSICA UCP Unidade central de processamento MEM Memória E/S Dispositivos de entrada e saída UCP UNIDADE

Leia mais

Circuitos Seqüenciais

Circuitos Seqüenciais ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I Circuitos Seqüenciais prof. Dr. César Augusto M. Marcon prof. Dr. Edson Ifarraguirre Moreno 2 / 13 Sistemas Digitais Definição funcional: Aparato dotado de conjuntos

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Exclusão Mútua Gustavo Reis gustavo.reis@ifsudestemg.edu.br - Questão fundamental em SDs Concorrência e colaboração entre vários processos Processos vão precisar acessar simultaneamente

Leia mais