Sie sind auf Seite 1von 4

Proyecto grupal _ pregrado-T2690PU1E1AED1V01

-
Módulo SISTEMAS DISTRIBUIDOS

Nivel académico PREGRADO

Nombre del proyecto Implementación de tecnologías Sockets, Procesamiento paralelo y


programación paralela

Competencias y Conocer los conceptos fundamentales de los sistemas distribuidos, aprender a


elementos de procesos transaccionales en máquinas virtuales con VirtualBox e instalar el
competencia a desarrollar sistema operacional distribuido Rocks, aprender a compilar MPI con gcc,
desarrollar ejercicios de programación paralela

Indicadores de DEFINICIÓN DEL PROYECTO


competencia
Descripción del proyecto.
Se deben crear tres máquinas virtuales enlazadas a través de una
red interna, de tal manera que se vean y hagan ping.
El objetivo es aprender en primera estancia a trabajar con
aplicaciones distribuidas transaccionales para lo cual se debe
montar una máquina virtual con Linux y sobre esta máquina instalar
el eclipse para Java. Una vez echa esta parte de la primera entrega
desarrollar un taller de sockets que se explica más adelante.
En segunda estancia, se busca que se aprenda a crear un sistema
HPC (High performance Compute) enlazando una maquina master
con dos máquinas virtuales esclavas en Linux, probar la
interconexión las redes y desarrollar los talleres de la segunda y
tercera entrega.
SUGENRENCIA. Se sugiere que cada estudiante, elabore en su
portátil para que vaya adquiriendo el conocimiento y luego integrar
los resultados del grupo en el documento maestro.
Al finalizar el módulo, se debe entregar un DOCUMENTO
COMPLETO, con el desarrollo de las respectivas competencias.

[ POLITÉCNICO GRANCOLOMBIANO ]
INSTRUCCIONES PARA ENTREGAR EL PROYECTO

El estudiante debe ir elaborando las entregas 1, 2 y 3 en cada semana conforme a las


instrucciones para la elaboración del proyecto.
Para elaborar el proyecto, el estudiante debe ir aplicando los procesos metodológicos del
programa, hacer ejercicios de clase y una vez afianzado el conocimiento debe comenzar a
construir las respectivas entregas en las fechas pactadas en el curso

ENTREGA 1 (SEMANA 3)

Primera entrega:
1. Para realizar esta entrega es indispensable que realice las lecturas de los escenarios 1 y 2
sobre Fundamentos de los sistemas distribuidos y el manejo de sockets.
2. Instalar VirtuaBox 5.2 de 64 bits para Windows si su computador está con sistema operacional
Windows (Software libre), luego montar el sistema operacional Linux CentOS 6.8 en la
Máquina Virtual (VM) de 40 GB de disco, un Core y 1024 gb de Memoria RAM. Durante el
proceso de instalación habilite la aplicación de eclipse y el Java.
3. Actualizar el sistema operacional (yum -y update) y exportarla para tener una copia de
respaldo
4. Desarrollar una aplicación Cliente-Servidor para un taller transaccional utilizando sockets así:
a. Montar el compilador de Java

b. Cree un archivo llamado datos.dat utilizando la utilidad manejo de archivos en Java.


El archivo debe guardar los siguientes campos: numero de cuenta, nombre del cliente
y saldo. Grabe los datos para 5 clientes.

c. Elabore un programa socket Server que recoja las peticiones de un programa cliente.

d. Elabore un programa socket Cliente que solicite al programa socket server que lea un
registro dado, si lo encuentra, entonces modifique el saldo ya sea restándole un valor
o sumándole un valor y le envíe un OK al cliente si la operación fue exitosa, o un NO-
OK si la operación falló. El cliente recibe el mensaje y cierra la transacción, pero el
socket servidor queda abierto esperando por si otro cliente solicita servicio.

e. Después el socket cliente hace una consulta como lo hace un cajero automático.

f. Elabore el documento con la documentación resumida del estado del arte de lo


