TRABALHO DE FINAL DE CURSO

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

Download "TRABALHO DE FINAL DE CURSO"

Transcrição

1 UNIMINAS CURSO DE SISTEMAS DE INFORMAÇÃO TRABALHO DE FINAL DE CURSO Estudo de um Modelo de Cluster baseado em um Ambiente WMPI Marcel Fagundes Souza 2004

2 ii Marcel Fagundes Souza Estudo de um Modelo de Cluster baseado em um Ambiente WMPI Trabalho de final de curso apresentado à UNIMINAS, como requisito parcial à obtenção do título de Bacharel em Sistemas de Informação. Orientador: M.Sc. Johann Max Hofmann Magalhães. UBERLÂNDIA 2004

3 iii Marcel Fagundes Souza Estudo de um Modelo de Cluster baseado em um Ambiente WMPI Trabalho de final de curso apresentado à UNIMINAS, para obtenção do título de Bacharel em Sistemas de Informação. Banca Examinadora: Uberlândia, 06 de Julho de Professor: M.Sc. Johann Max Hofmann Magalhães Professora: Dra. Kátia Lopes Silva Professor: Esp. Alexandre Rangel Professor: Dr. Mauro Hemerly Gazzani

4 iv RESUMO A enorme quantidade de dados e a enorme necessidade de rapidez no cálculo dos algoritmos atuais exigem a busca de alternativas para problema de processamento. Uma solução foi utilizar o conceito de paralelismo para distribuir as tarefas tornando a obtenção dos resultados mais rápidos. Com o uso de clusters e bibliotecas MPI (Message Passing Interface), aplicações eficientes e economicamente viáveis podem ser construídas. Nestes sistemas paralelos o tempo de processamento constitui um importante fator a ser considerado. Este trabalho aborda uma solução de cluster em software utilizando-se várias estações interligadas em uma rede de alta velocidade. Neste trabalho utiliza-se o software WMPI II (Windows Message Passing Interface) que usa um programa para o cálculo do PI. Foram analisados os testes de desempenho na aplicação com objetivo de observar o alto desempenho no processamento paralelo. Através dos testes de desempenho, observa-se que com a adição de novas máquinas aumenta no ambiente paralelo, obtém-se um melhor desempenho no processamento da aplicação. Com esses testes pode-se compreender melhor o comportamento. Palavras-Chaves: cluster, MPI, WMPI II, Sistemas Paralelos, Programação Concorrente.

5 v ABSTRACT The enormous amount of data and the enormous necessity of agility in calculation of the current algorithms, demands the search of alternatives for processing problems. A solution was to use the concept of parallelism to distribute the tasks becoming the attainment of the results faster. With the use of clusters and MPI (Message Passing Interface) libraries, efficient and economically applications can be constructed. In these parallel systems the processing time constitutes an important factor to be considered. This work approaches cluster solution in software using some linked stations in one net of high speed. In this work, software WMPI II (Windows Message Passing Interface) is used to program the calculation of PI. The tests of performance in the application had been analyzed with the objective of observing the high performance in the parallel processing. Through the tests of performance, it is observed that with the addition of new machines in parallel environment, it gets one better performance in the processing of application. With these tests the behavior can be understood better. Key-Words: cluster, MPI, WMPI II, Parallel Systems, Concurrent Programming.

6 vi SUMÁRIO p. 1. INTRODUÇÃO SISTEMAS DISTRIBUÍDOS Vantagens e desvantagens dos Sistemas Distribuídos Processamento Paralelo CLUSTER DE COMPUTADORES Cluster de alta performance de computação distribuída Cluster Beowulf BPROC Beowulf distribuited PROCess space MPI Interface de Passagem de Mensagens PVM Máquina Virtual Paralela Exemplos de Aplicação ESTUDO DE UM MODELO DE CLUSTER BASEADO EM UM AMBIENTE WMPI II Cluster WMPI II Primitivas de Comunicação Requisitos do Sistema para instalação do WMPI II Iniciando a Instalação do WMPI II Ambiente de Simulação do Cluster WMPI II Aplicação WMPI II Análise de Desempenho do Cluster WMPI II Resultados obtidos CONCLUSÃO REFERÊNCIAS BIBLIOGRÁFICAS...50

7 vii LISTA DE TABELAS TABELA 1 - Requisitos do Servidor, (CRITICAL SOFTWARE, 1996)...34 TABELA 2 - Requisitos da Estação, (CRITICAL SOFTWARE, 1996)...35

8 viii LISTA DE SIGLAS BPROC CESDIS MPI PVM RAM NASA RPC TCP/IP UTP VLSI WMPI - Beowulf distribuited Process Space - Centro de Excelência em Dados Espaciais - Message Passing Interface - Parallel Virtual Machine - Random Access Memory - Agência Espacial Americana - Remote Procedure Call - Transmission Control Protocol/ Internet Protocol - Unshielded Twisted Pair - Very Large Scale Integration - Windows Message Passing Interface

9 ix LISTA DE FIGURAS FIGURA 1 - Representação do Processamento Paralelo, (ALVES. 2002)...15 FIGURA 2 - Representação de concorrência em uma tarefa...17 FIGURA 3 - Representação do Cluster de Computadores...18 FIGURA 4 - Representação do Funcionamento do Cluster de Computadores.19 FIGURA 5 - Arquitetura do Cluster...21 FIGURA 6 - Representação do Cluster Wiglaf, (STERLING; BECKER. 1994). 23 FIGURA 7 - Visão dos Processos no BPROC, (ALVES. 2002) FIGURA 8 - Representação da Distribuição do Problema no MPI, (MPI FORUM. 1995) FIGURA 9 - Representação do Funcionamento do PVM, (ALVES. 2002)...27 FIGURA 10 - Ilustração do ambiente gráfico XPVM, (GEIST; BEGUELIN; DONGARRA; JIANG; MANCHEK; SUNDERAM, 1994)...28 FIGURA 11 - Representação do Funcionamento do WMPI...32 FIGURA 12 - Tela do Início da Instalação...36 FIGURA 13 - Tela de opções de instalação...36 FIGURA 14 - Tela de validação de Licença...37 FIGURA 15 - Tela de estações do domínio da Rede...37 FIGURA 16 - Tela de diretório de destino...38 FIGURA 17 - Ambiente paralelo do Cluster WMPI...39 FIGURA 18 - Início da Execução do Cálculo do PI...41 FIGURA 19 - Envio das Tarefas para as Estações do Cluster...41 FIGURA 20 - Resultado do Cálculo do PI aproximado...42 FIGURA 21 - Ilustração do Monitor de Performance...42 FIGURA 22 - Desempenho do Cluster WMPI II com um Nó (Servidor)...43 FIGURA 23 - Desempenho do Cluster WMPI II com dois Nós (Servidor e uma estação)...44 FIGURA 24 - Desempenho do Cluster WMPI II com três Nós (Servidor e duas estações)...44 FIGURA 25 - Desempenho do Cluster WMPI II com quatro Nós (Servidor e três estações)...45 FIGURA 26 - Desempenho do Uso de Memória para execução da Aplicação

10 x WMPI II...45 FIGURA 27 - Desempenho do Uso de Processamento na execução da Aplicação WMPI II...46 FIGURA 28 - Desempenho de Tempo de execução da Aplicação WMPI II...46 Figura 29 - Desempenho do Cluster WMPI II com todas as configurações...47

