Troca de Mensagens _ Notas de Aula _ Prof. Tiago Garcia de Senna Carneiro DECOM / UFOP
|
|
- Salvador Domingos Guterres
- 7 Há anos
- Visualizações:
Transcrição
1 Troca de Mensagens _ Notas de Aula _ Prof. Tiago Garcia de Senna Carneiro DECOM / UFOP Num sistema distribuído não há memória compartilhada. Portanto, toda a comunicação entre processos deve ser realizada através de troca de mensagens. Pilha de Protocolos Os processos de um sistema distribuído comunicam-se através da pilha de protocolos da rede que interliga as máquinas sobre as quais estão executando. Entretanto, este fato pode impor sérias restrições ao desempenho do sistema. Quando uma mensagem é recebida ou enviada através de uma pilha de protocolos, cada camada da pilha tende a anexar às mensagens enviada pelos processos um cabeçalho contendo informações de controle.a existência de todos esses cabeçalhos cria uma sobrecarga considerável no sistema. Nas redes de longa distância, onde a banda passante é limitada a algums kbps (tipicamente, 64kbps), esta sobrecarga não chega a ser um problema sério. O fator limitante neste caso é a capacidade das linhas de transmissão. Mesmo com toda a manipulação de cabeçalhos, os processadores são suficientemente rápidos para manter as linhas trabalhando à máxima velocidade. Então, um sistema distribuído de longa distância pode usar pilhas de protocolos, tais como o TCP/IP, sem comprometer de forma considerável o desempenho da comunicação entre processos. Entretanto, num sistema distribuído baseado em rede local a sobrecarga introduzida pela pilha de protocolos é desastrosa. Os processadores consomem um tempo muito grande processando protocolos que acabam transformando a vazão (throughput) da rede em apenas uma pequena fração da sua capacidade de transmissão nominal. Portanto, a maioria dos sistema distribuídos baseados em rede local não utilizam protocolos em camadas ou, no caso de usarem, implementam somente um subconjunto da pilha de protocolos. Além disso, para alcaçarem melhor desempenho os sistemas distribuídos tendem a evitar protocolos baseados em conexão com o TCP/IP. O modelo-cliente servidor é basedo em um protocolo muito simples, sem conexão, do tipo solicitação/resposta. O cliente envia uma mensagem ao servidor solicitando algum serviço, o servidor faz o trabalho e envia para o cliente o resultado ou um código de erro. Este esquema apresenta como vantagens a simplicidade e a eficiência. Assumindo um sistema homogêneo, este esquema de comunicação poderia ser implementado diretamente sobre a camada de enlace da pilha de protocolos TCP/IP evitando-se as demais camadas.
2 Endereçamento Para que um processo possa enviar mensagens a um processo remoto, ele precisa conhecer o endereço desse processo. O endereço, end, de um processo deve indentificar numa primeira instância a máquina na qual ele está executando e depois, quem é ele entre os vários processos executando naquela máquina. De posse desse endereço, qualquer processo pode invocar a primitiva send( end, &msg ) do sistema para eviar mensagens ao outro processo ou então a primitiva receive( end, &msg) quando desejar receber mensagens desse processo. Vários esquemas de endereçamento podem ser utilizados, cada um apresenta vantagens e desvantagens: a) Endereçamento máquina.processo:neste esquema o endereço de um processo é formado por duas partes, a primeira parte é o endereço da máquina onde o processo está executando e a segunda parte é o endereço do processo dentro da máquina. Supondo a existência de uma máquina cujo endereço IP seja e a existência de um número que identifica um processo dentro daquela máquina como o processo 5291, o endereço do processo poderia ser expresso como Este esquema apresenta dois problemas. O primeiro diz respeito à transparêcia à migração que todo sistemas distribuído deve prover. O fato de usarmos o endereço da máquina como parte do endereço quebra tal transparência uma vez que o processo 5291 não poderia migrar para outra máquina sem causar problema, pois os processos que precisam comunicar-se com ele não o encontrariam mais. Além disso, para garantir a transparência á migração deveríamos garantir que nehum outro processo em todo o sistema fosse identificado pelo número 5291, ou seja, que o identificador 5291 tivesse um escopo global, pois só dessa forma o processo 5291 podera ser encontrado caso migrasse para uma outra máquina do sistema. Neste momento é que surge o segundo problema. Que método seria utilizado para gerar identificadores universais para todos os processos do sistema? Este método iria interferir na confiabilidade ou desempenho do sistema distribuído? Por exemplo, centralizar a reponsabilidade de gerar esses identificadores em um único processo do sistema, com certeza, iria criar um novo gargalo no sistema além de fazer com que todo o sistema dependa do bom funcionamento de um único processo. Grande parte do esquema de comunicação do UNIX de Berkley utiliza um esquema um pouquinho diferente desse: endereçamento máquina.local-ident. O campo máquina é o endereço IP de 32 bits da máquina e o campo local-ident é um número de 16 bits escolhido radômicamente pelo próprio processo. Um processo começa sua execução com uma chamada ao núcleo do sistema para informá-lo que seu identificador é local-ident. A probabilidade de um processo escolhar um ident-local que esteja sendo utilizado é remota, mas caso isso aconteça o processo deverá escolher outro identificador. b) Endereçamento de processo em broadcast: neste método um processo possui um endereço que não depende do endereço da máquina onde está rodando. Quando um processo A precisa comunicar-se com um processo B, o processo precisa antes de qualquer coisa enviar uma mensagem broadcast na rede perguntado "Que máquina está executando o processo B?". Todas as máquinas receberão esta mensagem, mas somente a máquina que
3 estiver o processo B responderá enviando o seu endereço para o processo A. O problema com este esquema é que ele pode causar muita sobrecarga na rede, pois todo processo para comunicar-se com outro precisará executar um broadcast. Além disso, um processo terá sempre que esperar pelo endereço da máquina que executa o processo com quem deseja se comunicar, esta fato torna-se ainda mais grave a penalização que a comunicação entre processos impõe ao desempenho dos sistemas distribuídos. c) Endereçamento de através de servidores de nome: no esquema de endereçamento através de servidores de nome um processo extra é utilizado para mapear o nome de serviços escritos em alto nível (ASCII), para endereços de máquina. Este processo é chamado servidor de nome. Serviços são facilidades que processos servidores oferecem a outros processos do sistema. Um serviço é está sempre associado a um porto padronizado por convenção, por exemplo, o serviço de ftp é associado ao porto 21 e o serviço de é associado ao porto 25. Desta forma, quando o processo deseja solicitar um serviço, ele primeiro deve consultar o servidor de nome para saber o endereço da máquina que executa o processo que fornece o serviço e depois ele deve conectar-se a esta máquina informando o porto que corresponde ao serviço que ele deseja. O porto é um número que permite ao sistema operacional multiplexar a rede entre vários processos. Todo processo que deseja fornecer algum serviço através da rede deve associar-se a um porto, assim quando uma mensagem chegar através da rede o sistema operacional terá como saber para qual processo a mensagem deverá ser entregue. O problema deste esquema de endereçamento é que ele insere um componente centralizado no sistema: o servidor de nome. Comunicação Síncrona versus Comunicação Assíncrona A comunicação entre processos pode ocorrer de duas maneiras diferentes. Na comunicação síncrona quando um processo invoca a primitiva send(addr, &buffer) para enviar uma mensagem a outro processo, a sua execução fica suspensa até que a mensagem realmente chegue ao processo destinatário. Quando um processo invoca a primitiva receive( addr, &buffer), a execução desse processo fica suspensa até que uma mensagem vinda do processo addr chegue. A comunicação síncrona também é conhecida como comunicação com bloqueio ou bloqueante. Na comunicação assíncrona a execução de um processo não é bloqueda quando o processo invoca a primitiva send ou receive. A comunicação assíncrona é a que apresenta um menor custo em termos de desempenho, pois permite ao sistema distribuído explorar ao máximo o paralelismo de processamento e comunicação. Entretanto, é a forma de comunição que apresenta maiores dificuldades de implementação, além de criar novos problemas para o programador. Por exemplo, suponha que um processo tenha invocado de forma assíncrona a primitiva send(addr, &buffer) e que portanto, sua execução tenha continuado a ser realizada. Quando este processo terá certeza que pode alterar o conteúdo da variável buffer sem alterar a informação a ser trocada durante a comunicação? A resposta é simples, não há como.
4 Duas soluções podem ser dadas para o problema acima: 1) antes de ser enviada toda mensagem deve ser copiada para uma área de armazenamento temporário interna ao núcleo do sistema. Assim, qualquer alteração no conteúdo da variável buffer não influenciará a comunicação em andamento. Fatores críticos para esta estratégia é a determinação do tamanho dessa área de armazenamento temporário e o número máximo permitido de mensagens assíncronas sendo enviadas. 2) sempre que uma mensagem terminar de ser entregue ao seu destino, o processo que a gerou deverá ser interrompido e informado do fato, ou seja, uma interrupção será gerada na máquina do processo que originou a mensagem. Porém, o uso de interrupções torna o programação dos processos comunicantes mais difícil, além de quase impossibilitar a depuração dos mesmos. Um aspecto importante da comunicação síncrona é a necessidade do uso de temporizadores. Este temporizadores deverão ser utilizados para evitar que processos fiquem eternamente esperando pela confirmação do envio de uma mensagem ou pela chegada de uma mensagem gerada por outro processo. Comunicação com Bufferização versus Comunicação Sem- Bufferização Suponha que um processo A envie uma mensagem M para um processo B, mas que o processo B ainda não tenha executado a primitiva receive(addra, &buffer), ou seja, que o processo B ainda não esteja esperando por uma mensagem. Quando a mensagem chegar à máquina onde o processo B está executando o sistema operacional deverá descartar a mensagem ou esperar que o processo B a solicite? O que acontecerá se o processo B nunca requisitar a mensagem M? Duas soluções podem ser adotadas para resolver este problema. A primeira e a menos desejada é simplesmente proibir que um processo invoque a primitiva send se não houver um lugar para armazená-la na máquina destino. Isto é, o processo transmissor ficará bloqueado até o processo destino invoque a primitiva receive. A segunda solução faz uso de um buffer interno ao núcleo do sistema operacional chamado mailbox e de temporizadores. A medida que as mensagens são recebidas elas vão sendo inseridas no mailbox que funciona como uma fila de mensagens e para cada mensagem um novo temporizador é iniciado com o objetivo de medir o tempo de permanência da mensagem no mailbox. Conforme os processos forem requisitando as mensagens, estas vão sendo retiradas do mailbox. Se nehum processo requisitar uma determinada mensagem e seu temporizador atingir um valor máximo permitido, a mensagem é descartada.o problema com a segunda solução é a sobrecarga gerada pela manutenção dos mailboxes. Comunicação Confiável versus Comunicação Não-Confiável Muitas vezes o envio de uma mensagem deve ser confiável, isto é, o processo que enviou a mensagem deve receber uma confimação do processo destino informando o perfeito recebimento da mensagem. Este mecanismo evitaria que uma mensagem perdida ou corrompida atrapalhe o funcionamento do sistema.
5 Num arquitetura cliente-servidor a confirmação pode ser necessária tanto para garantir que um servidor recebeu a solicitação de um cliente como para garantir que um cliente recebeu a resposta de um servidor. Como tanto a solicitação do cliente como a resposta do servidor são recebidas pelo núcleo do sistema operacional na forma mensagens a serem entregues aos processos servidor e cliente, respectivamente, o próprio núcleo do sistema poderia confirmar o recebimento dessas mensagens evitando-se que esses processos tivessem que fazê-lo, resultando num melhor desempenho do sistema. Para melhorar ainda mais o desempenho do sistema, quando o processamento solicitado por um cliente for muito pequeno, em termos computacionais, a própria resposta a esta solicitação poderia ser utilizada como confirmação. Desta forma, não sera necessário o envio de duas mensagens para o mesmo processo onde um intervalo de tempo muito pequeno separaria uma mensagem da outra, evitando-se sobrecargas na rede de comunicação do sistema distribuído.
Vamos fazer um pequeno experimento
1 Vamos fazer um pequeno experimento Dividam-se em dois grupos: Mestre Escravo Projeto de Sistemas Distribuídos Comunicação entre Processos Prof. Msc. Marcelo Iury de Sousa Oliveira marceloiury@gmail.com
Leia maisSistemas Distribuídos Aula 2
Sistemas Distribuídos Aula 2 Aula passada Logísitica Regras do jogo Definição e características Exemplos Aula de hoje Processos IPC Características Ex. sinais, pipes, sockets Objetivos Processos O que
Leia maisSistemas de Troca de Mensagens
Universidade Federal do Rio de Janeiro Programa de Pós-Graduação em Informática DCC/IM - NCE/UFRJ Arquitetura de Sistemas Paralelos Sistemas de Troca de Mensagens Sistemas de Comunicação O Sistema de Comunicação
Leia maisComunicação. Carlos A. G. Ferraz 25/6/2003. Sistemas Distribuídos 1. Tópicos. Camadas. Transmissão de dados. Marshalling/Unmarshalling.
Tópicos Comunicação Carlos Ferraz cagf@cin.ufpe.br Elementos básicos de comunicação Transmissão de dados Endereçamento Sincronismo Enfileiramento (Bufferização) Confiabilidade Portas e sockets UDP RPC:
Leia maisDireto ou Indireto Monolítico ou Estruturado Simétrico ou Assimétrico Padronizado ou Não-Padronizado
PROTOCOLOS Características dos Protocolos Funcionalidade dos Protocolos Protocolos OSI Protocolos TCP/IP Características dos Protocolos As principais caraterísticas de um protocolo são: Direto ou Indireto
Leia maisProgramação de Sistemas em Tempo Real
BCC722 Programação de Sistemas em Tempo Real Processos Prof. Charles Garrocho O conceito de processo Um S.O. executa uma variedade de programas Sistemas de tempo compartilhado: programas Processo: um programa
Leia maisRoteiro... Sistemas Distribuídos Aula 4. Troca de mensagens. Comunicação entre processos. Conceitos de SD, vantagens e desvantagens
Roteiro... Conceitos de SD, vantagens e desvantagens Infra-estrutura de um SD Considerações de projeto Sistemas Distribuídos Aula 4 Karine de Pinho Peralta Modelos de Comunicação - comunicação entre processos
Leia maisREDES 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 maisRedes de Computadores
Redes de Computadores Camada de Transporte Antonio Alfredo Ferreira Loureiro loureiro@dcc.ufmg.br Departamento de Ciência da Computação Universidade Federal de Minas Gerais UFMG/DCC Redes de Computadores
Leia maisFundamentos de Sistemas Operacionais
Fundamentos de Sistemas Operacionais Aula 6: Monitores, Troca de Mensagens e Deadlock Diego Passos Última Aulas Mecanismos de Exclusão Mútua Operações atômicas. Protocolos de controle de acesso. Spin-locks.
Leia maisSincronização e Comunicação entre Processos
Sincronização e Comunicação entre Processos Monitores/Semáforos Semáforos Mecanismos de sincronização nãoestruturados; Exige do desenvolvedor bastante cuidado, pois qualquer engano pode levar a problemas.
Leia maisProcessos ca 3 pítulo
Processos capítulo 3 Introdução: Threads Para executar um programa, o sistema operacional cria um determinado números de processos virtuais. O sistema operacional mantém uma tabela de processos que contém
Leia maisExemplo Cliente-Servidor. Cliente. Servidor 1/ Requisição / Resposta Enlace 2 Físico 1. Kernel. Kernel
1/6 Modelo Cliente-Servidor overhead do modelo OSI (TCP/IP), usar protocolo mais simples solicitação/resposta vantagens: simplicidade não é orientado a conecção pilha de protocolos menor que do OSI Cliente
Leia maisAULA 3 - REDES. Prof. Pedro Braconnot Velloso
AULA 3 - REDES Prof. Pedro Braconnot Velloso Resumo da última aula Começo da Internet Princípios básicos Comutação pacotes x circuitos Protocolos Arquitetura em camadas Arquitetura TCP/IP APLICAÇÃO TRANSPORTE
Leia maisDados em programas são estruturados, enquanto que mensagens carregam informação seqüencial: Linearização x Restauração de dados Requisição
6LVWHPDV'LVWULEXtGV 0GHO&OLHQWH6HUYLGU &PXQLFDom 6XPiUL Introdução Elementos Básicos de Comunicação Comunicação Cliente-Servidor Comunicação em Grupo Chamada emota de Procedimento (PC) Prof a. Cristina
Leia maisSistemas Distribuídos
Faculdades SENAC Análise e Desenvolvimento de Sistemas 1 de agosto de 2009 Orientação a Objetos Encapsulamento: Parte interna (privada) dos objetos Implementação: métodos Estado: atributos, variáveis,
Leia maisRedes TCP/IP. Prof. M.Sc. Alexandre Fraga de Araújo. INSTITUTO FEDERAL DO ESPÍRITO SANTO Campus Cachoeiro de Itapemirim
Redes TCP/IP alexandref@ifes.edu.br Camada de Transporte 2 Camada de Transporte Função: Fornecer comunicação lógica entre processos de aplicação em diferentes hospedeiros. Os protocolos de transporte são
Leia mais: TMS M
Infraestrutura de Redes de Computadores Turma : TMS 20171.3.01112.1M Camada de Transporte Prof. Thiago Dutra Agenda n Introdução n Protocolos de Transporte Internet n Multiplexação
Leia maisNível de Rede. Funções do nível de rede GCAR
Nível de Rede Funções do nível de rede Multiplexação Endereçamento Mapeamento entre endereços de rede e de enlace Roteamento Estabeleciment/Liberação conexões de rede Controle de Congestionamento 1 Funções
Leia maisNível de Rede. Modelo de Referência OSI GCAR
Nível de Rede Modelo de Referência OSI Camada 1: Física Camada 2: Enlace Camada 3: Rede Camada 4: Transporte Camada 5: Sessão Camada 6: Apresentação Camada 7: Aplicação APLICAÇÃO APRESENTAÇÃO SESSÃO TRANSPORTE
Leia maisProcessos e Threads e em sistemas distribuídos. Prof. Me. Hélio Esperidião
Processos e Threads e em sistemas distribuídos. Prof. Me. Hélio Esperidião Processos Sistemas operacionais modernos criam vários processadores virtuais, cada um para executar um programa. Para monitorar
Leia maisRede de computadores Cliente- servidor. Professor Carlos Muniz
Rede de computadores Professor Carlos Muniz Definição Cliente-servidor é um modelo computacional que separa clientes e servidores, sendo interligados entre si geralmente utilizando-se uma rede de computadores.
Leia maisAula 6: Comunicação entre processos. Instituto Federal da Bahia INF009 - Sistemas Operacionais Profª Flávia Maristela
Aula 6: Comunicação entre processos Instituto Federal da Bahia INF009 - Sistemas Operacionais Profª Flávia Maristela (-- motivação --) Processos em execução no sistema operacional podem ser: Independentes:
Leia maisSistemas Distribuídos
Sistemas Distribuídos LICENCIATURA EM COMPUTAÇÃO Prof. Adriano Avelar Site: www.adrianoavelar.com Email: eam.avelar@gmail.com 1. Que são sistemas abertos? É um sistema que oferece serviços de acordo com
Leia mais08/08/2016. Metodologia de trabalho Sistema de notas Trabalhos Artigos Celulares Presença Entrega de trabalhos Uso de laboratório
Prof. Richard Brosler richard.brosler@aedu.com Metodologia de trabalho Sistema de notas Trabalhos Artigos Celulares Presença Entrega de trabalhos Uso de laboratório Introdução à Programação Concorrente
Leia maisRedes de Computadores
Redes de Computadores Camada de Transporte - Parte II Prof. Thiago Dutra Agenda n Parte I n Introdução n Protocolos de Transporte Internet n Multiplexação e Demultiplexação n
Leia maisA 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 maisFUNDAMENTOS DE REDES DE COMPUTADORES Unidade 5 Camada de Transporte e Aplicação. Luiz Leão
Unidade 5 Camada de Transporte e Aplicação Luiz Leão luizleao@gmail.com http://www.luizleao.com Conteúdo Programático 5.1 Protocolo UDP 5.2 Protocolo TCP 5.3 Principias Protocolos de Aplicação 5.3.1 SMTP
Leia maisSistema de entrada e saída (E/S)- Módulos de E/S; tipos de operações de E/S
Sistema de entrada e saída (E/S)- Módulos de E/S; tipos de operações de E/S Explicitar aos alunos os modelos de entrada e saída em um computador e quais barramentos se aplicam a cada componente: memória,
Leia maisTELECOMUNICAÇÕES Prof. Ricardo Rodrigues Barcelar
- Aula 0 - REVISÃO DE REDES DE COMPUTADORES 1. INTRODUÇÃO Esta é uma revisão que visa trazer a tona alguns conceitos vistos na disciplina de Redes de Computadores vistos no semestre passado. 2. REVISÃO
Leia maisRede de computadores Protocolos UDP. Professor Carlos Muniz
Rede de computadores Professor Carlos Muniz User Datagram Protocol O User Datagram Protocol (UDP) é um protocolo simples da camada de transporte. Ele é descrito na RFC 768 [1] e permite que a aplicação
Leia maisSistemas Operacionais
Sistemas Operacionais I Índice 2 Processos... 1 2.2.5 Semáforos... 1 2.2.6 Monitores... 2 2.2.7 Passagem de Mensagens... 5 2 Processos 2.2.5 Semáforos Para resolver este problema, Dijkstra propôs em 1965
Leia maisRedes de Computadores. Prof. MSc André Y. Kusumoto
Redes de Computadores Prof. MSc André Y. Kusumoto andrekusumoto.unip@gmail.com Nível de Rede Comunicação entre dispositivos de uma mesma rede ocorrem de forma direta. Quando a origem e o destino estão
Leia maisSockets - Conceitos Básicos. COMUNICAÇÃO ENTRE PROCESSOS Sockets. Conceitos Básicos. Tipos de Sockets
Sockets - Conceitos Básicos COMUNICAÇÃO ENTRE PROCESSOS Sockets! Sockets são uma forma de IPC (InterProcess Communication ) fornecida pela 4.3 BSD que fornecem comunicação entre processos residentes em
Leia maisNotas da Aula 10 - Fundamentos de Sistemas Operacionais
Notas da Aula 10 - Fundamentos de Sistemas Operacionais 1. Escalonadores preemptivos Escalonadores preemptivos são aqueles que têm a capacidade de interromper a execução de um processo para realizar alterações
Leia maisSSC0640 Sistemas Operacionais I
SSC0640 Sistemas Operacionais I 11ª Aula Threads Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Slides adaptados de Marcos José Santana / Regina H. C. Santana / Luciana A. F. Martimiano baseados no livro
Leia maisFornecer serviços independentes da tecnologia da subrede; Esconder do nível de transporte o número, tipo e a topologia das subredes existentes;
2.3 A CAMADA DE REDE Fornece serviços para o nível de transporte, sendo, freqüentemente, a interface entre a rede do cliente e a empresa de transporte de dados (p.ex. Embratel). Sua principal função é
Leia maisOrganizaçã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 maisRedes Industriais. Carlos Roberto da Silva Filho, M. Eng.
Redes Industriais Carlos Roberto da Silva Filho, M. Eng. Criado na década de 1970 pela Modicon. É um dos mais antigos protocolos utilizados em redes de CLPs para aquisição de sinais de instrumentos e comandar
Leia maisArquitetura de Computadores Sistemas Operacionais II
Definição de Processo Arquitetura de Computadores Sistemas Operacionais II Processo é o mesmo de Programa? Programa Estrutura estática Instruções + Dados Processo Entidade Ativa Instância de um Programa
Leia maisInterconexão de redes locais. Repetidores. Hubs. Existência de diferentes padrões de rede
Interconexão de redes locais Existência de diferentes padrões de rede necessidade de conectá-los Interconexão pode ocorrer em diferentes âmbitos LAN-LAN LAN: gerente de um determinado setor de uma empresa
Leia maisFundamentos de Sistemas Operacionais
Fundamentos de Sistemas Operacionais Aula 4: Programação Concorrente Diego Passos Últimas Aulas Processos Compostos por: Código (programa). Estado (memória, registradores). Em um sistema com multiprogramação:
Leia maisProf. 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 maisAPLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar
- Aula 3-1. REVISÃO SOBRE CONCEITOS FUNDAMENTAIS DE SISTEMAS DISTRIBUÍDOS Na segunda parte abordamos o tema tolerância a falhas, assunto este muito relacionado a redes de computadores, mas que nos mostra
Leia maisCapítulo 4: Camada de rede
Capítulo 4: Camada de Objetivos do capítulo: entender os princípios por trás dos serviços da camada de : modelos de serviço da camada de repasse versus roteamento como funciona um roteador roteamento (seleção
Leia maisFUNDAMENTOS 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 maisFUNDAMENTOS 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 maisReló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 maisINFO3M ARQ REDES. Prova 1 Bimestre. Obs: Questões RASURADAS são consideradas como ERRADAS GABARITO
INFO3M 2018.1 ARQ REDES Prova 1 Bimestre Obs: Questões RASURADAS são consideradas como ERRADAS GABARITO NOME: MATRÍCULA: Q U E S T Õ E S O B J E T I V A S (Valor de cada questão: 0,5 pts) 1. A técnica
Leia maisArquitetura 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 mais08/02/2017. Metodologia de trabalho Sistema de notas Trabalhos Artigos Celulares Presença Entrega de trabalhos Uso de laboratório
Prof. Richard Brosler richard.brosler@aedu.com http://www.brosler.pro.br Metodologia de trabalho Sistema de notas Trabalhos Artigos Celulares Presença Entrega de trabalhos Uso de laboratório Introdução
Leia maisRedes de Computadores
Prof. Universidade Federal de Mato Grosso do Sul brivaldo@facom.ufms.br 26 de maio de 2017 Visão Geral 1 2 3 4 Protocolos e Serviços de Transporte comunicação lógica entre aplicativos executando em diferentes
Leia maisProgramação de Sistemas Distribuídos e Concorrência
Programação de Sistemas Distribuídos e Concorrência Aula 4 15/08/09 Prof Carlos Eduardo 1 Descentralizadas Arquiteturas centralizadas são distribuições verticais (componentes logicamente diferentes em
Leia maisAplicações com Banco de Dados e Cliente-Servidor
Aplicações com Banco de Dados e Cliente-Servidor Aula #231 EBS 211 POO e UML Prof Luiz Fernando S Coletta luizfsc@tupaunespbr Campus de Tupã Roteiro Rede de computadores; Aplicação cliente/servidor; Sockets
Leia maisSistemas Operacionais II Unix: Memória e E/S. Geraldo Braz Junior
Sistemas Operacionais II Unix: Memória e E/S Geraldo Braz Junior Gerenciamento de Memória Gerenciamento de Memória Espaço de Endereçamento 1. Segmento de código Instruções de máquina que formam o código
Leia maisFundamentos de Sistemas Operacionais
Fundamentos de Sistemas Operacionais Aula 10: Escalonadores Preemptivos Diego Passos Última Aula Escalonadores Não-Preemptivos Escalonadores não-preemptivos agem: Quando um processo requisita E/S. Quando
Leia maisRedes de Computadores
Redes de Computadores Camada de Transporte Parte I Prof. Thiago Dutra Agenda n Parte I n Introdução n Protocolos de Transporte Internet n Multiplexação e n UDP n Parte II n TCP
Leia maisComunicação entre processos COMUNICAÇÃO ENTRE PROCESSOS. Comunicação entre processos - troca de mensagens
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 Sem Memória Compartilhada:
Leia maisRedes de Computadores. Prof. André Y. Kusumoto
Redes de Computadores Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Nível de Transporte Responsável pela comunicação fim-a-fim entre dois ou mais computadores As redes são normalmente complexas
Leia maisTRANSMISSÃ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 maisBarramento. 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 maisO que é um sistema distribuído?
Disciplina: Engenharia de Software 4 Bimestre Aula 1: ENGENHARIA DE SOFTWARE DISTRIBUÍDO O que é um sistema distribuído? Segundo Tanenbaum e Steen (2007) um sistema distribuído é uma coleção de computadores
Leia maisSistemas Operacionais Distribuídos e de Redes
Contextualização Sistemas Operacionais Distribuídos e de Redes Comunicação Interprocessos Aula 04 Aula 04 Aplicação, serviços RMI e RPC Protocolo - (requisição-resposta) marshalling e representaçao externa
Leia maisCOMUNICAÇÃO ENTRE PROCESSOS
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 Sem Memória Compartilhada:
Leia maisComunicação. capítulo
Comunicação capítulo 4 Camadas de protocolos: Modelo OSI Camadas de protocolos: Mensagem Protocolos de baixo nível Estas camadas implementam as funções básicas que envolvem uma rede de computadores: Física:
Leia maisCamada de Transporte Protocolos TCP e UDP
Arquitetura de Redes de Computadores e Tecnologia de Implementação de Redes 2016.1 Camada de Transporte Protocolos TCP e UDP Curso Técnico Integrado em Informática Turma: INT.INF.3M Arquitetura de Redes
Leia maisRedes ATM. Multicast em ATM. Multicast IP em ATM. Multicast no LANE. LANE v.1. Multicast sobre LANE v.1
Redes ATM Padronizada pelo ATM Forum Bandas escaláveis Tecnologia que atende desde LAN até WAN Grande aceitação do mercado, fabricantes e meio acadêmico Multicast em ATM Questões a Considerar Resolução
Leia maisSistemas Operacionais
Sistemas Operacionais Slides adaptados de Prof. Dr. Marcos José Santana, Prof. Dra. Regina Helena Carlucci Santana e Sarita Mazzini Bruschi baseados no livro Sistemas Operacionais Modernos de A. Tanenbaum
Leia maisFundamentos de Sistemas Operacionais
Fundamentos de Sistemas Operacionais Aula 19: Memória Virtual: Introdução Diego Passos Última Aula Paginação Método de gerenciamento de memória mais usado hoje. Espaço de endereçamento de um processo é
Leia maisFundamentos de Sistemas Operacionais. Threads. Prof. Edwar Saliba Júnior Março de Unidade Threads
Threads Prof. Edwar Saliba Júnior Março de 2007 1 Definição Partes de um processo que compartilham mesmo espaço de endereçamento Sub-rotina de um programa executada paralelamente ao programa chamador (execução
Leia maisCurso Sistemas Operacionais Distribuídos
Autor 1ª versão Cristiano A. Costa Local II - UFRGS Revisões V6 2008-2 C. Geyer Curso de Sistemas Operacionais Distribuídos O Modelo Cliente Servidor 1 Curso de Sistemas Operacionais Distribuídos O Modelo
Leia maisLista de Exercícios. Camada de Enlace de Dados
Lista de Exercícios Camada de Enlace de Dados 1. Um pacote de uma camada superior de redes é dividido em 10 quadros, e cada quadro tem 80% de chances de chegar sem danos. Se o protocolo de enlace de dados
Leia maisArquitetura de sistemas distribuídos
Arquitetura de sistemas distribuídos 3. Comunicação nos Sistemas Distribuídos 3.1.Introdução aos modelos de comunicação 3.2 Modelo Cliente-Servidor 3.3.Comunicação através de Sockets 3.3 Chamada a procedimento
Leia maisComunicação entre Processos
Comunicação entre Processos Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda n Comunicação entre Processos n Características dos mecanismos de comunicação Comunicação direta ou indireta, sincronismos,
Leia maisSistemas de Entrada e Saída
Sistemas de Entrada e Saída Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Maio, 2016 1 / 33 Sumário 1 Dispositivos de E/S 2 Interrupções 3 Software de E/S 2
Leia maisComunicação em Rede e Internet. Computação Aplicada à Comunicação e Artes Carlos Eduardo Ba9sta
Comunicação em Rede e Internet Computação Aplicada à Comunicação e Artes Carlos Eduardo Ba9sta Introdução Arquitetura de Sistemas: Sistema Mul9tarefa Sistema Mul9processador Sistemas Distribuídos: Consiste
Leia maisSistemas Operacionais. Escalonamento de processos
Sistemas Operacionais Escalonamento de processos 1 Escalonamento de Processos Sistemas Interativos Algoritmos para Sistemas Interativos: First-Come-First-Served (FIFO) Round-Robin; Prioridade; Múltiplas
Leia maisRedes de Computadores
Redes de Computadores Prof. Marcelo Gonçalves Rubinstein Programa de Pós-Graduação em Engenharia Eletrônica Faculdade de Engenharia Universidade do Estado do Rio de Janeiro Ementa Introdução a Redes de
Leia mais4 Agregação de Quadros
4 Agregação de Quadros Foram implementados no padrão 802.11n diversos mecanismos para melhorar a vazão tanto na camada física quanto na camada MAC. Na camada física, o uso principalmente de MIMO, OFDM
Leia maisSistemas Distribuídos
Introdução: Comunicação, e Coordenação março de 2015 Comunicação entre Processos troca de mensagens é sempre a primitiva básica sobre essa primitiva podemos construir outras visões da comunicação Mensagens
Leia maisEscalonamento em Sistemas Distribuídos
Escalonamento em Sistemas Distribuídos Cláudia Fernanda O. K. Tavares Roteiro Introdução Informações do nodos Overhead Classificação de Algoritmos Algoritmos de Escalonamento Referências Introdução Heterogeneidade
Leia maisComunicaçã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 maisComunicações por transações. Grupo 3. Lisiê Tieko Nakasone Tatiane Fernanda Silva Galinari. Orientador: Profº Norian Marranguello
Comunicações por transações Grupo 3 Lisiê Tieko Nakasone Tatiane Fernanda Silva Galinari Orientador: Profº Norian Marranguello São José do Rio Preto, 17 de abril de 2002 Sumário 1. Endereçamento 1.1. Endereçamento
Leia maisSistemas de Arquivos Distribuídos. Bruno M. Carvalho Sala: 3F2 Horário: 35M34
Sistemas de Arquivos Distribuídos Bruno M. Carvalho Sala: 3F2 Horário: 35M34 Introdução Serviço de arquivos descreve os serviços oferecidos pelo sistema de arquivos aos clientes Servidor de arquivos processo
Leia maisÍNDICE. Redes de Computadores - 1º Período de Cap 12 - Fls. 1
ÍNDICE 12. Sistemas Operacionais de Redes 2 12.1. Conceito 2 12.2. Redirecionador 3 12.3. Arquiteturas 3 12.4. Par a Par 4 12.5. Cliente-Servidor 4 12.6. Os Sistemas Operacionais de Redes e as Arquiteturas
Leia maisParte 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 maisLista de exercícios - 1º bimestre 2016 REDES
Lista de exercícios - 1º bimestre 2016 REDES Jean Nicandros Stragalinos Neto. Prontuário: 1616251. Curso: ADS 2º Módulo. 1) Desenhe duas redes com 7 e 8 computadores e defina a configuração IP de cada
Leia maisEndereços de transporte TPDU. Nível de Rede Endereço de rede. Figura 1. Entidade de transporte
24 A CAMADA DE TRANSPORTE! O nível de transporte é o coração da pilha de protocolos Sua tarefa é prover transporte confiável e eficiente de dados de uma máquina origem para uma máquina destino, independente
Leia maisSistemas 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 maisComunicação entre Processos
Comunicação entre Processos Prof. Leonardo Barreto Campos http://sites.google.com/sitew/leonardobcampos 1/29 Sumário Introdução Comunicação entre Processos: Soquetes Comunicação por datagrama UDP Comunicação
Leia maisINTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO ORGANIZAÇÃO COMPUTACIONAL
INTRODUÇÃO À TECNOLOGIA DA ORGANIZAÇÃO COMPUTACIONAL PROFESSOR CARLOS MUNIZ ORGANIZAÇÃO DE UM COMPUTADOR TÍPICO Memória: Armazena dados e programas Processador (CPU - Central Processing Unit): Executa
Leia maisCapítulo 2. Multiprogramação. Conteúdo. Objetivo. Recordando. Recordando. DCA-108 Sistemas Operacionais
DCA-108 Sistemas Operacionais Capítulo 2 Luiz Affonso Guedes www.dca.ufrn.br/~affonso affonso@dca.ufrn.br Multiprogramação Luiz Affonso Guedes 1 Luiz Affonso Guedes 2 Conteúdo Caracterização de um SO Moderno
Leia maisSSC0641 Redes de Computadores
SSC0641 Redes de Computadores Capítulo 4 Camada de Rede 4.1 a 4.3 Prof. J ó Ueyama Abril/2011 SSC0641-2011 1 Objetivos do Capítulo 4 Camada de Rede Entender os princípios dos serviços da camada de rede:
Leia maisLICENCIATURA EM COMPUTAÇÃO. Resenha Livro Sistemas Operacionais 4ª edição Capítulo quatro: Gerencia do processador
LICENCIATURA EM COMPUTAÇÃO Resenha Livro Sistemas Operacionais 4ª edição Capítulo quatro: Gerencia do processador SANTO AMARO 2012 JEANDERVAL SANTOS DO CARMO RESENHA Resenha do quarto capítulo: Gerencia
Leia maisAula 04. Capítulo 3 Gerência de Processos. 3.1 Conceito de Processo. 3.2 Escalonamento de Processos. 3.3 Opera ões sobre Processos
Aula 04 Capítulo 3 Gerência de Processos 3.1 Conceito de Processo 3.2 Escalonamento de Processos 3.3 Opera ões sobre Processos 3.4 Comunica ão entre Processos 3.1 Conceito de Processo Um sistema operacional
Leia maisCapítulo 13: Sistemas de E/S. Operating System Concepts with Java 7th Edition, Nov 15, 2006
Capítulo 13: Sistemas de E/S Capítulo 13: Sistemas de E/S Hardware de E/S Interface de E/S da aplicação Subsistema de E/S do kernel Transformando requisições de E/S em operações de hardware Fluxos Desempenho
Leia maisRedes de Computadores Aula 5
Redes de Computadores Aula 5 Aula passada DNS Sockets Programação com sockets Teste relâmpago Aula de hoje Camada de transporte Multiplexação Princípios de transmissão confiável Stop and wait Camada de
Leia maisRedes 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 maisModelo 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