libcomuna Um framework para o desenvolvimento de aplicações paralelas tolerante a falhas baseado em troca de mensagem.

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

Download "libcomuna Um framework para o desenvolvimento de aplicações paralelas tolerante a falhas baseado em troca de mensagem."

Transcrição

1 libcomuna Um framework para o desenvolvimento de aplicações paralelas tolerante a falhas baseado em troca de mensagem. Marco Yudi de C. Hirata, Marcelo Soares Souza, Anderson F. V. Boa Morte, Saulo Andrade, Josemar Rodrigues de Souza. CEBACAD Centro Baiano de Computação de Alto Desempenho Universidade Católica do Salvador (UCSal) Avenida Cardeal da Silva 205, Federação Salvador - BA Brasil {anderson, josemar, marcelo, yudi, saulo Abstract. This article present a framework for paralell application development, based on message- passing, that aims for diminishing the development complexity and proventing fault tolerance features not available on MPI 1.1 standard. Resumo. Este artigo apresenta um framework para o desenvolvimento de aplicações paralelas, baseado em troca de mensage m, tendo como finalidade imediata diminuir a complexidade do desenvolvimento e adicionar características de tolerância a falha não presentes no padrão MPI Introdução Inspirado no projeto Beowulf os clusters de computa do res baseado em estações de trabalho e redes convencionais, possibilitaram que instituições, com limitados recursos financeiros, viabilizassem a construção e o uso de computa dor es de alto desem pen ho apenas utilizan d o- se de componen tes Off The Self [1]. As arquitetura s de comput ad or es paralelos tem como principal objetivo o aumento da capacidade de processame nto, utilizando o potencial oferecido por um grande número de recursos computacionais [2]. Tradicionalmente, os clusters baseados em troca de mensagens foram constr uídos tendo como principal preocupação o provimento de um ambiente eficiente e portável, relegando a segundo plano a questão da confiabilidade. Pradhan (1996) diz que, apesar da percepção geral de que os sistemas paralelos possue m alta confiabilidade, devido a redundâ ncia dos recursos computacionais, na realidade estes sofrem de uma alta taxa de falhas [3].

2 Um outro empecilho ao desenvolvimento de soluções paralelas baseado em troca de mensagem, seguindo o padrão da indústria MPI (Message Passing Interface ), é a alta complexidade encontra da nesta tarefa. Entre os principais problemas encontrados no desenvolvimento destas aplicações podemos destacar: baixa reutilização de código entre aplicações, dificuldade de aprendiza do de uma nova forma (lógica) de resolução de problemas e a dificuldade de depuração em um ambiente distribuído. Apresenta m o s neste artigo um framework desenvolvido com o intuito de fornecer algumas características de tolerância a falha, tornan d o o ambiente para o processa me n t o de grandes massas de dados mais confiável, e que possibilite o desenvolvimento de aplicações paralelas de forma mais simples e transpa rente ao desenvolvedor. 2. Computadores Paralelos Virtuais Os Computa dore s Paralelos Virtuais, também conhecidos como NoW (Network of Workstation ), são um conjunto heterogêneo ou homogeneo de comput ad o res convencionais, que conectados atráves de uma rede, permitem a paralelização da execução de suas transações. Para tanto, utilizam um middleware que permite que este conjunto heterogêneo de computa d o res (seriais, paralelos ou vetoriais) seja visto como uma única máquina [4]. Os computa d or es que seguem a arquitetura propos ta por Von Neumann já esbarram em alguns limites físicos na busca de máquinas mais velozes, evidenciando a chegada do limite das arquitetur as seqüenciais [5]. Este fato explica, em parte, o crescente interesse nas NoW. Os clusters são de fato uma rede de computa d or es, porém possuindo a particularidade de funcionar como uma máquina paralela, daí o fato desses serem chama dos de máquinas paralelas virtuais. Cada máquina componente de um cluster é chamada de nodo. Conforme aponta do por Tanenbau m (1990), uma NoW é um tipo de cluster e se enquadra dentro do contexto de computa do r paralelo (figura 1) [6].

3 Figura 1: Extensão da taxonomia de Flynn Uma das vantagens evidentes das NoWs é a alta disponibilidade e expansabilidade do sistema [6]. Sendo um conjunto de máquinas independen tes, conectados por uma rede local, com o espaço de endereço de memória isolado, torna- se trivial adicionar ou substituir um novo recurso caso seja necessário. Patterson (2003), contudo demons tra que os clusters baseados em troca de mensage m possue m um custo de propriedade maior quando compara do aos comput ad ore s multiprocessados de memória compar tilha da [7]. A administração de um cluster de N máquinas se aproxima do custo de administração de N máquinas independente s, enquanto o custo de administração de um multiprocessa do de espaço de endereços compar tilha do com N processadores está perto do custo da administração de uma única máquina de grande porte [7]. 3. Tolerância a Falhas em Clusters As técnicas de tolerância a falhas tem como objetivo obter sistemas comput acionais confiáveis e com uma maior dependabilidade (dependabilty ). Dependabilidade engloba diversos conceitos, que servem de medida para confiabilidade (reliability ), disponibilidade (availability ), segurança (safety ), mantenabilidade (maintainability ), compro metime nt o do desempe nho (perfor mability ), e testabilidade (testability ) [3].

4 O termo "tolerância a falhas" foi apresen t a d o originalme n t e por Avizienis em Entretan t o estratégias para constr ução de sistema s mais confiáveis já eram usad as desde a construção dos primeiros computadores. Apesar de envolver técnicas e estratégias tão antigas, a tolerância a falhas ainda não é uma preocu p ação rotineira de projetistas e usuários, ficand o sua aplicação quase semp r e restrita a sistemas críticos e mais recentemente a sistemas de missão crítica. (Weber, 2003) Apesar disso, em seu trabalho Batchu (2003), demons tra que o padrão MPI apenas se preocupa em fornecer alta performa nce, escalabilidade e portabilidade entre arquiteturas [8]. A implementação de características que tragam uma maior confiabilidade ao padrão implica em custos adicionais, o que compro mete as metas do Fórum MPI. Tornou- se claro que a ênfase em alta performa nce levou o padrão a um modelo limitado, com pouca capacidade de manipulação de erros. Gropp (2004), criador de umas das principais implementações do MPI, o MPICH, garante que o padrão cobre funcionalidades tais como comunicação confiável, tratadores de erros e ainda provê flexibilidade na definição de um conjunto de erros, tornando - o apropriado para a tolerância a falhas [9]. 3.1 Fases de aplicação das técnicas de Tolerância a Falhas A aplicação das técnicas de tolerância a falhas podem ser dividida em quatro fases: detecção, confinamento, recuperação e tratament o [10]. A detecção de um erro ocorre apenas quando uma falha se manifesta como um erro. Uma falha pode encontrar - se latente antes de se manifestar como um erro, sem nunca comprome ter o sistema. Os mecanismos de detecção de erros baseiam- se geralmente em redun d â ncia. O conceito de redun d ân cia implica na adição de informação, recursos, ou tempo além do necessário para o funcionamento normal do sistema. A fase de confinamento estabelece limites para a propagação do dano causado, mas está ligada diretamente com decisões estabelecidas na especificação de cada projeto. A recuperação de erros ocorre após a detecção deste, e também envolve especificações do projeto. Geralmente isso envolve o custo de refazer totalmente a tarefa perdida após a detecção do erro. A última fase, tratament o de falhas, consiste em localizar a origem do problema, reparar a falha e recuperar o restante do sistema. Após a localização da origem do erro, o componente com problema deve ser isolado para que este não gere mais erros para o restante do sistema, como procura m os utilizar técnicas dinâmicas, o processo de isolamento passa a ser de forma lógica, sem o isolamento físico.

5 O elemento controlador (Mestre) passa a desconsiderar qualquer informação gerada pela fonte problemas [10]. 3.2 Técnicas para a recuperação de falhas Checkpoint e log são as técnicas de recuperação de falhas mais comu men te utilizadas. Checkpoint registra durante a execução de dado processo todas as informações sobre o estado deste, em um local de armazena me n t o confiável [3]. A qualquer instantes estas informações poderão ser utilizadas pelo sistema para que este possa retornar a um destes pontos e ser reiniciado na ocorrência de uma falha. Outra técnica amplamente utilizada é a de log, esta técnica consiste em um histórico armazena d o dos eventos associados ao estado do processo, para que se possa executá- los a partir do log localizados entre o último checkpoint dos processos falhos e o momento da falha [3]. 3.3 Impleme ntação de Tolerância a Falhas no MPI Grupos de pesquisa propusera m e desenvolveram soluções de tolerância a falhas para o padrão MPI, aplicando algumas das técnicas mais utilizadas. CoCheck utiliza a técnica de checkpoint, implementa d a através de um coordena dor central, mas que incorre em um grande overhead devido ao registros dos checkpoints. Egida baseia- se na técnica de log de mensagens com recuperação trans parente, mas também incorre em um excessivo overhead [11]. O FT- MPI é uma das soluções que não implementa as técnicas tradicionais de tolerância a falha, esta foi desenvolvido por Batchu (2003) e traz fortes mudanças a semântica do padrão MPI, e por isso é amplamente criticado por Gropp. O FT- MPI implementa um gerenciador de falhas através da manipulação da estrut ur a do padrão MPI comm u nicator [8]. Um processo só pode comunicar - se diretame nte com um outro, caso ambos pertença m a um mesmo comm unicator. Quando uma falha ocorre, todos os processos no com m u nicator são informados sobre a sua ocorrência (falha da mensagem ou do nodo). Esta informação é trans mitida para a aplicação através de um código de retorno. Essa soluçao tem como principal vantagem a perfor mance, pois não implementa checkpoints ou log de mensagens [11]. MPICH- V é uma solução escalável e que provê checkpoint completo e log de mensagens [9]. Tem como incoveniente a necessidade de um subsistema dedicado e confiável para o armazena me n t o dos checkpoints e log de mensagens.

6 Entre os problemas encontrados nas soluções propostas estão a existência de alto overhead ou ainda modificações não previstas ao padrão MPI. 4. Solução Proposta: Framework libcomuna Buscou- se inicialmente no desenvolvimento do framework libcomuna trazer características de Orientação a Objetos ao desenvolvimento baseado no padrão MPI 1.1, objetivando a diminuição da complexidade no desenvolvimento de aplicações paralelas e uma maior reutilização de código. O framework foi desenvolvido em C/C+ + e é composto de onze classes tendo como base funções do MPI 1.1 encapsuladas, proporcionan do assim uma interface mais intuitiva para o desenvolvimento de aplicativos e algoritmos paralelos. Por fazer uso de t hreads no gereciamento de nós a libcomuna herdar funcionalidades do Framework GNU Common C+ + em duas de suas classes. Apenas enfatiza mo s neste artigo as características de tolerância a falha deste framework, inexistente nativamente no padrão MPI Tolerância a Falha no libcomuna A solução proposta e desenvolvida para o provimento de tolerância a falhas implementa um relógio de ponto responsável pela verificação dos nós pertencente ao clusters. Uma área comum de memória secundária é compar tilhada atráves do sistema de arquivos distribuídos NFS (Network File System ), e é utilizada com a finalidade de arma zena me n t o de uma estrutur a que possui três colunas (rank, status e key) que representa m as informações básicas do processo de um trabalhador. Ressaltamos que a maneira adotada para compartilhar estes dados está se tornando comum na construção de clusters baseado em estações de trabalho diskless, inclusive trazendo grandes avanços na área de sistemas de arquivos distribuídos. O rank representa a posição e o id do trabalhador dentro do cluster. Status deter mina o estado atual em que se encontra o trabalhador, podendo assumir os valores: Stop, Working, End e Fail. Key é uma chave única gerada pelo Mestre a cada turno de assinatur a do relógio de ponto, que juntamente com o estado poderá julgar a operabilidade do trabalhador dentro do cluster. Ao iniciar o processamen to, o mestre envia uma mensagem a cada trabalhador, contendo uma chave (key ) única gerada aleatoriamente, confor me demonst ra d o na figura 2.

7 Figura 2: Distribuição de Chaves aos Trabalhadores. Em seguida o processamen to é distribuído pelo mestre seguindo critérios de balanceame nto estáticos, descrito no código- fonte. É determinada previamente quais os dados que cada trabalhador irá processar. Dessa forma, caso haja alguma falha em algum nó os dados poderão ser escalonado a um outro trabalhador disponível. O balanceament o estático deve ser feito atráves de uma caracterização prévia do ambiente. Em seguida inicia- se o processa me nt o dos dados, cada trabalhador assina o relógio de ponto com a chave (key) recebida do mestre. Transcorrido um deter mina do tempo de processame nt o, estabelecido pelo desenvolvedor, um thread de gerencia no mestre é ativado verificando o estado dos trabalhadores, checando se todos os nós do cluster assinara m o ponto com a chave distribuída inicialmente. Todos as chaves (key) são renovadas pelo mestre e os trabalhadores devem novamente assinar o ponto. Caso, ao assinar o relógio de ponto, o trabalhador não possuir a chave correta de acordo com a chave do turno, entende - se que houve algum problema e o número de faltas deste trabalhador é incrementad o. Se o trabalhador voltar a responder antes de ser considerado inoperante (atráves de um tempo pré- estabelecido pelo desenvolvedor) o contado r de faltas do mesmo é zerad o. Essa medida foi tomada levando em consideração o fato de que, cada rede possui suas particularidades e até mesmo os processos concorrentes no nó do cluster podem atrasar a assinatur a do relógio de ponto pelo trabalhador.

8 O trabalhador é considerado em estado errôneo caso o número de faltas seja alcançado, este número é determinado pelo desenvolvedor da solução. Detectado o estado de falha, o Status do trabalha dor, no relógio de ponto, é definido como falho (Fail) e sua tarefa é escalonado ao primeiro trabalhador que se encontre disponível. 5. Metodologia utilizada nos experimentos O experimento conduzido se deu no cluster da Universidade Católica do Salvador (UCSal). O ambiente utilizado consistiu de um ambiente heterogêneo descrito nas tabela 1 utilizando - se do Sistema Operacional GNU/Linux, kernel , mpich que implementa todo o padrão MPI 1.1 e o compilador gnu gcc A rede de conexão utilizada é baseada no padrão Ethernet utilizando um hub de 10 mb/s. Para os experimentos foi desenvolvido uma livre adaptação do algoritmo de multiplicação de matrizes Fox [12] em C++ utilizando do framework libcomuna. O paradigma Mestre/Trabalha dor (MT) foi utilizado para o desenvolvimento da solução. O ambiente foi previamente caracterizado e as matrizes de ordem 1000, 1500 e 2000 foram geradas aleatoriamente antes da primeira execução. Tabela 1: Especificação do cluster local UCSal host Função Processador Memória Balanceamento infoquir3 mestre Pentium III 500 Mhz 64 MB 59.00% infoquir2 trabalhador Pentium 166 Mhz 32 MB 10.00% infoquir5 trabalhador Pentium 133 Mhz 32 MB 8.00% infoquir6 trabalhador Pentium 133 Mhz 32 MB 8.00% infoquir7 trabalhador Pentium 133 Mhz 32 MB 8.00% infoquir8 trabalhador Pentium 133 Mhz 32 MB 8.00% Houve a inserção de uma falha atráves da desconexão física de um nó do cluster. Esperou- se o término da execução do algoritmo para a validação da solução, sem que este ficasse bloqueado (blocking ) e da verificação final do número de pacotes processados, a solução mostrou - se eficaz na tolerância desta falha. Para análise foram levantados dados relativos a execução do algoritmo de forma serial, paralelizada sem presença da falha e com a presença da falha. 6. Resultados Obtidos O resultado é sintetizado na tabela 2 e demonstr ad o na figura 3 onde se nota claramente que testes sem a presença de falha ficaram muito próximo aos testes realizados com falha. Tabela 2: Resultados Obtidos em Tempo de Execução (seg.) Ordem (n) Paralelo com falha Paralelo sem falha Serial

9 É notável que o processa men t o de matrizes de ordem inferior a 1000 não apresenta m qualquer ganho significativo de perfor ma nce quand o paralelizado, ocorrendo em deter minad o s momento s até uma discreta diminuição do desempen h o. Este fato ocorre devido as características da rede e do alto custo ligado a comunicação entre os nós em uma rede baseada em Ethernet e TCP/IP. Serial x Paralelo x Paralelo com falha Tempo (seg) Ordem das matrizes(n) Paralelo com falha Paralelo Serial Figura 3: Resultado Paralelo Sem Falha x Paralelo com Falha x Serial O algoritmo de multiplicação de matrizes é considerado um paralelismo de dados, sendo muito dependen te da latência e largura de banda do barrament o de comunicação em que se encontra. Dessa forma o processa me nt o de forma serial de matrizes de pequena ordem não apresenta m o alto custo de comunicação dos dados, assim proporcionan do uma performa nce melhor em relação ao algoritmo paralelizado. 7. Conclusõe s Os resulta dos obtidos demonst ra m a eficácia da solução apresentada em provê aspectos de tolerância a falha, sem no entanto constatar diminuição significativa do desempe nh o no comput o geral. Os aspectos de tolerância a falha implementa do s no framework não se baseiam diretamente em nenhu m a das técnicas propostas, por outros projetos de pesquisa, que se dispusera m a implementar técnicas de recuperação de falhas no MPI, tais como checkpoint ou log. O algoritmo proposto terminou sua execução mesmo na ocorrência da falha, que se deu através de desconexão física de um nó do cluster. Os custos envolvidos na implementação de características de tolerância a falha diminuem a medida que se aumenta a demanda por poder computacional, conforme apresenta do nos experimentos atráves do aumento da ordem das matrizes utilizadas.

10 Muitas melhorias e acréscimos ao framework libcomuna vem sendo planejadas tais como a remoção da necessidade do uso do sistema de arma ze na me n t o distribuído, tornando o algoritmo mais trans parente e menos dependente do ambiente utilizado. Outras melhorias em planejamen to é a capacidade de caracterização e balanceament o dinâmica do ambiente e aumento de trans parência entre o processame nt o e o gerenciamento do clusters, fazend o com que o algoritmo possa suportar de forma mais simples outras variações de algoritmos de cálculo. 8. Referências [1]Beowulf. What makes a cluster a Beowulf?. Disponivel na Internet via WWW. URL: / overview/index.ht ml. Arquivo Capturado em 30 de Dezembro de [2] Sterling, Thomas L. Salmon, John. Becker, Donald J. e Savaresse, Daniel F. How to build a Beowulf: a guide to the implementation and aplication of PC clusters. Massachusett s Institute of Technology [3] Pradhan, Dhiraj K. Fault Tolerant System Design. Prentice Hall, New Jersey, [4] Souza, Josemar; Souza, Marcelo; Micheli, Milena. Influência da comunicação no rendiment o de uma máquina paralela virtual baseada em Redes ATM I Workshop Aplicações Internet2, MetroPOA PUCRS, Porto Alegre, Rio Grande do Sul, Brasil. Anais [5] Akl, Selim G. The Design and Analysis of Parallel Algorithms. Englewood Cliffs, New Jersey: Prentice Hall, [6] Tanenbau m, Andrew S. Organização Estrutura da de Computa dor es. 3. ed. Rio de Janeiro: LTC Livros Técnicos e Científicos Editora, p. [7] Patterson, David A., HENNESSY, John. - Arquitetura de Computa dor : Uma Abordagem Quantitativa; tradução de Vandenberg D. de Souza. - Rio de Janeiro : Campus, [8] Batchu, Rajanikanth Reddy. Incorpora ting Fault- Tolerant Features into Message- Passing Middleware. Maio de f. Dissertação de Mestrado. Department of Computer Science and Engineering, Faculty of Mississippi State University, Mississippi, [9] Gropp, William; LUSK, Ewing. Fault Tolerance in MPI Programs. International Journal of High Performance Computing Applications, August 2004, vol. 18, no. 3, pp [10] Weber, Taisy Silva. Um roteiro para exploração dos conceitos básicos de tolerância a falhas. Apostila do Programa de Pós- Graduação Instituto de Informática - UFRGS. Porto Alegre, 2003.

11 . Tolerância a Falhas: Conceitos e exemplos. Apostila do Programa de Pós- Graduação Instituto de Informática - UFRGS. Porto Alegre, ; Jansch- Pôrto, I.; Weber, R. Fundamentos de tolerância a falhas. Vitória: SBC/UFES, (apostila preparada para o IX JAI Jornada de Atualização em Informática, no X Congresso da Sociedade Brasileira de Computação). [11] Bosilca, George et al. MPICH- V Toward a Scalable Fault Tolerant MPI for Volatile Nodes, IEEE, Junho de [12] Pacheco, Peter. Parallel Program ming with MPI. 1 ed. Morgan Kaufmann Publishers, 1996.

Um Modelo Computacional Tolerante a Falhas para Aplicações Paralelas Utilizando MPI

Um Modelo Computacional Tolerante a Falhas para Aplicações Paralelas Utilizando MPI Um Modelo Computacional Tolerante a Falhas para Aplicações Paralelas Utilizando MPI Oberdan R. Pinheiro 1, Josemar R. de Souza 1,2 1 Centro Integrado de Manufatura e Tecnologia (SENAI-CIMATEC) Salvador,

Leia mais

Tolerância a Falhas em Clusters Geograficamente Distribuídos Baseados em Passagem de Messagens.

Tolerância a Falhas em Clusters Geograficamente Distribuídos Baseados em Passagem de Messagens. Tolerância a Falhas em Clusters Geograficamente Distribuídos Baseados em Passagem de Messagens. Marcelo Soares Souza, Josemar R. de Souza, Anderson, F. V. Boa Morte,, Marco Yudi de C. Hirata CEBACAD Centro

Leia mais

NeoFW - Um Framework para criação de aplicações em ambientes de Clusters baseado em Software Livre.

NeoFW - Um Framework para criação de aplicações em ambientes de Clusters baseado em Software Livre. NeoFW - Um Framework para criação de aplicações em ambientes de Clusters baseado em Software Livre. Edmilson Santana Souza de Almeida, Marcelo Soares Souza, Josemar Rodrigues de Souza, Andre Chagas de

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 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

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 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

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

Introdução a Computação Paralela e a Montagem de Clusters.

Introdução a Computação Paralela e a Montagem de Clusters. Introdução a Computação Paralela e a Montagem de Clusters. Marcelo Souza (marcelo@cebacad.net) Granduando em Sistema da Informação CEBACAD Centro Baiano de Computação de alto Desempenho Introdução a Computação

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

Computação de Alta Perfomance com Software Livre (Clusters)

Computação de Alta Perfomance com Software Livre (Clusters) Computação de Alta Perfomance com Software Livre (Clusters) 3º Seminário de Tecnologia da Informação UCSal Marcelo Soares Souza (marcelo@cebacad.net) CEBACAD Centro Baiano de Computação de alto Desempenho

Leia mais

Introdução às arquiteturas paralelas e taxonomia de Flynn

Introdução às arquiteturas paralelas e taxonomia de Flynn Introdução às arquiteturas paralelas e taxonomia de Flynn OBJETIVO: definir computação paralela; o modelo de computação paralela desempenhada por computadores paralelos; e exemplos de uso da arquitetura

Leia mais

Balanceamento de Carga

Balanceamento de Carga 40 4. Balanceamento de Carga Pode-se entender por balanceamento de carga uma política a ser adotada para minimizar tanto a ociosidade de utilização de alguns equipamentos quanto a super utilização de outros,

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

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

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

Arquitetura dos Sistemas de Informação Distribuídos

Arquitetura dos Sistemas de Informação Distribuídos Arquitetura dos Sistemas de Informação Distribuídos Quando se projeta um sistema cuja utilização é destinada a ser feita em ambientes do mundo real, projeções devem ser feitas para que o sistema possa

Leia mais

Fundamentos de Tolerância a Falhas. Graduação: CIC e ECP Taisy Silva Weber 2002

Fundamentos de Tolerância a Falhas. Graduação: CIC e ECP Taisy Silva Weber 2002 Fundamentos de Tolerância a Falhas Graduação: CIC e ECP Taisy Silva Weber 2002 Bibliografia básica Pradhan, D. K. Jalote, P. Fault-Tolerant System Design. Prentice Hall, New Jersey, 1996. Fault tolerance

Leia mais

Influência da comunicação no rendimento de uma renderização de imagem utilizando uma máquina paralela virtual baseada em redes ATM e Ethernet

Influência da comunicação no rendimento de uma renderização de imagem utilizando uma máquina paralela virtual baseada em redes ATM e Ethernet Influência da comunicação no rendimento de uma renderização de imagem utilizando uma máquina paralela virtual baseada em redes ATM e Ethernet Marcelo Souza, Josemar Souza. (marcelo@cebacad.net, josemar@cebacad.net

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

Sistemas Distribuídos. Introdução

Sistemas Distribuídos. Introdução Sistemas Distribuídos Introdução Definição Processos Um sistema distribuído é um conjunto de computadores independentes, interligados por uma rede de conexão, executando um software distribuído. Executados

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

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

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

Leia mais

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

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

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

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS 1. Histórico Primeiros computadores Computadores dos anos 50 e 60 Primeiros computadores com sistemas operacionais Surgimento das redes de computadores Nos anos 70 início das pesquisas

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 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

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

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

REDES DE COMPUTADORES Eriko Carlo Maia Porto UNESA Universidade Estácio de Sá eriko_porto@uol.com.br Última revisão Julho/2003 REDES DE COMPUTADORES INTRODUÇÃO EVOLUÇÃO DOS SISTEMAS DE COMPUTAÇÃO Década de 50 introdução dos

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

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

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

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

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

Leia mais

Sistemas 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

Bancos de dados distribuídos Prof. Tiago Eugenio de Melo tiagodemelo@gmail.com. http://www.tiagodemelo.info

Bancos de dados distribuídos Prof. Tiago Eugenio de Melo tiagodemelo@gmail.com. http://www.tiagodemelo.info Bancos de dados distribuídos Prof. Tiago Eugenio de Melo tiagodemelo@gmail.com Última atualização: 20.03.2013 Conceitos Banco de dados distribuídos pode ser entendido como uma coleção de múltiplos bds

Leia mais

Capítulo 8 - Aplicações em Redes

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

Leia mais

Introdução à Arquitetura de Computadores. Prof.ª Ms. Elaine Cecília Gatto

Introdução à Arquitetura de Computadores. Prof.ª Ms. Elaine Cecília Gatto Introdução à Arquitetura de Computadores Prof.ª Ms. Elaine Cecília Gatto 1 O nome refere-se ao matemático John Von Neumann, que foi considerado o criador dos computadores da forma como são projetados até

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

Sistemas Operacionais. Patrícia Megumi Matsumoto Luciana Maria Gregolin Dias

Sistemas Operacionais. Patrícia Megumi Matsumoto Luciana Maria Gregolin Dias Sistemas Operacionais Microsoft Windows R Patrícia Megumi Matsumoto Luciana Maria Gregolin Dias Histórico Início da década de 80 MS-DOS (vai evoluindo, mas sem nunca deixar de ser um SO orientado à linha

Leia mais

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

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

Leia mais

Sistemas distribuídos:comunicação

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

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS Cluster, Grid e computação em nuvem Slide 8 Nielsen C. Damasceno Introdução Inicialmente, os ambientes distribuídos eram formados através de um cluster. Com o avanço das tecnologias

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

InteGrade: Middleware para Computação em Grade Oportunista

InteGrade: Middleware para Computação em Grade Oportunista InteGrade: Middleware para Computação em Grade Oportunista Fabio Kon (coordenador) Siang W. Song (vice) Universidades participantes: IME/USP, PUC-Rio, UFMS, UFG, UFMA São Paulo, Fevereiro de 2006 InteGrade

Leia mais

Análise de Desempenho de um SGBD para Aglomerado de Computadores

Análise de Desempenho de um SGBD para Aglomerado de Computadores Análise de Desempenho de um SGBD para Aglomerado de Computadores Diego Luís Kreutz, Gabriela Jacques da Silva, Hélio Antônio Miranda da Silva, João Carlos Damasceno Lima Curso de Ciência da Computação

Leia mais

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Engenharia de Software I Informática 2009 Profa. Dra. Itana Gimenes RUP: Artefatos de projeto Modelo de Projeto: Use-Case Realization-projeto

Leia mais

Teleprocessamento e Redes Universidade Católica do Salvador. Aula 04 - Estrutura de Redes de Comunicação. Objetivo : Roteiro da Aula :

Teleprocessamento e Redes Universidade Católica do Salvador. Aula 04 - Estrutura de Redes de Comunicação. Objetivo : Roteiro da Aula : Teleprocessamento e Redes Universidade Católica do Salvador Aula 04 - Estrutura de Redes de Comunicação Objetivo : Nesta aula, vamos começar a entender o processo de interligação entre os equipamentos

Leia mais

SISTEMAS DISTRIBUIDOS. Prof. Marcelo de Sá Barbosa

SISTEMAS DISTRIBUIDOS. Prof. Marcelo de Sá Barbosa Prof. Marcelo de Sá Barbosa Introdução Visão geral das técnicas de segurança Algoritmos de criptografia Assinaturas digitais Criptografia na prática Introdução A necessidade de proteger a integridade e

Leia mais

Plano de Ensino IDENTIFICAÇÃO

Plano de Ensino IDENTIFICAÇÃO Plano de Ensino IDENTIFICAÇÃO EIXO TECNOLÓGICO: Informação e Comunicação CURSO: Tecnologia em Sistemas para Internet FORMA/GRAU:( )integrado ( )subsequente ( ) concomitante ( ) bacharelado ( ) licenciatura

Leia mais

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

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

Leia mais

Sistemas 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

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

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

Leia mais

23/05/12. Computação em Nuvem. Computação em nuvem: gerenciamento de dados. Computação em Nuvem - Características principais

23/05/12. Computação em Nuvem. Computação em nuvem: gerenciamento de dados. Computação em Nuvem - Características principais Computação em Nuvem Computação em nuvem: gerenciamento de dados Computação em nuvem (Cloud Computing) é uma tendência recente de tecnologia cujo objetivo é proporcionar serviços de Tecnologia da Informação

Leia mais

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

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

Leia mais

Projeto de Arquitetura

Projeto de Arquitetura Projeto de Arquitetura Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 11 Slide 1 Objetivos Apresentar projeto de arquitetura e discutir sua importância Explicar as decisões de projeto

Leia mais

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

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

Leia mais

Arquitetura de Sistemas Operacionais Machado/Maia. Arquitetura de Sistemas

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

Leia mais

Unidade 13: Paralelismo:

Unidade 13: Paralelismo: Arquitetura e Organização de Computadores 1 Unidade 13: Paralelismo: SMP e Processamento Vetorial Prof. Daniel Caetano Objetivo: Apresentar os conceitos fundamentais da arquitetura SMP e alguns detalhes

Leia mais

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

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

Leia mais

Apostila de Gerenciamento e Administração de Redes

Apostila de Gerenciamento e Administração de Redes Apostila de Gerenciamento e Administração de Redes 1. Necessidades de Gerenciamento Por menor e mais simples que seja uma rede de computadores, precisa ser gerenciada, a fim de garantir, aos seus usuários,

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

Introdução à Computação: Sistemas de Computação

Introdução à Computação: Sistemas de Computação Introdução à Computação: Sistemas de Computação Beatriz F. M. Souza (bfmartins@inf.ufes.br) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória,

Leia mais

Visão Geral de Sistemas Operacionais

Visão Geral de Sistemas Operacionais Visão Geral de Sistemas Operacionais Sumário Um sistema operacional é um intermediário entre usuários e o hardware do computador. Desta forma, o usuário pode executar programas de forma conveniente e eficiente.

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

PEER DATA MANAGEMENT SYSTEM

PEER DATA MANAGEMENT SYSTEM PEER DATA MANAGEMENT SYSTEM INTRODUÇÃO, INFRA-ESTRUTURA E MAPEAMENTO DE ESQUEMAS AGENDA Data Management System Peer Data Management System P2P Infra-estrutura Funcionamento do PDMS Mapeamento de Esquemas

Leia mais

IMPLANTAÇÃO DE UM AMBIENTE DE ALTA DISPONIBILIDADE DE REDE E MONITORAÇÃO DINÂMICA DE INFRAESTRUTURA EM SERVIDORES WEB.

IMPLANTAÇÃO DE UM AMBIENTE DE ALTA DISPONIBILIDADE DE REDE E MONITORAÇÃO DINÂMICA DE INFRAESTRUTURA EM SERVIDORES WEB. IMPLANTAÇÃO DE UM AMBIENTE DE ALTA DISPONIBILIDADE DE REDE E MONITORAÇÃO DINÂMICA DE INFRAESTRUTURA EM SERVIDORES WEB. Marllus de Melo Lustosa (bolsista do PIBIC/UFPI), Luiz Cláudio Demes da Mata Sousa

Leia mais

Arquitetura e Organização de Computadores

Arquitetura e Organização de Computadores Arquitetura e Organização de Computadores Fernando Fonseca Ramos Faculdade de Ciência e Tecnologia de Montes Claros Fundação Educacional Montes Claros 1 Metodologia da Disciplina 1-Objetivo 2-Competências

Leia mais

Organização de Computadores 1

Organização de Computadores 1 Organização de Computadores 1 SISTEMA DE INTERCONEXÃO (BARRAMENTOS) Prof. Luiz Gustavo A. Martins Arquitetura de von Newmann Componentes estruturais: Memória Principal Unidade de Processamento Central

Leia mais

Gerência de Redes. Profa. Márcia Salomão Homci mhomci@hotmail.com

Gerência de Redes. Profa. Márcia Salomão Homci mhomci@hotmail.com Gerência de Redes Profa. Márcia Salomão Homci mhomci@hotmail.com Plano de Aula Histórico Introdução Gerenciamento de Redes: O que é Gerenciamento de Redes? O que deve ser gerenciado Projeto de Gerenciamento

Leia mais

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 02 - Estrutura dos Sistemas Operacionais. Cursos de Computação

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 02 - Estrutura dos Sistemas Operacionais. Cursos de Computação Cursos de Computação Sistemas Operacionais Prof. M.Sc. Sérgio Teixeira Aula 02 - Estrutura dos Sistemas Operacionais Referência: MACHADO, F.B. ; MAIA, L.P. Arquitetura de Sistemas Operacionais. 4.ed. LTC,

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

Avaliação do Uso de Xen em Ambientes de Computação de Alto Desempenho

Avaliação do Uso de Xen em Ambientes de Computação de Alto Desempenho Avaliação do Uso de Xen em Ambientes de Computação de Alto Desempenho Márcio Parise Boufleur Guilherme Piegas Koslovski Andrea Schwertner Charão LSC - Laboratório de Sistemas de Computação UFSM - Universidade

Leia mais

Análise e Projeto de Sistemas. Engenharia de Software. Análise e Projeto de Sistemas. Contextualização. Perspectiva Histórica. A Evolução do Software

Análise e Projeto de Sistemas. Engenharia de Software. Análise e Projeto de Sistemas. Contextualização. Perspectiva Histórica. A Evolução do Software Análise e Projeto de Sistemas Análise e Projeto de Sistemas Contextualização ENGENHARIA DE SOFTWARE ANÁLISE E PROJETO DE SISTEMAS ENGENHARIA DA INFORMAÇÃO Perspectiva Histórica Engenharia de Software 1940:

Leia mais

SGBD x Disponibilidade

SGBD x Disponibilidade SGBD x Disponibilidade Objetivo Escopo Motivação Conceitos básicos Disponibilidade Redundância de software Redundância de hardware 1 Objetivo: Objetivo Discutir tecnologias e práticas operacionais utilizadas

Leia mais

Introdução à Computação: Sistemas de Computação

Introdução à Computação: Sistemas de Computação Introdução à Computação: Sistemas de Computação Beatriz F. M. Souza (bfmartins@inf.ufes.br) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória,

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

Tópicos em Sistemas Distribuídos. Modelos de Comunicação

Tópicos em Sistemas Distribuídos. Modelos de Comunicação Tópicos em Sistemas Distribuídos Modelos de Comunicação Comunicação em SD Comunicação entre processos Sockets UDP/TCP Comunicação em grupo Broadcast Multicast Comunicação entre processos Conceitos básicos

Leia mais

BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING

BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING http://www.uniriotec.br/~tanaka/tin0036 tanaka@uniriotec.br Bancos de Dados Distribuídos Conceitos e Arquitetura Vantagens das Arquiteturas C/S (em relação

Leia mais

Sistemas Operacionais Gerência de Dispositivos

Sistemas Operacionais Gerência de Dispositivos Universidade Estadual de Mato Grosso do Sul UEMS Curso de Licenciatura em Computação Sistemas Operacionais Gerência de Dispositivos Prof. José Gonçalves Dias Neto profneto_ti@hotmail.com Introdução A gerência

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

Arquitetura e Organização de Computadores 2. Apresentação da Disciplina

Arquitetura e Organização de Computadores 2. Apresentação da Disciplina Arquitetura e Organização de Computadores 2 Apresentação da Disciplina 1 Objetivos Gerais da Disciplina Aprofundar o conhecimento sobre o funcionamento interno dos computadores em detalhes Estudar técnicas

Leia mais

Bancos de Dados Móveis

Bancos de Dados Móveis Agenda Bancos de Dados Móveis Acadêmicas: Anete Terezinha Trasel Denise Veronez Introdução Banco de Dados Móveis (BDM) Projetos de BDM SGBD Móveis Conclusão Referências Bibliográficas Introdução Avanços

Leia mais

Redes de Computadores I Conceitos Básicos

Redes de Computadores I Conceitos Básicos Redes de Computadores I Conceitos Básicos (11 a. Semana de Aula) Prof. Luís Rodrigo lrodrigo@lncc.br http://lrodrigo.lncc.br 2011.02 v1 2011.11.03 (baseado no material de Jim Kurose e outros) Algoritmos

Leia mais

Seminário: Google File System (GFS)

Seminário: Google File System (GFS) UNIVERSIDADE FEDERAL DE SANTA CATARINA UFSC Disciplina: Sistemas Operacionais I INE5355 Alunos: Armando Fracalossi 06132008 Maurílio Tiago Brüning Schmitt 06132033 Ricardo Vieira Fritsche 06132044 Seminário:

Leia mais

SISTEMAS DISTRIBUIDOS

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

Leia mais

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

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

Sistemas Operacionais

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

Leia mais

Introdução ao Modelos de Duas Camadas Cliente Servidor

Introdução ao Modelos de Duas Camadas Cliente Servidor Introdução ao Modelos de Duas Camadas Cliente Servidor Desenvolvimento de Sistemas Cliente Servidor Prof. Esp. MBA Heuber G. F. Lima Aula 1 Ciclo de Vida Clássico Aonde estamos? Page 2 Análise O que fizemos

Leia mais

O que são sistemas supervisórios?

O que são sistemas supervisórios? O que são sistemas supervisórios? Ana Paula Gonçalves da Silva, Marcelo Salvador ana-paula@elipse.com.br, marcelo@elipse.com.br RT 025.04 Criado: 10/09/2004 Atualizado: 20/12/2005 Palavras-chave: 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

Notas da Aula 15 - Fundamentos de Sistemas Operacionais

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

Leia mais

Sistemas Distribuídos: Conceitos e Projeto Classificação de Sistemas Distribuídos e Middleware

Sistemas Distribuídos: Conceitos e Projeto Classificação de Sistemas Distribuídos e Middleware Sistemas Distribuídos: Conceitos e Projeto Classificação de Sistemas Distribuídos e Middleware Francisco José da Silva e Silva Laboratório de Sistemas Distribuídos (LSD) Departamento de Informática / UFMA

Leia mais

Paradigma Cliente/Servidor

Paradigma Cliente/Servidor Paradigma Cliente/Servidor Mário Meireles Teixeira UFMA Departamento de Informática Dezembro, 2012 Comunicação em Sistemas Distribuídos! Os processos em um SD estão lógica e fisicamente separados. Precisam

Leia mais

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

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

Leia mais

3. Comunicação em Sistemas Distribuídos

3. Comunicação em Sistemas Distribuídos 3. Comunicação em 3.1.Troca de mensagens As mensagens são objetos de dados cuja estrutura e aplicação são definidas pelas próprias aplicações que a usarão. Sendo a troca de mensagens feita através de primitivas

Leia mais

Equipamentos de Rede. Prof. Sérgio Furgeri 1

Equipamentos de Rede. Prof. Sérgio Furgeri 1 Equipamentos de Rede Repetidor (Regenerador do sinal transmitido)* Mais usados nas topologias estrela e barramento Permite aumentar a extensão do cabo Atua na camada física da rede (modelo OSI) Não desempenha

Leia mais