11 1. INTRODUÇÃO O homem busca explicações para os fenômenos reais através de equações muito complexas, com um número elevado de variáveis e enormes quantidades de dados. Ainda não foi atingido um poder de processamento suficiente para todas aplicações existentes e para as que surgirão com o desenvolvimento de novas tecnologias. Cada vez que se aumenta o poder de processamento dos computadores, aumentam-se as expectativas e possibilidades do que pode ser feito. Porém, estes novos processadores mais rápidos trazem um aumento de custos tornando-se a tecnologia inviável. Devido ao alto custo no desenvolvimento de processamento paralelo por hardware, o que torna a tecnologia cara por sua complexidade, foi necessário propor uma alternativa viável e eficiente. A solução encontrada foi simular esse paralelismo utilizando software, que simula perfeitamente o ambiente paralelo e apresenta inúmeras vantagens de custo benefício. A maior parte do tempo os computadores ficam em um estado de ociosidade, e em outros momentos percebe-se que o computador está muito lento devido a um processamento de aplicações pesadas. No contexto de se ter dois ou mais computadores em uma rede, a probabilidade de um computador estar lento e o outro completamente ocioso é muito grande. A idéia dos clusters é dividir o processamento das aplicações pesadas através das máquinas da rede que estão ociosas para aumentar o poder de processamento. O cluster é uma solução viável para aplicações que exigem alto poder de processamento, que apenas os supercomputadores eram utilizados para esse fim até pouco tempo atrás. Apesar de todas as vantagens para adotar as tecnologias de Processamento Distribuído, o cluster baseado na implementação do padrão MPI (Message Passing Interface), chamado WMPI II (Windows Message Passing Interface), consegue simular perfeitamente o ambiente paralelo, com uma grande vantagem, custo de implantação muito mais acessível. O único

12 12 requisito necessário para usar essa implementação, é que a aplicação deverá ser desenvolvida para funcionar no ambiente WMPI II. Desta maneira, este trabalho propõe um estudo de um modelo de cluster baseado em um ambiente WMPI, com o intuito de observar o desempenho quando se altera a quantidade de máquinas compondo o cluster. Assim, este trabalho está organizado da seguinte maneira. O capítulo 2 descreve o surgimento da tecnologia denominada de Sistema Distribuído, suas características, vantagens, desvantagens e o futuro da tecnologia. Este capítulo define os conceitos sobre Processamento Distribuído, mostrando a diferença entre a concorrência e o paralelismo de processos. No capítulo 3 são mostradas as características do cluster de computadores, descrição dos tipos de cluster e os componentes que o compõe. O capítulo também apresenta uma abordagem detalhada dos clusters de alta performance de computação, cluster Beowulf, que traz as modificações no núcleo do sistema operacional e o cluster que implementa sistema de comunicação de passagem de mensagens, PVM (Parallel Virtual Machine) ou MPI (Message Passing Interface). São ainda mostrados alguns exemplos de aplicações de cluster de computadores. No capítulo 4 é apresentado um estudo de um modelo de cluster baseado em um ambiente WMPI II, onde são analisados os resultados de testes do processamento da aplicação que faz o cálculo do valor de PI. Além disso uma abordagem dos requisitos de instalação e o funcionamento do WMPI II, detalhando a instalação do cluster em quatro estações. E, finalmente, o capítulo 5 apresenta as conclusões deste trabalho e sugestões para alguns temas a serem abordados em trabalhos futuros.

13 13 2. SISTEMAS DISTRIBUÍDOS A Internet representa um recurso global sob a forma de informações e conhecimentos, que resultou no surgimento de uma grande variedade de provedores de serviços de informações. O Correio Eletrônico, transferência de arquivos, comércio eletrônico, serviços de multimídia e videoconferência, etc, são exemplos de serviços disponíveis na Internet que permitem a troca de informações entre outras possibilidades. A Internet é considerado como um sistema distribuído, fornecendo os mesmos pré-requisitos para serviços em todo o mundo, proporcionando interconectar computadores em âmbito mundial, promovendo facilidades para futuras mudanças, rapidez nas trocas de informações e confiabilidade na execução dos processos. Um Sistema Distribuído pode ser definido como os componentes de hardware ou software localizados em uma rede de computadores que permitem que várias tarefas de uma aplicação sejam divididas em diferentes partes. Essas tarefas se comunicam através de redes de comunicação, e cada tarefa é processada em um sistema independente (COULOURIS ; DOLLIMORE; KINDBERD. 2001). O objetivo do sistema distribuído é criar um ambiente com um único sistema de tempo compartilhado (time-sharing), ou seja, estas máquinas distintas aparecem como se fosse um único computador. Portanto, um Sistema Distribuído é aquele que distribui tarefas em um conjunto de máquinas sem compartilhamento de memória. (TANENBAUM e TANENBAUM. 1992) Vantagens e desvantagens dos Sistemas Distribuídos Os sistemas distribuídos possuem as seguintes vantagens: Transparência: Possui um único ambiente virtual, ou seja, qualquer processo pode ser executado em qualquer máquina da rede, sendo escolhida pelo sistema, conforme a disponibilidade no momento;

14 14 Confiabilidade: Caracterizado pela alta disponibilidade dos serviços, ou seja, utilizam os vários equipamentos em conjunto para manter o serviço sempre disponível. Os sistemas distribuídos podem ser potencialmente confiáveis devido à multiplicidade e a um certo grau de autonomia de suas partes, se algum equipamento falhar ou parar, o sistema delega as tarefas a uma outra máquina, replicando os dados, evitando que as máquinas fiquem paradas ou ociosas. Este sistema também pode ser chamado de tolerância à falhas. O aspecto da confiabilidade global é a segurança. Os dados não podem sofrer qualquer tipo de adulteração ou perder-se; Concorrência: É caracterizado pelo compartilhamento de recursos com uma melhor utilização da carga de processamento entre todas as máquinas; Escalabilidade: Capacidade de agregar novos recursos ao sistema, tanto hardware quanto software, sejam adicionados à medida que há necessidade de novos recursos ou de aumento do poder de processamento; Flexibilidade: É muito importante que o sistema seja flexível às decisões do projeto, permitindo mudanças no sistema, caso necessite. Heterogeneidade: Diversidade de elementos computacionais. Como plataforma de hardware ou software. Um sistema quando não funciona bem, apresenta como conseqüências resultados incorretos. A causa dos erros é a presença de defeitos ou interferências indevidas, que aparecem tanto no nível de hardware quanto de software. Apesar das vantagens dos sistemas distribuídos, existem algumas desvantagens. O primeiro problema potencial das redes é a possibilidade de ficarem sobrecarregadas com o tráfego gerado pelo intercâmbio de mensagens. O segundo problema está relacionado com a segurança dos

