Autores

1791
Adriana Magalhães de Barros
163,760
1792
163,760

Informações:

Publicações do PESC

Título
Um Ambiente para Desenvolvimento de Algoritmos Distribuídos
Linha de pesquisa
Arquitetura e Sistemas Operacionais
Tipo de publicação
Dissertação de Mestrado
Número de registro
Data da defesa
9/9/1999
Resumo

Esta tese apresenta uma ferramenta para desenvolvimento de algoritmos distribuídos síncronos e assíncronos. Os algoritmos a serem investigados devem estar escritos segundo o modelo para descrição de algoritmos distribuídos apresentado no livro "An Introduction to Distributed Algorithms" de Valmir C. Barbosa. O ambiente foi desenvolvido utilizando o padrão para passagem de mensagens MPI (Message Passing Interface) e a linguagem de programação C. A interface gráfica com o usuário foi desenvolvida para a Internet, utilizando o padrão HTML (Hypertext Markup Language) e CGI (Common Gateway Interface). O ambiente implementado permite que o usuário realize várias experimentações, variando o número de nós, a topologia, o número de processadores e a capacidade do buffer de mensagens, e tem como resultado um programa executável que realiza a execução do algoritmo informado. No caso de algoritmos distribuídos síncronos, para gerar o programa, foi utilizado um sincronizador para converter o mesmo em um algoritmo assíncrono. Para realizar esta conversão, o usuário poderá indicar um dos dois tipos de sincronizadores implementados: Alfa ou Beta. 

Abstract

This thesis presents a tool for the development of asynchronous and synchronous distributed algorithms. The algorithms to be investigated must be written according to the template given in "An Introduction to Distributed Algorithms" by Valmir C. Barbosa. The environment was developed using the MPI (Message Passing Interface) standard for message-passing and the C programming language. The user interface was developed for the Internet, using the HTML (Hypertext Markup Language) standard and CGI (Common Gateway Interface). The environment allows the user to perform several experiments varying the number of nodes, the topology, the number of processors and the size of message buffers, and yields as a result an executable program that runs the algorithm under development. In the case of synchronous distributed algorithm, a synchronizer is used to convert it into an asynchronous distributed algorithm. In order to perform this conversion, the user may indicate one of the two implemented synchronizers: Alpha or Beta.

Arquivo
Topo