que es la programación con sockets y agregue el diseño de su aplicación
y la trazabilidad con las pruebas del proceso descrito anteriormente.

ENTREGA 2 (SEMANA 5)

Haga un diseño de una red interna y una red publica NAT, para enlazar tres máquinas
virtuales.

[NOMBRE DEL MÓDULO]


1. Monte una máquina virtual MASTER con VirtualBox de 50 GB, un Core y 1024 de RAM.
Configure una red LAN interna por el dispositivo 1 llamada Rocks y una red Pública por el
dispositivo 2, como NAT.

2. Cree una segunda máquina virtual de 30 GB, 1 Core y 1024 bytes de RAM con el nombre
“nodo-0” Configure una red LAN interna llamada Rocks por el dispositivo de red 1.

3. Cree una tercera máquina virtual de 30 GB, 1 Core y 1024 bytes de RAM con el nombre “nodo-
1” Configure una red LAN interna llamada Rocks por el dispositivo de red 1.

4. PROCEDA A MONTAR EL SISTEMA OPERACIONAL DISTRIBUIDO HPC con ROCKS

a. Descargue el Rocks 6.1.1 o 6.2 de la página oficial de Rockscluster.org y proceda


a su instalación. http://www.rocksclusters.org/downloads.html
b. Instale el Rocks server en el Master. Vaya documentando el proceso.
c. Instale el Rocks cliente en los nodos y vaya documentado el proceso
d. Aprenda a usar los comandos básicos de Rocks, tales como ssh, rocks list, ganglia,
etc.
e. Escriba el programa “holamundo.c” que se deja a continuación, compílelo y
córralo. Luego adjunte las evidencias al documento de la segunda entrega. (Solicite
asistencia al tutor por el correo y en los encuentros).
#include <stdio.h>
#include "mpi.h"

int main(int argc, char *argv[ ])


{
int rank, size;
MPI_Init(&argc, &argv);

MPI_Comm_rank(MPI_COMM_WORLD, &rank);
MPI_Comm_size(MPI_COMM_WORLD, &size);

printf(“Soy el core nro. %d de %d\n”, rank, size);

MPI_Finalize();
return 0;
}

Referencias:
https://www.ele.uva.es/~ivasan/HPC/abstracts/2015_2016_Diego_Jose.pdf
http://www.rocksclusters.org/docs/guides.html

[ POLITÉCNICO GRANCOLOMBIANO ]
https://e-archivo.uc3m.es/bitstream/handle/10016/18024/PFC-IgnacioVeronaRios.pdf (ver
página 63 en adelante para uso de comandos)

ENTREGA 3 Y SUSTENTACIÓN (SEMANAS 7)

Tercera entrega: Con base en el Rocks instalado en la entrega 2, desarrolle un programa


utilizando los fundamentos del cálculo de un área bajo la curva, que consiste en dividir el
área de la curva de la figura 5.a de la lectura del escenario 6, página 23, en trapecios
sucesivos como se muestra en la figura 5b, mediante sumas sucesivas, lo cual nos lleva al
uso de la integración de la función entre los límites a y b de f(x)dx.

b
y y = f(x) y y= f(x)dx
a

a b
x a b
(a) (b)

Revise las referencias [1, 2] de la lectura del escenario 6 y en su máster y con dos Cores (tres
máquinas virtuales), convierta el seudocódigo de la lectura en código revise otras
bibliografías, complete el programa en C paralelo y hágalo correr.
Agregue todas las evidencias y complete el documento de la entrega y aliste la
sustentación en un video que debe cargar en YouTube cargando el enlace en la
plataforma o cargue el video en la plataforma si el video es liviano.

CARGUE EL DOCUMENTO FINAL. Este documento debe contener todo lo requerido en


la tercera entrega.

ENTREGA 3 Y SUSTENTACIÓN (SEMANAS 7 Y 8)

[NOMBRE DEL MÓDULO]

Das könnte Ihnen auch gefallen