15 15 dados, se os dados não tiverem uma política de segurança, podem ser acessíveis com grande facilidade. À medida que os sistemas distribuídos tornam-se mais difundidos, cresce a demanda por sistemas que nunca falham. Os sistemas atuais não preenchem esta necessidade. Obviamente, os sistemas tolerantes a falhas vão precisar de considerável redundância do hardware e da infra-estrutura de comunicação. Também será necessária a redundância do software e mais especificamente dos dados. A replicação de arquivos será uma questão essencial para os futuros sistemas. Os sistemas terão que ser projetados de maneira a funcionar quando somente parte dos dados estiverem disponíveis, uma vez que a insistência em se ter todos os dados disponíveis todo o tempo não leva a sistemas tolerantes à falhas. Vale observar que o fato de se ter o sistema indisponível por alguns instantes é considerado aceitável, torna-se cada vez menos razoável, à medida que o computador vai sendo difundido e usado por não-especialistas Processamento Paralelo Processamento Paralelo é um método utilizado em tarefas grandes e complexas para obter resultados na forma mais rápida possível. Consiste em dividir uma grande tarefa em tarefas pequenas que serão distribuídas em vários processadores para serem executadas simultaneamente (ALVES. 2002), conforme mostra FIGURA 1. Tarefa 1 Processador A Tarefas Grandes e Complexas Tarefa 2 Processador B Tarefa 3 Processador C FIGURA 1 - Representação do Processamento Paralelo, (ALVES. 2002).

16 16 Concorrência de Processos é a capacidade de vários programas poderem estar residentes em memória, concorrendo pela utilização do processador (TANENBAUM, WOODHULL e TANENBAUM. 1997). Dessa forma, quando um programa solicita uma operação de entrada / saída, outros programas poderão estar disponíveis para utilizar o processador. Nesse caso, o processador permanece menos tempo ocioso e a memória principal é utilizada de forma mais eficiente, pois existem vários programas residentes se revezando na utilização do processador. A multiprogramação é a utilização do conceito de concorrência de processos para implementação do mesmo, sendo implementada de maneira que, quando um programa perde o uso do processador e depois retoma para continuar o processamento, seu estado deve ser idêntico ao do momento em que foi interrompido. O programa deverá continuar sua execução exatamente na instrução seguinte àquela em que havia parado, aparentando ao usuário que nada aconteceu. Em sistemas de tempo compartilhado, é como o computador estivesse inteiramente dedicado ao usuário, ficando todo esse mecanismo transparente para ele. Não se deve confundir o conceito de concorrência com o conceito de paralelismo. As partes concorrentes de um programa são aquelas que podem ser calculadas independentemente, e as partes paralelas de um programa são aquelas partes concorrentes que podem ser executadas sobre elementos de processamento separados ao mesmo tempo, conforme é mostrado na FIGURA 2. Desse modo, a concorrência é uma propriedade do programa e o paralelismo eficiente é uma propriedade do sistema distribuído. A execução paralela resulta em um melhor desempenho. O fator limitante ao desempenho paralelo pode ser a latência e a velocidade da comunicação entre os nós. Para obter um algoritmo paralelo é importante determinar quais as partes concorrentes do programa podem ser executadas em paralelo e quais não. É tarefa dos programadores estabelecerem os níveis de paralelismo da aplicação.

17 17 Tarefa 1 Processo A Processo B Processo n FIGURA 2 - Representação de concorrência em uma tarefa

18 18 3. CLUSTER DE COMPUTADORES A partir da década de 80 as redes de computadores evoluíram permitindo a transferência de informações entre as máquinas com velocidades de frações de segundos. Com o avanço tecnológico dos circuitos integrados de larga escala de integração VLSI (Very Large Scale Integration), pode-se utilizar o conceito de paralelismo pelo hardware com a finalidade de aumentar a velocidade de processamento. Isto tornou a tecnologia muito cara, obrigandose a buscar novas alternativas para obtenção de ambiente distribuído (TANENBAUM. 1995). Desse modo o cluster de computadores tem sido utilizado em substituição das arquiteturas paralelas como alternativa viável, preenchendo os requisitos do processamento paralelo pelo hardware. Cluster de computadores é um conjunto de computadores interligados por uma rede de comunicação para obter processamento paralelo, ou seja, essas máquinas agrupadas pela rede formam um computador virtual de grande poder de processamento, (ALVES. 2002), como é mostrado na FIGURA 3. FIGURA 3 - Representação do Cluster de Computadores

19 19 O Cluster de computadores é caracterizado por um sistema computacional distribuído que consta de vários processadores independentes que não compartilham memória RAM (Random Access Memory). Cada processador em um sistema executa seu próprio fluxo de instruções e usa seus próprios dados locais, armazenando ambos na memória local. O cluster é composto por um servidor também chamado de mestre, responsável pela distribuição das tarefas, e pelos clientes que também pode ser chamado de escravos, responsáveis pelo processamento das tarefas. Para que o sistema funcione é necessário um servidor, vários clientes, uma biblioteca para troca de mensagens e o hardware para conexão via rede dos diversos computadores. O princípio de funcionamento do cluster é simples. O servidor divide as tarefas, com as partes independentes, chamadas concorrentes, e a seguir o servidor distribui estas tarefas entre os vários computadores clientes que fazem parte do cluster. As tarefas são processadas e então os resultados são encaminhados para o servidor, como mostra a FIGURA 4. FIGURA 4 - Representação do Funcionamento do Cluster de Computadores

20 20 Os clusters de computadores são classificados nos seguintes tipos: Cluster de alta disponibilidade de computação: Este cluster é caracterizado pela alta disponibilidade dos serviços, ou seja, utilizam vários equipamentos em conjunto para manter o serviço sempre disponível, replicando os dados e evitando que as máquinas fiquem paradas ou ociosas. Este cluster fica à espera de um equipamento falhar ou parar, delegando as tarefas a uma outra máquina. Perdas na performance ou na capacidade de processamento são normalmente aceitáveis; o objetivo principal é não parar. Cluster de Balanceamento de Cargas: Consiste em balancear cargas entre servidores, para garantir e assegurar que cada servidor não seja utilizado completamente. Esse sistema realiza a distribuição de maneira equilibrada entre os servidores. Os sistemas dos servidores, não trabalham juntos em um único processo, mas redirecionando as requisições de forma independente assim que chegam, baseados em um escalonador e um algoritmo próprio. Cluster Combinando Alta Disponibilidade e Balanceamento de Carga: Este cluster combina alta performance aliada à possibilidade da não existência de paradas críticas. Podendo ser usado como uma solução perfeita para provedores de Internet e aplicações de rede nas quais a continuidade de suas operações é muito crítica. Cluster de alta performance de computação distribuída: É caracterizado por um conjunto de computadores interligados usando o recurso de paralelismo e distribuição dos dados. Este cluster indicado para uso de aplicações que necessitam de alto desempenho. Como exemplo, processamento de imagens, cálculos científicos, etc.

21 Cluster de alta performance de computação distribuída Este cluster fornece infra-estrutura necessária para a comunicação e sincronização entre processos espalhados pelos nós. A FIGURA 5 ilustra as principais características da arquitetura de um cluster. Como se pode observar, um conjunto de máquinas conectadas através de uma rede de comunicação e um switch são utilizados para comunicação de aplicações seqüenciais e paralelas. Cada uma destas estações possui uma interface de rede, responsável por enviar e receber dados. O ambiente de um sistema de processamento integrado é único e é uma característica observada nos clusters. Este ambiente é gerado com suporte de um middleware, que não somente possibilita o processamento paralelo e distribuído, mas também permite a execução de aplicações seqüenciais. Para possibilitar a execução de programas paralelos, é necessária uma ferramenta de programação paralela, que tem biblioteca de passagem de mensagens. FIGURA 5 - Arquitetura do Cluster A arquitetura de um cluster consiste em um conjunto de máquinas formado por um servidor e clientes conectados por uma rede de comunicação. Estas máquinas executam um sistema operacional que implementa estruturas

