Original Article: A Toolkit for the Simulation of Distributed Algorithms in Java
Author: Wolfgang Schreiner
RISC-Linz logo

Um Kit de Ferramentas para a Simulação de Algoritmos Distribuídos em Java



Nós descrevemos um toolkit para projetar, implementar, testar, simular e visualizar algoritmos distribuídos em Java. O toolkit consiste em uma biblioteca de classes Java com uma interface de programação simples que permite desenvolver algoritmos distribuídos baseados em um modelo de passagem de mensagens. Os programas resultantes podem ser executados em modo autônomo usando um interpretador Java ou incorporados como applets em páginas HTML e executados por navegadores da Web. O objetivo do toolkit é fornecer uma plataforma universalmente acessível para pesquisa e educação na área de algoritmos distribuídos. O kit de ferramentas está disponível gratuitamente na World Wide Web.

Exemplos
Execute programas distribuídos como miniaplicativos em seu navegador da Web.
3 Nós em um anel
Um programa trivial distribuído.
Instantâneos Distribuídos
Uma aplicação do algoritmo Chandy-Lamport para encontrar instantâneos globais consistentes de uma rede.
Construção paralela do casco convexo
Uma implementação de um algoritmo paralelo para o cálculo do casco convexo de um conjunto de pontos.
Detecção de Terminação
Uma implementação de um algoritmo de detecção de terminação distribuída descrito por Dijkstra.
Breadth Primeira Pesquisa (Outra Solução)
A construção de um spanning árvore de altura mínima.
Algoritmo do convite
O algoritmo de convite para a eleição de líder.
Algoritmo de Exclusão Mútua de Maekawa
Uma abordagem de votação para o problema de exclusão mútua.
LyHudak Exclusão Mútua
Exclusão mútua por um token com compactação de caminho.
Exclusão mútua RicartAgrawala (Outra Solução)
Exclusão mútua pelo uso do tempo lógico para sincronizar o acesso à região crítica.
Dijkstra Scholten Detecção de Terminação
Detecção de terminação pela manutenção de uma árvore de processos ativos.
Transmissão Totalmente Ordenada (Fontes | Apresentação)
Transmissão totalmente ordenada baseada em comunicação ponto-a-ponto.
Programas (Ajuda) (Problemas) (Cópia) (Instalação) (Lançamento)
Ajuda on-line para a interface de visualização; Problemas conhecidos; Condições de direitos autorais; Como instalar o toolkit; Liberar informações.
Documentação (Online) (Impressão) (Unix) (Windows)
A documentação para navegação on-line (HTML), para impressão (GNU zip PostScript) e para instalação local da versão online em Unix (GNU zip comprimido) ou Windows (PKZIP).
Baixe o Toolkit para JDK 6.0
Ported from the original source by Roman Weidlich (obrigado!).
  1. assert() É renomeado para teste().
  2. Classe Main deve implementar resetStatistics().
Base de ferramentas
(Formato de arquivo Java)
Toolkit AWT Binding
(Formato de arquivo Java)
Fonte
(Código fonte, sinta-se à vontade para usá-lo para seus próprios fins, mas cite o software original).
Baixe o Toolkit 1.0.2 para JDK 1.1
Use esta versão se você usar o JDK 1.1.x.
Base de ferramentas
Baixe um dos seguintes arquivos.
Toolkit AWT Binding
Baixe um dos seguintes arquivos.
Download Toolkit 1.0.2 para JDK 1.0
Use esta versão para JDK 1.0. x e / ou se você quiser escrever applets para navegadores desatualizados.
Base de ferramentas
Baixe um dos seguintes arquivos.
Toolkit AWT Binding
Baixe um dos seguintes arquivos.
Instalação em RISC-Linz