Un juego de herramientas para la simulación de algoritmos distribuidos en Java

Original web-page: https://www.risc.jku.at/software/daj/

Se describe un conjunto de herramientas para el diseño, implementación, pruebas, simulación y visualización de algoritmos distribuidos en Java. El juego de herramientas se compone de una biblioteca de clases de Java con una interfaz de programación simple que permite desarrollar algoritmos distribuidos en base a un modelo de paso de mensajes. Los programas resultantes pueden ser ejecutados en modo autónomo utilizando un intérprete de Java o incrustados como applets en páginas HTML y ejecutado por los navegadores web. El objetivo del juego de herramientas es proporcionar una plataforma de acceso universal para la investigación y la educación en el área de algoritmos distribuidos. El kit de herramientas está disponible gratuitamente en la World Wide Web.

EjemplosEjecutar programas distribuidos como applets en el navegador web.

3 nodos en un anillo
Un programa distribuido trivial.
Las instantáneas distribuidas
Una aplicación del algoritmo de Lamport-Chandy para encontrar instantáneas globales consistentes de una red.
Paralelo construcción del casco convexo
Una implementación de un algoritmo paralelo para el conputation de la envolvente convexa de un conjunto de puntos.
La detección de terminación
Una implementación de un algoritmo de detección de terminación distribuido descrito por Dijkstra.
Búsqueda en anchura (la otra solución)
La construcción de un árbol de expansión de altura mínima.
Invitación Algoritmo
El algoritmo de invitación a elección del líder.
Exclusión Mutua de Maekawa Algoritmo
Un enfoque de votación para el problema de la exclusión mutua.
LyHudak Exclusión Mutua
La exclusión mutua por un contador con compresión de caminos.
RicartAgrawala Exclusión Mutua (otra solución)
La exclusión mutua mediante el uso de tiempo lógico para sincronizar el acceso a la región crítica.
Detección de terminación Dijkstra Scholten
detección de terminación mediante el mantenimiento de un árbol de procesos activos.
Totalmente ordenado Broadcast (Fuentes | Presentación)
Totalmente ordenado radiodifusión basada en la comunicación de punto a punto.

Software (Ayuda) (Problemas) (copia) (Instalación) (Release) Ayuda en línea para la interfaz de visualización; problemas conocidos; condiciones de derecho de autor; cómo instalar el kit de herramientas; divulgar información.Documentación (en línea) (Impresión) (Unix) (de Windows) (Traducción del francés )La documentación para la navegación en línea (HTML), para la impresión (GNU cremallera PostScript), y para la instalación local de la versión en línea en Unix (GNU tar comprimido) o Windows (PKZIP).Descargar el Kit de herramientas de JDK 6.0 Portado desde la fuente original mediante romana Weidlich (gracias!).

  1. assert() se cambia el nombre a test() .
  2. Clase Main debe implementar resetStatistics() .
Base Toolkit
(Formato de archivo de Java)
Toolkit AWT Encuadernación
(Formato de archivo de Java)
Fuente
(El código fuente, no dude en usarlo para sus propios fines, pero por favor citar el software original).

1.0.2 descargar el Kit de herramientas de JDK 1.1Utilice esta versión si se utiliza JDK 1.1. x.

Base Toolkit
Descargar uno de los siguientes archivos.

Toolkit AWT Encuadernación
Descargar uno de los siguientes archivos.

Descargar Toolkit 1.0.2 para JDK 1.0Utilice esta versión de JDK 1.0. x y/o si desea escribir applets para navegadores obsoletos.

Base Toolkit
Descargar uno de los siguientes archivos.

Toolkit AWT Encuadernación
Descargar uno de los siguientes archivos.

Instalación en RISC-Linz 

 

About the Author