22 22 de passagens de mensagens, PVM ou MPI, sendo necessária aplicações paralelas para utilizar este recurso paralelo. O ambiente de programação oferece os mecanismos necessários para desenvolvimento de aplicações paralelas, (CULLER; SINGH; GUPTA. 1999). O BPROC (Beowulf distribuited PROCess space), é uma outra implementação que modifica o núcleo do sistema operacional para iniciar processos em outras máquinas. Esta implementação não necessita de aplicações paralelas, ou seja, o paralelismo é transparente para a aplicação Cluster Beowulf O nome Beowulf foi tomado emprestado de um dos mais antigos poemas épicos da literatura inglesa do século VI. Este poema conta a estória de um herói de grande força e valentia em sua saga para derrotar o monstro de Grendel. O primeiro cluster Beowulf foi desenvolvido pelo CESDIS (Centro de Excelência em Dados Espaciais e Informações Cientificas) da NASA (Agência Espacial Americana) e no Centro Espacial Goddard em Greenbelt, Maryland, no ano de 1994, com o objetivo do tratamento de informações recolhidas por satélites, (STERLING; BECKER. 1994). Este Cluster chamado Wiglaf, ilustrado na FIGURA 6, era formado por 16 processadores Intel 486DX4 100MHz conectados em um hub Ethernet de 10Mbps, 16MB de memória RAM com 60ns, discos de 540MB padrão de barramento IDE. O sistema operacional usado foi o LINUX de licença GNU 1 (General Public License), o mesmo já implementava estruturas necessárias para passagem de dados MPI (Message Passing Interface) e para o gerenciamento de máquinas virtuais paralelas PVM (Parallel Virtual Machine). Atualmente, já existem clusters Beowulf com mais de 150 nós com desempenho muito acima dos 50 Gigaflops 2, (STERLING; BECKER. 1994). 1 A GNU permite a liberdade de distribuição cópias e mudanças de softwares. 2 Medida de desempenho, bilhões de operações de ponto flutuante que um processador pode executar por segundo.

23 23 FIGURA 6 - Representação do Cluster Wiglaf, (STERLING; BECKER. 1994) BPROC Beowulf distribuited PROCess space O BPROC é um conjunto de modificações no núcleo do sistema operacional com a função de iniciar processos das máquinas mestres nas máquinas escravas. O objetivo do BPROC é criar uma visão única para os processos, utilizando mecanismos para gestão de processos nos diversos nós do sistema através do frontend do cluster, sem a necessidade do uso do protocolo remote shell 3 (rsh), nem o remote login 4 (rlogin). O espaço único de processos distribuídos permite representar os processos de qualquer nó na tabela de processos do frontend, de forma a ser possível a comunicação entre eles como se estivessem em um mesmo local, ou seja, como se fizesse parte de uma única fila de seqüência de um PCB (Bloco de Controle de Processos). O BPROC não faz o gerenciamento de recursos, nem a distribuição de carga, necessitando do uso de ferramentas de escalonamentos de processos. Para criar o ambiente distribuído, o daemon tem que ser iniciado no servidor e nos clientes. O servidor distribui os processos. As estações aceitam os processos de outros nós daemon. Cada nó pode executar múltiplos slave daemon, mas apenas pode ter um master daemon, como mostra a FIGURA 7. 3 Inicia uma sessão terminal em um host no host remoto.

24 24 FIGURA 7 - Visão dos Processos no BPROC, (ALVES. 2002) MPI Interface de Passagem de Mensagens A biblioteca MPI foi desenvolvida em 1993 por várias entidades de pesquisa. A MPI é uma biblioteca criada para comunicação de processos em ambientes de memória distribuída. Possui rotinas para facilitar a comunicação, troca de dados e sincronização entre processos em memória. Essa biblioteca foi desenvolvida para ser padrão de comunicação entre processos em ambiente de memória distribuída (MPI FORUM. 1995). A FIGURA 8 mostra o funcionamento da biblioteca MPI. A execução de uma aplicação executando esta API 5 (Interface de Programação de Aplicações) inicia um procedimento que dispara através de um processo pai seus processos filhos para serem executados remotamente nos computadores escravos do cluster. 4 Executa o comando no host. 5 É um conjunto normalizado de rotinas e chamadas de software que podem ser referenciadas por um programa aplicativo para acessar serviços essenciais de uma rede.

25 25 FIGURA 8 - Representação da Distribuição do Problema no MPI, (MPI FORUM. 1995). Cada processo executa e se comunica com outras instâncias do programa, possibilitando que a execução no mesmo processador seja distribuída entre diversos processadores. A comunicação básica consiste em enviar e receber dados de um processador para outro. Esta comunicação se dá através de uma rede de alta velocidade, na qual os processos estão em um sistema de memória distribuída. Os pacotes de dados enviados pelo MPI requerem várias partes da informação: o processo transmissor, o processo receptor, o endereço inicial de memória onde os itens de dados deverão ser mandados e a mensagem. No desenvolvimento de uma aplicação o programador ficará sob responsabilidade de identificar o paralelismo e implementar um algoritmo utilizando construções com a biblioteca MPI.

26 PVM Máquina Virtual Paralela A biblioteca de programação paralela PVM foi criada em 1989 pelo Heterogeneus Network Project em conjunto com a Oak Ridge National Laboratory, University of Tennesse, Emory University e Carneige Mellon University com intuído de trabalhar com as redes de comunicações heterogêneas, (GEIST; BEGUELIN; DONGARRA; JIANG; MANCHEK; SUNDERAM. 1994). O PVM é um conjunto de ferramentas integradas que possibilita a uma rede heterogênea conectar computadores de várias arquiteturas, formando um grande computador virtual paralelo. O software é portátil, isto é, trabalha com várias plataformas de sistemas operacionais. Esta API permite que programadores utilizem computação distribuída para desenvolver aplicações paralelas sob o conceito de passagem de mensagens. O cluster em PVM consiste basicamente de processos que trocam mensagens em uma rede de comunicação. As mensagens são empacotadas no objeto STUB com as informações do identificador do objeto a serem usadas, as descrições do método a ser chamado e os parâmetros, e desempacotadas pelo processo do receptor. A FIGURA 9 mostra o esquema de funcionamento do PVM. Ele é composto de duas partes. O primeiro processo pvmd3 que é um daemon 6 que fica em todas as estações do cluster. Quando é necessário executar uma aplicação PVM, o daemon é executado em uma das estações que fica encarregada de chamar outros processos daemons pvmd3 escravos em cada computador da máquina virtual paralela. A aplicação PVM pode então ser executada em um Shell UNIX em qualquer parte do cluster. A segunda parte do sistema PVM é uma biblioteca de rotinas PVM que são chamadas pelo usuário para passagem de mensagens, criação de 6 São processos criados no momento do boot do sistema operacional e continuam executando até o encerramento do sistema.

27 27 processos, sincronização de tarefas e processos. As aplicações devem estar conectadas com esta biblioteca para usar o ambiente paralelo criado pelo PVM. FIGURA 9 - Representação do Funcionamento do PVM, (ALVES. 2002). O XPVM é um ambiente gráfico que mostra as informações e fornece acesso aos comandos do console PVM, como é ilustrado na FIGURA 10. Este ambiente gráfico serve como um monitor de desempenho em tempo real das tarefas do PVM. Quando o XPVM é executado, o arquivo do PVM é consultado para ver quais os clientes escravos estão disponíveis no momento. Quando é necessário estabelecer conexão com uma máquina, outro arquivo do PVM é consultado para autenticação.

APLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com

APLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com - Aula 6 - ALGORÍTIMOS PARALELOS MPI - Parallel Virtual Machine e PVM - Parallel Virtual Machine 1. INTRODUÇÃO Inicialmente é necessário conceber alguns conceitos para entendimento dos algoritmos paralelos:

Leia mais

Desenvolvimento de um Cluster de Alto Desempenho com PVM

Desenvolvimento de um Cluster de Alto Desempenho com PVM Desenvolvimento de um Cluster de Alto Desempenho com PVM Daniel Cândido de Oliveira 1, Yzaac Gonçalves da Silva 1, Madianita Bogo 1 1 Centro Universitário Luterano de Palmas Universidade Luterana do Brasil

Leia mais

4 Computação Paralela 4.1. Introdução

4 Computação Paralela 4.1. Introdução 4 Computação Paralela 4.1. Introdução Nos últimos anos observa-se uma tendência cada vez maior do aumento da demanda computacional na resolução de grandes problemas. Exemplos de aplicações que exigem alto

Leia mais

Cluster HPC High Performance Computing.

Cluster HPC High Performance Computing. Faculdade de Tecnologia de Guaratinguetá. doze, março de 2009. Cluster HPC High Performance Computing. Diogo Salles, Thiago Pirro, Camilo Bernardes, Paulo Roberto, Ricardo Godoi, Douglas, Fauzer. Sistemas

Leia mais

Resumo. Introdução Cluster Cluster Beowulf Curiosidades Conclução

Resumo. Introdução Cluster Cluster Beowulf Curiosidades Conclução Cluster Resumo Introdução Cluster Cluster Beowulf Curiosidades Conclução Introdução Sua empresa esta precisando fazer um grande processamento; As Nuvens existentes não são suficientes para sua empresa;

Leia mais

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

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

Leia mais

hvbacellar@gmail.com Palavras-chave Cluster; Beowulf; OpenMosix; MPI; PVM.

hvbacellar@gmail.com Palavras-chave Cluster; Beowulf; OpenMosix; MPI; PVM. Cluster: Computação de Alto Desempenho Hilário Viana Bacellar Instituto de Computação, Universidade Estadual de Campinas Av. Albert Einstein 1251, Cidade Universitária, CEP 13083-970 Campinas, SP, Brasil

Leia mais

Tipos de Sistemas Distribuídos (Cluster e Grid)

Tipos de Sistemas Distribuídos (Cluster e Grid) Tipos de Sistemas Distribuídos (Cluster e Grid) Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência

Leia mais

APLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com

APLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com - Aula 4 - CLUSTER DE COMPUTADORES 1. INTRODUÇÃO Grande parte do tempo, os computadores que utilizamos encontram-se ociosos, ou seja, sem nada para processar. Isso se deve, em grande parte, pelas aplicações

Leia mais

Sistemas Paralelos e Distribuídos. Prof. Jorge Dantas de Melo Depto. Eng. Comp. e Automação CT - UFRN

Sistemas Paralelos e Distribuídos. Prof. Jorge Dantas de Melo Depto. Eng. Comp. e Automação CT - UFRN Sistemas Paralelos e Distribuídos Prof. Jorge Dantas de Melo Depto. Eng. Comp. e Automação CT - UFRN Conceitos preliminares Paralelismo refere-se a ocorrência simultânea de eventos em um computador Processamento

Leia mais

Desempenho de um Cluster Virtualizado em Relação a um Cluster Convencional Similar

Desempenho de um Cluster Virtualizado em Relação a um Cluster Convencional Similar Desempenho de um Cluster Virtualizado em Relação a um Cluster Convencional Similar David Beserra 1, Alexandre Borba¹, Samuel Souto 1, Mariel Andrade 1, Alberto Araujo 1 1 Unidade Acadêmica de Garanhuns

Leia mais

INSTALAÇÃO PRINTERTUX Tutorial

INSTALAÇÃO PRINTERTUX Tutorial INSTALAÇÃO PRINTERTUX Tutorial 2 1. O Sistema PrinterTux O Printertux é um sistema para gerenciamento e controle de impressões. O Produto consiste em uma interface web onde o administrador efetua o cadastro

Leia mais

MANUAL DE CONFIGURAÇÃO

MANUAL DE CONFIGURAÇÃO MANUAL DE CONFIGURAÇÃO CONTMATIC PHOENIX SUMÁRIO CAPÍTULO I APRESENTAÇÃO DO ACESSO REMOTO... 3 1.1 O que é o ACESSO REMOTO... 3 1.2 Como utilizar o ACESSO REMOTO... 3 1.3 Quais as vantagens em usar o PHOENIX

Leia mais

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

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

Leia mais

Processamento Distribuído em Cluster do Tipo Beowulf

Processamento Distribuído em Cluster do Tipo Beowulf UNIVERSIDADE ESTADUAL PAULISTA JULIO DE MESQUITA FILHO FACULDADE DE TECNOLOGIA DA BAIXADA SANTISTA DEPARTAMENTO DE INFORMÁTICA GESTÃO DE NEGÓCIOS Processamento Distribuído em Cluster do Tipo Beowulf ALEXANDRE

Leia mais

Um cluster de servidores de email pode ser usado para servir os emails de uma empresa.

Um cluster de servidores de email pode ser usado para servir os emails de uma empresa. CLUSTERS Pode-se pegar uma certa quantidade de servidores e juntá-los para formar um cluster. O serviço então é distribuído entre esses servidores como se eles fossem uma máquina só. Um cluster de servidores

Leia mais

} Monolíticas Aplicações em um computador centralizado. } Em Rede Aplicações com comunicação em rede. } Distribuídas Comunicação e cooperação em rede

} Monolíticas Aplicações em um computador centralizado. } Em Rede Aplicações com comunicação em rede. } Distribuídas Comunicação e cooperação em rede Prof. Samuel Souza } Monolíticas Aplicações em um computador centralizado } Em Rede Aplicações com comunicação em rede } Distribuídas Comunicação e cooperação em rede } Aplicações que são funcionalmente

Leia mais

Sistemas Distribuídos

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

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais SISTEMAS COM MÚLTIPLOS PROCESSADORES LIVRO TEXTO: CAPÍTULO 13, PÁGINA 243 Prof. Pedro Luís Antonelli Anhanguera Educacional INTRODUÇÃO Arquiteturas que possuem duas ou mais CPUs interligadas

Leia mais

Sistemas Operacionais

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

Leia mais

Características Básicas de Sistemas Distribuídos

Características Básicas de Sistemas Distribuídos Motivação Crescente dependência dos usuários aos sistemas: necessidade de partilhar dados e recursos entre utilizadores; porque os recursos estão naturalmente em máquinas diferentes. Demanda computacional

Leia mais

Sistemas distribuídos:comunicação

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

Leia mais

SISTEMAS OPERACIONAIS. Apostila 03 Estrutura do Sistema Operacional UNIBAN

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

Leia mais

Introdução. Nível do Sistema Operacional. Introdução. Um Sistema Operacional... Introdução a Sistemas Operacionais

Introdução. Nível do Sistema Operacional. Introdução. Um Sistema Operacional... Introdução a Sistemas Operacionais Introdução Nível do Sistema Operacional (Aula 14) Introdução a Sistemas Operacionais Hardware Provê os recursos básicos de computação (CPU, memória, E/S,etc.) Programas (aplicações) Definem as maneiras

Leia mais

1.2 Tipos de Sistemas Operacionais

1.2 Tipos de Sistemas Operacionais 1.2 Tipos de Operacionais Tipos de Operacionais Monoprogramáveis/ Monotarefa Multiprogramáveis/ Multitarefa Com Múltiplos Processadores 1.2.1 Monoprogramáveis/Monotarefa Os primeiros sistemas operacionais

Leia mais

Sistemas Operacionais Carlos Eduardo Portela Serra de Castro

Sistemas Operacionais Carlos Eduardo Portela Serra de Castro Introdução Sistemas Operacionais 1 Sistema Operacional: Um conjunto de programas, executado pelo computador como os outros programas. Função: Controlar o funcionamento do computador, disponibilizando seus

Leia mais

Computação em cluster

Computação em cluster Computação em cluster Por Marcos Pitanga em 30 de maio de 2003 Introdução Este artigo tem por finalidade dar ao leitor uma visão mais integrada do que vem a ser a computação em cluster e como esta a cada

Leia mais

Instituto Superior de Engenharia do Porto Administração de Sistemas Informáticos I Clusters

Instituto Superior de Engenharia do Porto Administração de Sistemas Informáticos I Clusters Instituto Superior de Engenharia do Porto Administração de Sistemas Informáticos I Clusters Trabalho elaborado por: 980368 - Sérgio Gonçalves Lima 1010949 - Nisha Sudhirkumar Chaganlal Clusters O que é

Leia mais

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

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

Leia mais

Capítulo 8 Arquitetura de Computadores Paralelos

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

Leia mais

SISTEMAS DISTRIBUIDOS. Prof. Marcelo de Sá Barbosa

SISTEMAS DISTRIBUIDOS. Prof. Marcelo de Sá Barbosa Prof. Marcelo de Sá Barbosa CLUSTER: Um cluster é um conjunto de computadores independentes conectados por rede que formam um sistema único através do uso de software. Um cluster, ou aglomerado de computadores,

Leia mais

Arquitetura de Computadores. Introdução aos Sistemas Operacionais

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

Leia mais

CA Nimsoft Monitor para servidores

CA Nimsoft Monitor para servidores DOCUMENTAÇÃO TÉCNICA Setembro de 2012 CA Nimsoft Monitor para servidores agility made possible CA Nimsoft para monitoramento de servidores sumário CA Nimsoft Monitor para servidores 3 visão geral da solução

Leia mais

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

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

Leia mais

Processamento Paralelo Aplicado à Análise de Contingências de Sistemas Elétricos de Potência

Processamento Paralelo Aplicado à Análise de Contingências de Sistemas Elétricos de Potência Processamento Paralelo Aplicado à Análise de Contingências de Sistemas Elétricos de Potência Marco Aurélio de Souza Birchal + Luciano de Errico* Maria Helena Murta Vale * + DCC- Departamento de Ciência

Leia mais

Um sistema é constituído de um conjunto de processos que executam seus respectivos códigos do sistema operacional e processos e códigos de usuários.

Um sistema é constituído de um conjunto de processos que executam seus respectivos códigos do sistema operacional e processos e códigos de usuários. Os sistemas computacionais atuais permitem que diversos programas sejam carregados na memória e executados simultaneamente. Essa evolução tornou necessário um controle maior na divisão de tarefas entre

Leia mais

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

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

Leia mais

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

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

Leia mais

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

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

Leia mais

Comparação SDs X Scs

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

Leia mais

ESTUDO DE VIABILIDADE, PROJETO E IMPLANTAÇÃO DE UMA REDE VPN (VIRTUAL PRIVATE NETWORK)

ESTUDO DE VIABILIDADE, PROJETO E IMPLANTAÇÃO DE UMA REDE VPN (VIRTUAL PRIVATE NETWORK) ESTUDO DE VIABILIDADE, PROJETO E IMPLANTAÇÃO DE UMA REDE VPN (VIRTUAL PRIVATE NETWORK) 1. VPN Segundo TANENBAUM (2003), VPNs (Virtual Private Networks) são redes sobrepostas às redes públicas, mas com

Leia mais

1 http://www.google.com

1 http://www.google.com 1 Introdução A computação em grade se caracteriza pelo uso de recursos computacionais distribuídos em várias redes. Os diversos nós contribuem com capacidade de processamento, armazenamento de dados ou

Leia mais

GESTÃO DE SISTEMAS OPERACIONAIS II

GESTÃO DE SISTEMAS OPERACIONAIS II GESTÃO DE SISTEMAS OPERACIONAIS II Servidores Definição Servidores História Servidores Tipos Servidores Hardware Servidores Software Evolução do Windows Server Windows Server 2003 Introdução Windows Server

Leia mais

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

Sistemas Distribuídos. Introdução. Edeyson Andrade Gomes. www.edeyson.com.br Sistemas Distribuídos Introdução Edeyson Andrade Gomes www.edeyson.com.br Agenda Definição de Sistemas Distribuídos Evolução Histórica Exemplos Comparação com Sistemas Centralizados Conclusão 2 Definição

Leia mais

Redes de Computadores

Redes de Computadores Redes de Computadores Introdução Redes de Computadores é um conjunto de equipamentos que são capazes de trocar informações e compartilhar recursos entre si, utilizando protocolos para se comunicarem e

Leia mais

Sistemas Operacionais

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

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Evolução Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Sumário Introdução Componentes de um sistema computacional Conceituação Características desejáveis Organização

Leia mais

Redes de Computadores. Jeronimo Costa Penha Senai CFP - JIP

Redes de Computadores. Jeronimo Costa Penha Senai CFP - JIP Redes de Computadores Jeronimo Costa Penha Senai CFP - JIP Clientes e Servidores Servidores São computadores ou equipamentos que disponibilizam seus recursos para outros computadores. Exemplos: a) Servidor

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 4 Tipos de SO Prof.: Edilberto M. Silva http://www.edilms.eti.br SO - Prof. Edilberto Silva Os Sistemas Operacionais podem ser assim classificados: SO - Prof. Edilberto Silva

Leia mais

Virtualização - Montando uma rede virtual para testes e estudos de serviços e servidores

Virtualização - Montando uma rede virtual para testes e estudos de serviços e servidores Virtualização - Montando uma rede virtual para testes e estudos de serviços e servidores Este artigo demonstra como configurar uma rede virtual para ser usada em testes e estudos. Será usado o VirtualBox

Leia mais

Programação Concorrente Processos e Threads

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

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Sistemas de Entrada/Saída Princípios de Hardware Sistema de Entrada/Saída Visão Geral Princípios de Hardware Dispositivos de E/S Estrutura Típica do Barramento de um PC Interrupções

Leia mais

ENGENHARIAS E TECNOLOGIAS - Computação e Informática ESTUDO DE APLICABILIDADE DE SISTEMAS FRACAMENTE ACOPLADOS UTILIZANDO HARDWARE DE BAIXO CUSTO

ENGENHARIAS E TECNOLOGIAS - Computação e Informática ESTUDO DE APLICABILIDADE DE SISTEMAS FRACAMENTE ACOPLADOS UTILIZANDO HARDWARE DE BAIXO CUSTO ENGENHARIAS E TECNOLOGIAS - Computação e Informática ESTUDO DE APLICABILIDADE DE SISTEMAS FRACAMENTE ACOPLADOS UTILIZANDO HARDWARE DE BAIXO CUSTO Autor: HILÁRIO VIANA BACELLAR Co-autor: Matheus de Paula

Leia mais

Considerações no Projeto de Sistemas Cliente/Servidor

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

Leia mais

PARANÁ GOVERNO DO ESTADO

PARANÁ GOVERNO DO ESTADO PROTOCOLOS DA INTERNET FAMÍLIA TCP/IP INTRODUÇÃO É muito comum confundir o TCP/IP como um único protocolo, uma vez que, TCP e IP são dois protocolos distintos, ao mesmo tempo que, também os mais importantes

Leia mais

Apresentação. Ementa da Disciplina. Objetivo da Disciplina. DCA-108 Sistemas Operacionais

Apresentação. Ementa da Disciplina. Objetivo da Disciplina. DCA-108 Sistemas Operacionais DCA-108 Sistemas Operacionais Luiz Affonso Guedes www.dca.ufrn.br/~affonso affonso@dca.ufrn.br Apresentação Disciplina básica do curso de Engenharia de Computação Carga-horária: 60h teóricas Associadas

Leia mais

Figura 1 Taxas de transmissão entre as redes

Figura 1 Taxas de transmissão entre as redes Conceitos de Redes Locais A função básica de uma rede local (LAN) é permitir a distribuição da informação e a automatização das funções de negócio de uma organização. As principais aplicações que requerem

Leia mais

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

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

Leia mais

TUTORIAL VMWARE WORKSTATION 8. Aprenda a instalar e configurar corretamente uma máquina virtual utilizando VMware Workstation com este tutorial

TUTORIAL VMWARE WORKSTATION 8. Aprenda a instalar e configurar corretamente uma máquina virtual utilizando VMware Workstation com este tutorial TUTORIAL VMWARE WORKSTATION 8 Aprenda a instalar e configurar corretamente uma máquina virtual utilizando VMware Workstation com este tutorial INTRODUÇÃO O uso de máquinas virtuais pode ser adequado tanto

Leia mais

FileMaker Pro 14. Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 14

FileMaker Pro 14. Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 14 FileMaker Pro 14 Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 14 2007-2015 FileMaker, Inc. Todos os direitos reservados. FileMaker Inc. 5201 Patrick Henry Drive Santa Clara,

Leia mais

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

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

Leia mais

Profs. Deja e Andrei

Profs. Deja e Andrei Disciplina Sistemas Distribuídos e de Tempo Real Profs. Deja e Andrei Sistemas Distribuídos 1 Conceitos e Projetos de Sistemas Distribuídos Objetivos: Apresentar uma visão geral de processamento distribuído,

Leia mais

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

SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br - Aula 4 - INTRODUÇÃO A SUPERCOMPUTAÇÃO 1. INTRODUÇÃO Atualmente cientistas brasileiros usam supercomputadores para pesquisar desde petróleo até mudanças climáticas. Um grande exemplo é o supercomputador

Leia mais

Arquitetura de Computadores. Professor: Vilson Heck Junior

Arquitetura de Computadores. Professor: Vilson Heck Junior Arquitetura de Computadores Professor: Vilson Heck Junior Agenda Conceitos Estrutura Funcionamento Arquitetura Tipos Atividades Barramentos Conceitos Como já discutimos, os principais componentes de um

Leia mais

ARQUITETURA TRADICIONAL

ARQUITETURA TRADICIONAL INTRODUÇÃO Atualmente no universo corporativo, a necessidade constante de gestores de tomar decisões cruciais para os bons negócios das empresas, faz da informação seu bem mais precioso. Nos dias de hoje,

Leia mais

A Evolução dos Sistemas Operacionais

A Evolução dos Sistemas Operacionais Capítulo 3 A Evolução dos Sistemas Operacionais Neste capítulo, continuaremos a tratar dos conceitos básicos com a intensão de construirmos, agora em um nível mais elevado de abstração, o entendimento

Leia mais

Sistemas Distribuídos

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

Leia mais

SIPREV/Gestão de RPPS Implantação Manual de Instalação Versão 1.18

SIPREV/Gestão de RPPS Implantação Manual de Instalação Versão 1.18 Implantação Manual de Instalação Versão 1.18 1 de 44 - Manual de Instalação Histórico de Revisões Data Versão Descrição Autor 19/05/09 1.0 Criação do documento Carlos Tabosa-UDCE 22/05/09 1.1 Revisão do

Leia mais

1. Considerações...3. 2. Introdução...3. 3. Arquitetura...3. 3.1. Topologia Básica...4. 3.2. Hardware mínimo recomendado...5

1. Considerações...3. 2. Introdução...3. 3. Arquitetura...3. 3.1. Topologia Básica...4. 3.2. Hardware mínimo recomendado...5 ÍNDICE 1. Considerações...3 2. Introdução...3 3. Arquitetura...3 3.1. Topologia Básica...4 3.2. Hardware mínimo recomendado...5 3.3. Sistemas Operacionais...5 4. Configurações Necessárias...6 4.1. Nas

Leia mais

Agenda. Histórico Máquinas virtuais X Emuladores Vantagens & Desvantagens Vmware Quemu Xen UML Comparação entre VM's Conclusão

Agenda. Histórico Máquinas virtuais X Emuladores Vantagens & Desvantagens Vmware Quemu Xen UML Comparação entre VM's Conclusão Máquinas Virtuais Agenda Histórico Máquinas virtuais X Emuladores Vantagens & Desvantagens Vmware Quemu Xen UML Comparação entre VM's Conclusão Histórico Mainframe É um computador de grande porte, dedicado

Leia mais

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2 Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2 Aula 3 Virtualização de Sistemas 1. Conceito Virtualização pode ser definida

Leia mais

FileMaker Pro 12. Utilização de uma Conexão de Área de Trabalho Remota com o

FileMaker Pro 12. Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 12 Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 12 2007 2012 FileMaker Inc. Todos os direitos reservados. FileMaker Inc. 5201 Patrick Henry Drive Santa Clara,

Leia mais

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

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

Leia mais

Requisitos do Sistema

Requisitos do Sistema PJ8D - 017 ProJuris 8 Desktop Requisitos do Sistema PJ8D - 017 P á g i n a 1 Sumario Sumario... 1 Capítulo I - Introdução... 2 1.1 - Objetivo... 2 1.2 - Quem deve ler esse documento... 2 Capítulo II -

Leia mais

4 Estrutura do Sistema Operacional. 4.1 - Kernel

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

Leia mais

Roteiro. Sistemas Distribuídos. Sistemas de Arquivos Distribuídos. Sistema de arquivos distribuídos

Roteiro. Sistemas Distribuídos. Sistemas de Arquivos Distribuídos. Sistema de arquivos distribuídos Sistemas Distribuídos Sistemas de Arquivos Distribuídos Roteiro Sistema de arquivos distribuídos Requisitos Arquivos e diretórios Compartilhamento Cache Replicação Estudo de caso: NFS e AFS Sistemas Distribuídos

Leia mais

Arquitetura de um sistema é a especificação de sua estrutura e de seus componentes

Arquitetura de um sistema é a especificação de sua estrutura e de seus componentes Arquiteturas e Modelos de sistemas Arquitetura Arquitetura de um sistema é a especificação de sua estrutura e de seus componentes Localização dos componentes e relação entre eles Objetivo: garantir que

Leia mais

Introdução às Redes de Computadores. Por José Luís Carneiro

Introdução às Redes de Computadores. Por José Luís Carneiro Introdução às Redes de Computadores Por José Luís Carneiro Portes de computadores Grande Porte Super Computadores e Mainframes Médio Porte Super Minicomputadores e Minicomputadores Pequeno Porte Super

Leia mais

Sistema de Arquivos Distribuídos

Sistema de Arquivos Distribuídos Sistema de Arquivos Distribuídos Sistema de Arquivos Distribuídos A interface cliente para um sistema de arquivos é composta por um conjunto de primitivas e operações em arquivos (criar, apagar, ler, escrever)

Leia mais

Prof. Marcelo de Sá Barbosa SISTEMAS DISTRIBUIDOS

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

Leia mais

Manual de Transferência de Arquivos

Manual de Transferência de Arquivos O Manual de Transferência de Arquivos apresenta a ferramenta WebEDI que será utilizada entre FGC/IMS e as Instituições Financeiras para troca de arquivos. Manual de Transferência de Arquivos WebEDI Versão

Leia mais

Análise da distribuição de carga em um cluster heterogêneo.

Análise da distribuição de carga em um cluster heterogêneo. Análise da distribuição de carga em um cluster heterogêneo. Josemar Souza *, D. Rexachs **, E. Luque **. ( josemar@stn.com.br, d.rexachs@cc.uab.es, e.luque@cc.uab.es,) ** * Universidade Católica do Salvador

Leia mais

Oracle Grid Engine. Thiago Marques Soares. Pós-Graduação em Modelagem Computacional Universidade Federal de Juiz de Fora. 8 de abril de 2015

Oracle Grid Engine. Thiago Marques Soares. Pós-Graduação em Modelagem Computacional Universidade Federal de Juiz de Fora. 8 de abril de 2015 Oracle Grid Engine Thiago Marques Soares Pós-Graduação em Modelagem Computacional Universidade Federal de Juiz de Fora 8 de abril de 2015 Thiago Marques Soares Algoritmos e E.D. 8 de abril de 2015 1 /

Leia mais

Manual de Instalação Flex

Manual de Instalação Flex Manual de Instalação Flex Sumário 1. Sobre este documento... 3 2. Suporte técnico... 3 3. Requisitos de hardware... 4 4. Instalação... 5 4.1. Instalação no servidor... 5 4.1.1. Instalação do sistema...

Leia mais

Sistemas Operacionais. INTRODUÇÃO Prof. Rafael Alberto Vital Pinto FACSUL/CESUR

Sistemas Operacionais. INTRODUÇÃO Prof. Rafael Alberto Vital Pinto FACSUL/CESUR Sistemas Operacionais INTRODUÇÃO Prof. Rafael Alberto Vital Pinto FACSUL/CESUR 1 Introdução O que se espera de um sistema de computação? Execução de programas de usuários Permitir a solução de problemas

Leia mais

Unidade 1. Bibliografia da disciplina. Introdução. O que compartilhar? Exemplo 12/10/2009. Conceitos básicos de Redes de Computadores

Unidade 1. Bibliografia da disciplina. Introdução. O que compartilhar? Exemplo 12/10/2009. Conceitos básicos de Redes de Computadores Faculdade INED Unidade 1 Conceitos básicos de Redes de Computadores Curso Superior de Tecnologia: Banco de Dados, Sistemas para Internet e Redes de Computadores Disciplina: Fundamentos de Redes Prof.:

Leia mais

FileMaker Pro 13. Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 13

FileMaker Pro 13. Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 13 FileMaker Pro 13 Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 13 2007-2013 FileMaker Inc. Todos os direitos reservados. FileMaker Inc. 5201 Patrick Henry Drive Santa Clara,

Leia mais

Nível do Sistema Operacional

Nível do Sistema Operacional Nível do Sistema Operacional (Aula 14) Introdução a Sistemas Operacionais Roberta Lima Gomes - LPRM/DI/UFES Sistemas de Programação I Eng. Elétrica 2007/1 Introdução Hardware Provê os recursos básicos

Leia mais

Estudo de Caso 2: Windows Vista

Estudo de Caso 2: Windows Vista Faculdades Integradas de Mineiros Curso de Sistemas de Informação Sistemas Operacionais II Estudo de Caso 2: Windows Vista Grupo 4 Helder / Wagner / Frantyeis Junho/2010 O Windows usa uma estratégia Just-In-Time

Leia mais

TCM Informática Rua Senador Ivo D'Aquino, 121 Bairro: Lagoa da Conceição 88062-050 Florianópolis, SC Brasil Fone +55 48 3334-8877 Fax +55 48

TCM Informática Rua Senador Ivo D'Aquino, 121 Bairro: Lagoa da Conceição 88062-050 Florianópolis, SC Brasil Fone +55 48 3334-8877 Fax +55 48 1.1 Roteiro para Instalação do Software 1.1.1 Servidor 1.1.1.1 Requisitos de Hardware Servidor de pequeno porte Servidor dedicado: Processador: 500Mhz Memória RAM: 256MB Hard Disk: 20 ou 40GB (7.500rpm)

Leia mais

Fundamentos da Informática

Fundamentos da Informática 1 PROCESSAMENTO DE DADOS I - FUNDAMENTOS A) CONCEITO DE INFORMÁTICA - é a ciência que estuda o tratamento automático e racional da informação. B) PROCESSAMENTO DE DADOS 1) Conceito Processamento de dados

Leia mais

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

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

Leia mais

05/08/2013. Sistemas Distribuídos Cluster. Sistemas Distribuídos Cluster. Agenda. Introdução

05/08/2013. Sistemas Distribuídos Cluster. Sistemas Distribuídos Cluster. Agenda. Introdução Sistemas Distribuídos Cluster Originais gentilmente disponibilizados pelos autores em http://www.cdk4.net/wo/ Adaptados por Társio Ribeiro Cavalcante Agenda 1. Introdução 2. O que é um cluster 3. Alta

Leia mais

Pré-requisitos para Instalação Física e Lógica do SISLOC

Pré-requisitos para Instalação Física e Lógica do SISLOC Pré-requisitos para Instalação Física e Lógica do SISLOC Sumário Pré-Requisitos de Instalação Física e Lógica do SISLOC...3 Servidores de Dados...3 Servidores de Aplicação (Terminal Service)...3 Estações

Leia mais

Muitas aplicações modernas podem ser modeladas como tarefas divisíveis.

Muitas aplicações modernas podem ser modeladas como tarefas divisíveis. 1 Introdução O grande aumento de performance das redes de computadores, combinado com a proliferação de computadores de baixo custo e alto desempenho, trouxe à tona ambientes de meta-computação, ou grids[15,

Leia mais

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

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

Leia mais

Sistemas de Informação Processamento de Dados

Sistemas de Informação Processamento de Dados Sistemas de Informação Processamento de Dados Ferramentas e serviços de acesso remoto VNC Virtual Network Computing (ou somente VNC) é um protocolo desenhado para possibilitar interfaces gráficas remotas.

Leia mais