SlideShare una empresa de Scribd logo
1 de 37
Descargar para leer sin conexión
¿Qué es y qué no es un
sistema distribuido?
M.C. Juan Carlos Olivares Rojas
Distribuir
• Según el diccionario: “dividir una cosa entre
varios designando lo que a cada uno
corresponde”
• Problemática: muchas tecnologías aparentan
ser distribuidas como cómputo paralelo,
concurrencia, grid computing, P2P, sistemas
con múltiples procesadores o núcleos, etc.,
pero ¿realmente lo son?
¿Qué es un Sistema Distribuido
(SD)?
• “Es una colección de computadoras
independientes que aparecen ante los
usuarios del sistema como una única
computadora” [1] (Principio de transparencia)
• El objetivo de los SDs es descentralizar el
cómputo basándose en el paradigma de
“divide y vencerás”; logrando mayor eficacia,
mayor tolerancia a fallos, seguridad, mayor
velocidad, entre otros.*
¿Qué es un Sistema Distribuido
(SD)?
• Para lograr la distribución del cómputo se
necesitan de diversas entidades que puedan
atender una determinada cantidad de
procesos en un momento determinado.
• Según [2] la mayor problemática de los SDs
es la gran heterogeneidad tanto en software y
en especial en hardware, ya que se necesita
de mucho esfuerzo para lograr la
transparencia.
Arquitecturas de cómputo
• Taxonomía de Flynn:
– SISD (Single Instruction Single Data) Procesador
único.
– SIMD (Single Instruction Multiple Data).
Procesadores vectoriales (multimedia)
– MISD (Multipe Instruction Single Data). No
implementada
– MIMD Multiple Instruction Multiple Data. Cómputo
distribuido
Cómputo Distribuido
• La distribución del cómputo puede realizarse
de diversas formas de acuerdo a su grado de
acoplamiento en:
– Fuertemente acopladas: Multiprocesadores
(memoria compartida). UMA (Uniform Memory
Acces)
– Débilmente acopladas: Multicomputadoras
(memoria privada). NUMA (Non Uniform Memory
Access)
Sistemas multiprocesadores
• Son sistemas que tienen dos o más
procesadores (CPU), comparten las misma
memoria (espacio de direcciones).
• Los sistemas multinúcleos es la nueva
tendencia en el desarrollo de sistemas
multiprocesadores. En un solo chip se tienen
varios procesadores (no es nada nuevo bajo
el sol).
Tarjeta madre
Tarjeta madre
Sistemas multiprocesadores
CPU 1 CPU nCPU 2
Memoria
Modelo de n procesadores
CPU
N1 Nn
Memoria
Modelo de n núcleos
…
…
Sistemas multicomputadoras
• Son sistemas donde cada unidad de proceso
es autónoma e independiente de las demás
pero trabajan de manera conjunta.
• La interconexión de unidades de proceso se
hace a través de redes de computadora de
preferencia de altas velocidades.
• Este es el concepto más estandarizado de un
SD.
Sistemas Distribuidos
• Generalmente están asociado al modelo
cliente/servidor (c/s). Muchos servicios de Internet
siguen este modelo: Web, e-mail, etc.
• En el modelo c/s, el proceso cliente realiza
peticiones de procesamiento al proceso servidor,
realizando éste último el trabajo pesado.
• Existen otros modelos como P2P (par a par), cluster
y grid computing.
Sistemas Distribuidos
Cliente Servidor
Solicitud
Respuesta
Modelo Cliente/Servidor Tradicional
Cliente 1
Servidor
Modelo Cliente/Servidor Concurrente
Cliente
Proxy en
el lado
cliente
Modelo Cliente/Servidor de n capas
Cliente
Proxy en
el lado
servidor
Cliente n
.
.
Sistemas Distribuidos
C1
C2
Cn
P2P
Simétrico
C0
Coordinador
C1
C2
Cn…
Cluster
Asimétrico
Planificador
CPU
Memoria
Disco
C1
Planificador
CPU
Memoria
DISCO
C2
Planificador
CPU
MEMORIA
Disco
Cn
.
.
.
Grid computing
Tecnologías de Sistemas Distribuidos
• Sockets (API Berkeley, WinSocks) C, Java, etc.
• RPC (Remote Procedure Call) C
• RMI (Remote Method Invocation) Java
• DCOM (Distributed Component Object Model)
Propietario de Microsoft
• CORBA (Common Object Request Broker
Architecture) C, C++, Java, etc
• .NET Remoting C#, C++, J#, etc.
• Servicios Web (SOA), XML (SOAP, WSDL, UDDI)
Sistemas Distribuidos
• P2P (Peer to Peer) los procesos son totalmente
descentralizados, funcionan como clientes y
servidores a la vez, existen diversas arquitecturas
[3].
• Cluster es una agrupación de computadoras
intercomunicadas entre sí a través de un nodo
central y cuyo objetivo es realizar una tarea
específica.
• Grid computing es muy parecido a P2P y al cluster.
Sistemas Distribuidos
• Grid computing se parece al cluster en que
consisten en una asociación de
computadoras con la única diferencia de que
no existe un nodo centralizador. Está
característica lo asemeja a P2P [4].
• La idea del grid es que el poder de cómputo
siempre esté presente a semejanza de la red
eléctrica.
¿Es el cómputo paralelo un sistema
distribuido?
• Sí y No. Depende de la implementación.
• Los objetivos de la programación en paralelo
de acuerdo con [5] son:
– Reducir el tiempo de procesamiento utilizado por
un algoritmo convencional
– Reducir la complejidad del algoritmo
Paralelismo
A B C D
A
B
C
D
P1
P2
P3
P4
Homoparalelismo
A B C D
A
B
C
D
P1
P2
P3
P4
Hetereoparalelismo
Paralelismo
• El problema del paralelismo radica en que
muchos algoritmos no pueden paralelizarse
(son serializable o secuenciales) [6].
• Existen dos tecnologías para realizar
paralelismo:
– PVM (Parallel Virtual Machine) [7]
– MPI (Message Parking Interface) [8][9][10]
Algoritmo paralelos
for(int i = 0; i < 4; i++)
{
aleatorio(i);
}
aleatorio(1) micro1
aleatorio(2) micro2
aleatorio(3) micro3
aleatorio(4) en espera
• Compilador optimizado. Sistemas Operativos
optimizados
Algoritmos paralelos
• Instrucciones como while son más difíciles de
paralelizar por que depende de la condición.
• No siempre los compiladores pueden
paralelizar de manera automática un
algoritmo.
• En algunas ocasiones se invierte más tiempo
tratando de paralelizar un algoritmo que
ejecutándolo de manera secuencial.
Algoritmos paralelos
//Procesador uno
for( i=0; i<N/2; i++)
{
a[i]= c+i;
}
//Procesador dos
for( ; i<N; i++)
{
a[i]= c+i;
}
//Procesador uno
for( i=0; i<N/2; i++)
{
a[i]= c+i;
}
//Procesador dos
for( i = N/2; i<N; i++)
{
a[i]= c+i;
}
Algoritmos paralelos
A[0] = C;
//Procesador uno
for( i=1; i<N/2; i++)
{
a[i]= a[i-1]+1;
}
//Procesador 2
for( i=N/2; i<N; i++)
{
a[i]= a[i-1]+1;
}
• ¿Por qué no se puede
paralelizar?
• Por que el segundo
proceso depende del
resultado del primero.
• Si se puede si se encuentra
un algoritmo que permita
encontrar el valor de a[N/2]
directo.
∑=
2/N
Ci
i
Caso práctico MPI
• LAM/MPI, MPICH, MPICH2
• mpd –ncpus=procesadores &
• mpdtrace -1
• mpicc holamundo.c –o holamundo
• mpirun –np 10 ./holamnudo
Holamundo.c en MPI
#include <stdio.h>
#include “mpi.h”
int main(int argc, char **argv)
{
int procesos, rango, tam;
char nombre[MPI_MAX_PROCESSOR_NAME];
MPI_Iinit (&argc, &argv);
MPI_Comm_size(MPI_COMM_WORLD, &procesos);
MPI_Comm_rank(MPI_COMM_WORLD, &rango;
MPI_Get_processor_name(nombre, &tam);
MPI_barrier(MPI_COMM_WORLD);
printf(“Hola, mudo!, soy %d de %d y me ejecuto en:%sn”, rango,
procesos, nombre);
MPI_Finalize();
return 0;
}
Esquema de un programa en MPI
Esquema de un programa en MPI
/*Cabecera de MPI*/
#include <mpi.h>
int main(int argc, char **argv)
{
int quiensoy, tamano;
MPI_Status estado;
/*Inicializamos MPI*/
MPI_Init(&argc, &argv);
/*Preguntamos quienes somos*/
MPI_Comm_rank(MPI_COMM_WORLD, &quiensoy);
/*Nos esperamos hasta quetodos hayan inicializado MPI*/
MPI_Barrier(MPI_COMM_WORLD);
/*Preguntamos cuanto somos*/
MPI_Comm_size(MPI_COMM_WORLD, &tamano);
/*PROGRAMA*/
Esquema de un programa en MPI
if(quiensoy == root)
{
/*Inicialización estrructuras repartidor
Reparte tareas
Espera resultados
Visualiza resultados*/
}
else
{
/*recibe la tarea
realiza cálculos
manda resultados*/
}
/*Finaliza el programa*/
MPI_Finalize();
exit(0);
}
¿Existe un rendimiento extra al
utilizar multiprocesadores?
• Las aplicaciones deben estar optimizadas para
poder ejecutarse en diferentes procesadores.
• Algunos sistemas operativos permiten ejecutar hilos
o procesos hijos en diversos procesadores
• El rendimiento no es del todo proporcional a la
cantidad de procesadores (un sistema con 4
procesadores no es 4 veces mejor que un sistema
de un solo procesador).
¿No existe cómputo distribuido en un
único procesador?
• Formalmente no, se tiene el concepto de
concurrencia y multitarea.
• En el pasado las computadoras sólo podían
realizar una tarea a la vez. Existía mucho
tiempo muerto al acceder recursos
• Se reparte el tiempo de CPU aparentando
que varios procesos se ejecutan al mismo
tiempo.
¿No existe cómputo distribuido en un
único procesador?
• Se debe tomar en cuenta la comunicación
interprocesos (IPC) el cual consiste de
mecanismo para controlar los procesos que
se ejecutan (sockets, semáforos, colas, etc.)
• Es posible ejecutar n procesos distribuidos en
una sola computadora, ya que cada proceso
tiene su propio espacio de direcciones y
cuentan con una interfaz de red local.
Conclusiones
• SD es aquel cuyas entidades de
procesamiento son autónomas,
independientes, no comparten memoria y
están interconectadas por una red de
computadoras (pudiendo estar distribuidas
geográficamente alrededor del mundo)
• Algunas tecnologías no son propiamente
distribuidas. El uso de sistemas distribuidos y
tecnologías afines va en amplio aumento.
¿Preguntas?
Referencias
• [1] A. Tanenbaum, “Sistemas Operativos
Distribuidos”, Prentice Hall, México, 1996, pp. 617,
ISBN: 0-13-219908-4
• [2] G. Colouris, et al., “Sistemas Distribuídos.
Conceptos y Diseño”, tercera edición, Pearson
Addison Wesley, Espana, 2005, pp. 726, ISBN: 84-
7829-049-4
• [3] R. Millán, “Domine las redes P2P”, Alfaomega,
México, 2006, ISBN: 970-15-1206-5, pp. 330.
Referencias
• [4] C. Pérez, “Oracel 10g. Administración y
Análisis de Bases de Datos”, Alfaomega Ra-
Ma, México, 2005, ISBN: 970-15-1102-6, pp.
671
• [5] G. Salazar y V. Ayala Ramírez,
“Programación en paralelo en sistemas
multiproceso”, VI CIECE, Morelia, Michoacán,
México, 1996, pp. 279-285.
Referencias
• [6] R. Sedgewick, “Algoritmos en C++”,
Pearson Educación, México, 2000, ISBN:
968-444-401-X, pp. 726.
• [7] M. Farías, P. Rayon y M. Lazo,
“Programación paralela de un algoritmo para
el cálculo de testores con PVM”, Temas
selectos (selected works ) de investigaciñon
C.I.C. 1997, pp. 118-125, ISBN: 970-18-
3427-5
Referencias
• [8] S. Gómez, “Programación paralela(I)”,
revista sólo programadores, año 12, segunda
época, no. 135, España, pp. 54-60.
• [9] D. Santo, “Message Passing Interface(II)
Configurando y compilando MPI”, revista
Mundo Linux, año VIII, no. 90, pp. 42-47
• [10] D. Santo, “Message Passing Interface(III)
Programando para MPI”, revista Mundo
Linux, año VIII, no. 91, pp. 28-33.
Contacto
• E-mail: jcolivar@itmorelia.edu.mx
• MSN: juancarlosolivares@hotmail.com
• Skype: juancarlosolivares
• Instituto Tecnológico de Morelia
• Departamento de Sistemas y Computación
• Av. Tecnológico 1500 Col. Lomás de
Santiaguito
• Morelia, Michoacán, México
Curriculum Vitae
• M.C. en Ciencias de la Computación, CENIDET
2006
• Ing. Sistemas Computacionales, I.T. Morelia
• Profesor tiempo parcial I.T. Morelia
• Profesor tiempo parcial UNID Morelia
• Áreas de investigación: Sistemas Distribuidos,
Cómputo Móvil, Redes Inalámbricas, Base de Datos
y Sistemas Empotrados.

Más contenido relacionado

La actualidad más candente

Caracteristicas de los Sistemas Distribuidos
Caracteristicas de los Sistemas DistribuidosCaracteristicas de los Sistemas Distribuidos
Caracteristicas de los Sistemas DistribuidosJorge Guerra
 
Entrada/Salida de Sistemas Operativos
Entrada/Salida de Sistemas OperativosEntrada/Salida de Sistemas Operativos
Entrada/Salida de Sistemas OperativosKarina Rivra
 
Metricas del proyecto de Software - introduccion
Metricas del proyecto de Software - introduccionMetricas del proyecto de Software - introduccion
Metricas del proyecto de Software - introduccionJose Diaz Silva
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidosVictor Milano
 
Software en reporte y bitacora
Software en reporte y bitacoraSoftware en reporte y bitacora
Software en reporte y bitacoraCECyTEO
 
Obj 11 capa 7 - aplicacion
Obj 11   capa 7 - aplicacionObj 11   capa 7 - aplicacion
Obj 11 capa 7 - aplicacionPedro Sánchez
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidosnathalyrivasdiaz
 
Los sistemas operativos de Red
Los sistemas operativos de Red Los sistemas operativos de Red
Los sistemas operativos de Red ANDINO2017
 
Unidad 6 Protección y seguridad.
Unidad 6 Protección y seguridad.Unidad 6 Protección y seguridad.
Unidad 6 Protección y seguridad.Juan Anaya
 
Clasificación de los requerimientos
Clasificación de los requerimientosClasificación de los requerimientos
Clasificación de los requerimientosFSILSCA
 

La actualidad más candente (20)

Caracteristicas de los Sistemas Distribuidos
Caracteristicas de los Sistemas DistribuidosCaracteristicas de los Sistemas Distribuidos
Caracteristicas de los Sistemas Distribuidos
 
Tecnicas de Administracion de Memoria
Tecnicas de Administracion de MemoriaTecnicas de Administracion de Memoria
Tecnicas de Administracion de Memoria
 
cliente servidor
cliente servidorcliente servidor
cliente servidor
 
Entrada/Salida de Sistemas Operativos
Entrada/Salida de Sistemas OperativosEntrada/Salida de Sistemas Operativos
Entrada/Salida de Sistemas Operativos
 
Metricas del proyecto de Software - introduccion
Metricas del proyecto de Software - introduccionMetricas del proyecto de Software - introduccion
Metricas del proyecto de Software - introduccion
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidos
 
Cliente servidor
Cliente servidorCliente servidor
Cliente servidor
 
Software de redes
Software de redesSoftware de redes
Software de redes
 
Software en reporte y bitacora
Software en reporte y bitacoraSoftware en reporte y bitacora
Software en reporte y bitacora
 
Exposición - Android
Exposición - AndroidExposición - Android
Exposición - Android
 
Obj 11 capa 7 - aplicacion
Obj 11   capa 7 - aplicacionObj 11   capa 7 - aplicacion
Obj 11 capa 7 - aplicacion
 
sistemas expertos
sistemas expertossistemas expertos
sistemas expertos
 
Modelo de referencia
Modelo de referenciaModelo de referencia
Modelo de referencia
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidos
 
Los sistemas operativos de Red
Los sistemas operativos de Red Los sistemas operativos de Red
Los sistemas operativos de Red
 
Unidad 6 Protección y seguridad.
Unidad 6 Protección y seguridad.Unidad 6 Protección y seguridad.
Unidad 6 Protección y seguridad.
 
Transacciones
TransaccionesTransacciones
Transacciones
 
Gestion de memoria en Linux
Gestion de memoria en LinuxGestion de memoria en Linux
Gestion de memoria en Linux
 
Arquitectura Cliente-Servidor
Arquitectura Cliente-ServidorArquitectura Cliente-Servidor
Arquitectura Cliente-Servidor
 
Clasificación de los requerimientos
Clasificación de los requerimientosClasificación de los requerimientos
Clasificación de los requerimientos
 

Destacado

Algoritmos paralelos
Algoritmos paralelosAlgoritmos paralelos
Algoritmos paralelosDouglas Silva
 
Clase 1 herramientas tecnologicas
Clase 1 herramientas tecnologicasClase 1 herramientas tecnologicas
Clase 1 herramientas tecnologicasErick Ubiel
 
redes sociales importantes
redes sociales importantesredes sociales importantes
redes sociales importantesAranxa Peña
 
Servicios que ofrece Facebook
Servicios que ofrece FacebookServicios que ofrece Facebook
Servicios que ofrece FacebookEugenio Sánchez
 
Cluster beowulf javier condori flores
Cluster beowulf   javier condori floresCluster beowulf   javier condori flores
Cluster beowulf javier condori floresJavier Condori Flores
 
Ce que vous avez toujours voulu...
Ce que vous avez toujours voulu... Ce que vous avez toujours voulu...
Ce que vous avez toujours voulu... racanelli
 
Aumentar el engagement del usuario y reducir la tasa de rebote (2013)
Aumentar el engagement del usuario y reducir la tasa de rebote (2013)Aumentar el engagement del usuario y reducir la tasa de rebote (2013)
Aumentar el engagement del usuario y reducir la tasa de rebote (2013)Nieves Gonzalez
 
Presentation de Monique Romon
Presentation de Monique RomonPresentation de Monique Romon
Presentation de Monique Romontsoret1
 
Paquete de innovacion academica
Paquete de innovacion academicaPaquete de innovacion academica
Paquete de innovacion academicaAlexandro Colorado
 
Cápsulas Regionales 1
Cápsulas Regionales 1Cápsulas Regionales 1
Cápsulas Regionales 1labtalca
 
DíA Del Maestro
DíA Del MaestroDíA Del Maestro
DíA Del Maestrolburgosg
 
Neurocoaching Practico - Hacernos Cargo
Neurocoaching Practico - Hacernos CargoNeurocoaching Practico - Hacernos Cargo
Neurocoaching Practico - Hacernos CargoLuis Gaviria
 
Rescate Proyecto Divino
Rescate Proyecto DivinoRescate Proyecto Divino
Rescate Proyecto DivinoEuler
 
Google apps mayo 2011
Google apps mayo 2011Google apps mayo 2011
Google apps mayo 2011Liz Pagan
 
Commentaires de M. André Marie, chef du bureau des pratiques anti-concurrenti...
Commentaires de M. André Marie, chef du bureau des pratiques anti-concurrenti...Commentaires de M. André Marie, chef du bureau des pratiques anti-concurrenti...
Commentaires de M. André Marie, chef du bureau des pratiques anti-concurrenti...adreani
 

Destacado (20)

Algoritmos paralelos
Algoritmos paralelosAlgoritmos paralelos
Algoritmos paralelos
 
3. diseño de bases de datos distribuidas
3. diseño de bases de datos distribuidas3. diseño de bases de datos distribuidas
3. diseño de bases de datos distribuidas
 
Clase 1 herramientas tecnologicas
Clase 1 herramientas tecnologicasClase 1 herramientas tecnologicas
Clase 1 herramientas tecnologicas
 
redes sociales importantes
redes sociales importantesredes sociales importantes
redes sociales importantes
 
Servicios que ofrece Facebook
Servicios que ofrece FacebookServicios que ofrece Facebook
Servicios que ofrece Facebook
 
Cluster beowulf javier condori flores
Cluster beowulf   javier condori floresCluster beowulf   javier condori flores
Cluster beowulf javier condori flores
 
Ce que vous avez toujours voulu...
Ce que vous avez toujours voulu... Ce que vous avez toujours voulu...
Ce que vous avez toujours voulu...
 
Aumentar el engagement del usuario y reducir la tasa de rebote (2013)
Aumentar el engagement del usuario y reducir la tasa de rebote (2013)Aumentar el engagement del usuario y reducir la tasa de rebote (2013)
Aumentar el engagement del usuario y reducir la tasa de rebote (2013)
 
Presentation de Monique Romon
Presentation de Monique RomonPresentation de Monique Romon
Presentation de Monique Romon
 
FELIZ NAVIDAD
FELIZ NAVIDADFELIZ NAVIDAD
FELIZ NAVIDAD
 
Paquete de innovacion academica
Paquete de innovacion academicaPaquete de innovacion academica
Paquete de innovacion academica
 
Cápsulas Regionales 1
Cápsulas Regionales 1Cápsulas Regionales 1
Cápsulas Regionales 1
 
DíA Del Maestro
DíA Del MaestroDíA Del Maestro
DíA Del Maestro
 
Foiegras
FoiegrasFoiegras
Foiegras
 
Neurocoaching Practico - Hacernos Cargo
Neurocoaching Practico - Hacernos CargoNeurocoaching Practico - Hacernos Cargo
Neurocoaching Practico - Hacernos Cargo
 
Rescate Proyecto Divino
Rescate Proyecto DivinoRescate Proyecto Divino
Rescate Proyecto Divino
 
Google apps mayo 2011
Google apps mayo 2011Google apps mayo 2011
Google apps mayo 2011
 
Commentaires de M. André Marie, chef du bureau des pratiques anti-concurrenti...
Commentaires de M. André Marie, chef du bureau des pratiques anti-concurrenti...Commentaires de M. André Marie, chef du bureau des pratiques anti-concurrenti...
Commentaires de M. André Marie, chef du bureau des pratiques anti-concurrenti...
 
Bisous
BisousBisous
Bisous
 
Désarmement nucléaire
Désarmement nucléaireDésarmement nucléaire
Désarmement nucléaire
 

Similar a Computo Distribuído

Similar a Computo Distribuído (20)

Sd contecsi
Sd contecsiSd contecsi
Sd contecsi
 
3 unidad so2
3 unidad so23 unidad so2
3 unidad so2
 
Categorias sistemas operativos
Categorias sistemas operativosCategorias sistemas operativos
Categorias sistemas operativos
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidos
 
Apuntes de-sistemas-operativos-ii-e2
Apuntes de-sistemas-operativos-ii-e2Apuntes de-sistemas-operativos-ii-e2
Apuntes de-sistemas-operativos-ii-e2
 
AD Unidad1: Fundamentos de sistemas paralelos y distribuidos
AD Unidad1: Fundamentos de sistemas paralelos y distribuidosAD Unidad1: Fundamentos de sistemas paralelos y distribuidos
AD Unidad1: Fundamentos de sistemas paralelos y distribuidos
 
INTRODUCCION A SISTEMAS OPERATIVOS
INTRODUCCION A SISTEMAS OPERATIVOSINTRODUCCION A SISTEMAS OPERATIVOS
INTRODUCCION A SISTEMAS OPERATIVOS
 
01-Conceptos_Basicos.pdf
01-Conceptos_Basicos.pdf01-Conceptos_Basicos.pdf
01-Conceptos_Basicos.pdf
 
Presentacion sistemas operativos
Presentacion sistemas operativosPresentacion sistemas operativos
Presentacion sistemas operativos
 
S. o. 2 unidad 1
S. o. 2 unidad 1S. o. 2 unidad 1
S. o. 2 unidad 1
 
UNIDAD 1: SISTEMAS OPERATIVOS EN AMBIENTES DISTRIBUIDOS
UNIDAD 1: SISTEMAS OPERATIVOS EN AMBIENTES DISTRIBUIDOSUNIDAD 1: SISTEMAS OPERATIVOS EN AMBIENTES DISTRIBUIDOS
UNIDAD 1: SISTEMAS OPERATIVOS EN AMBIENTES DISTRIBUIDOS
 
S.O. 2 UNIDAD 1
S.O. 2 UNIDAD 1S.O. 2 UNIDAD 1
S.O. 2 UNIDAD 1
 
Libro so
Libro soLibro so
Libro so
 
Sistemas operativos 2
Sistemas operativos 2Sistemas operativos 2
Sistemas operativos 2
 
Unidad I
Unidad IUnidad I
Unidad I
 
Presentacion sistemas operativos
Presentacion sistemas operativosPresentacion sistemas operativos
Presentacion sistemas operativos
 
7 introsd
7 introsd7 introsd
7 introsd
 
Portafolio de so en pdf
Portafolio de so en pdfPortafolio de so en pdf
Portafolio de so en pdf
 
Presentación1
Presentación1Presentación1
Presentación1
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 

Más de Juan Carlos Olivares Rojas

Analítica de Datos usando Single Board Computers
Analítica de Datos usando Single Board ComputersAnalítica de Datos usando Single Board Computers
Analítica de Datos usando Single Board ComputersJuan Carlos Olivares Rojas
 
Analitica de Datos en Dispositivos de Internet de las Cosas
Analitica de Datos en Dispositivos de Internet de las CosasAnalitica de Datos en Dispositivos de Internet de las Cosas
Analitica de Datos en Dispositivos de Internet de las CosasJuan Carlos Olivares Rojas
 
A Comparative Assessment of Cryptography Algorithms for Data Analytic Applica...
A Comparative Assessment of Cryptography Algorithms for Data Analytic Applica...A Comparative Assessment of Cryptography Algorithms for Data Analytic Applica...
A Comparative Assessment of Cryptography Algorithms for Data Analytic Applica...Juan Carlos Olivares Rojas
 
Propuesta de Flexibilidad Curricular en el Tecnológico Nacional de México
Propuesta de Flexibilidad Curricular en el Tecnológico Nacional de MéxicoPropuesta de Flexibilidad Curricular en el Tecnológico Nacional de México
Propuesta de Flexibilidad Curricular en el Tecnológico Nacional de MéxicoJuan Carlos Olivares Rojas
 
Analítica de Datos en Simulador de Redes para Sistemas de Medición Inteligente
Analítica de Datos en Simulador de Redes para Sistemas de Medición InteligenteAnalítica de Datos en Simulador de Redes para Sistemas de Medición Inteligente
Analítica de Datos en Simulador de Redes para Sistemas de Medición InteligenteJuan Carlos Olivares Rojas
 
Propuesta de Mercado Eléctrico Minorista Transactivo en México
Propuesta de Mercado Eléctrico Minorista Transactivo en MéxicoPropuesta de Mercado Eléctrico Minorista Transactivo en México
Propuesta de Mercado Eléctrico Minorista Transactivo en MéxicoJuan Carlos Olivares Rojas
 
Cyber Security on Transactions in Smart Metering Systems usign Blockchain
Cyber Security on Transactions in Smart Metering Systems usign BlockchainCyber Security on Transactions in Smart Metering Systems usign Blockchain
Cyber Security on Transactions in Smart Metering Systems usign BlockchainJuan Carlos Olivares Rojas
 
A Survey on Smart Metering Systems using Blockchain for E-mobility
A Survey on Smart Metering Systems using Blockchain for E-mobilityA Survey on Smart Metering Systems using Blockchain for E-mobility
A Survey on Smart Metering Systems using Blockchain for E-mobilityJuan Carlos Olivares Rojas
 
Detección de Movimiento usando Medidores Inteligentes
Detección de Movimiento usando Medidores Inteligentes Detección de Movimiento usando Medidores Inteligentes
Detección de Movimiento usando Medidores Inteligentes Juan Carlos Olivares Rojas
 
A Survey on Smart Metering Systems using Human-Computer Interaction
A Survey on Smart Metering Systems using Human-Computer InteractionA Survey on Smart Metering Systems using Human-Computer Interaction
A Survey on Smart Metering Systems using Human-Computer InteractionJuan Carlos Olivares Rojas
 
Machine Learnign Model for the Detection of Electricity Energy Fraud Using an...
Machine Learnign Model for the Detection of Electricity Energy Fraud Using an...Machine Learnign Model for the Detection of Electricity Energy Fraud Using an...
Machine Learnign Model for the Detection of Electricity Energy Fraud Using an...Juan Carlos Olivares Rojas
 
Forecasting Electricity Consumption Using Weather Data in Edge-Fog-Cloud Data...
Forecasting Electricity Consumption Using Weather Data in Edge-Fog-Cloud Data...Forecasting Electricity Consumption Using Weather Data in Edge-Fog-Cloud Data...
Forecasting Electricity Consumption Using Weather Data in Edge-Fog-Cloud Data...Juan Carlos Olivares Rojas
 
Aplicacion de Tecnicas de UX en el Desarrollo de un Portal de un Sistema de M...
Aplicacion de Tecnicas de UX en el Desarrollo de un Portal de un Sistema de M...Aplicacion de Tecnicas de UX en el Desarrollo de un Portal de un Sistema de M...
Aplicacion de Tecnicas de UX en el Desarrollo de un Portal de un Sistema de M...Juan Carlos Olivares Rojas
 
Internet de las Cosas en Redes Eléctricas Inteligentes
Internet de las Cosas en Redes Eléctricas InteligentesInternet de las Cosas en Redes Eléctricas Inteligentes
Internet de las Cosas en Redes Eléctricas InteligentesJuan Carlos Olivares Rojas
 
Optimización de la Eficiencia Energética en los Hogares utilizando una Arquit...
Optimización de la Eficiencia Energética en los Hogares utilizando una Arquit...Optimización de la Eficiencia Energética en los Hogares utilizando una Arquit...
Optimización de la Eficiencia Energética en los Hogares utilizando una Arquit...Juan Carlos Olivares Rojas
 
Ciber Seguridad en Redes Eléctricas Inteligentes
Ciber Seguridad en Redes Eléctricas InteligentesCiber Seguridad en Redes Eléctricas Inteligentes
Ciber Seguridad en Redes Eléctricas InteligentesJuan Carlos Olivares Rojas
 
Estudio de Vulnerabilidad de Protocolos y Redes de Comunicación para Medidore...
Estudio de Vulnerabilidad de Protocolos y Redes de Comunicación para Medidore...Estudio de Vulnerabilidad de Protocolos y Redes de Comunicación para Medidore...
Estudio de Vulnerabilidad de Protocolos y Redes de Comunicación para Medidore...Juan Carlos Olivares Rojas
 

Más de Juan Carlos Olivares Rojas (20)

Ieee itmsb20
Ieee itmsb20Ieee itmsb20
Ieee itmsb20
 
Ropec20neural stick
Ropec20neural stickRopec20neural stick
Ropec20neural stick
 
Analítica de Datos usando Single Board Computers
Analítica de Datos usando Single Board ComputersAnalítica de Datos usando Single Board Computers
Analítica de Datos usando Single Board Computers
 
Analitica de Datos en Dispositivos de Internet de las Cosas
Analitica de Datos en Dispositivos de Internet de las CosasAnalitica de Datos en Dispositivos de Internet de las Cosas
Analitica de Datos en Dispositivos de Internet de las Cosas
 
A Comparative Assessment of Cryptography Algorithms for Data Analytic Applica...
A Comparative Assessment of Cryptography Algorithms for Data Analytic Applica...A Comparative Assessment of Cryptography Algorithms for Data Analytic Applica...
A Comparative Assessment of Cryptography Algorithms for Data Analytic Applica...
 
Propuesta de Flexibilidad Curricular en el Tecnológico Nacional de México
Propuesta de Flexibilidad Curricular en el Tecnológico Nacional de MéxicoPropuesta de Flexibilidad Curricular en el Tecnológico Nacional de México
Propuesta de Flexibilidad Curricular en el Tecnológico Nacional de México
 
Analítica de Datos en Simulador de Redes para Sistemas de Medición Inteligente
Analítica de Datos en Simulador de Redes para Sistemas de Medición InteligenteAnalítica de Datos en Simulador de Redes para Sistemas de Medición Inteligente
Analítica de Datos en Simulador de Redes para Sistemas de Medición Inteligente
 
Propuesta de Mercado Eléctrico Minorista Transactivo en México
Propuesta de Mercado Eléctrico Minorista Transactivo en MéxicoPropuesta de Mercado Eléctrico Minorista Transactivo en México
Propuesta de Mercado Eléctrico Minorista Transactivo en México
 
Cyber Security on Transactions in Smart Metering Systems usign Blockchain
Cyber Security on Transactions in Smart Metering Systems usign BlockchainCyber Security on Transactions in Smart Metering Systems usign Blockchain
Cyber Security on Transactions in Smart Metering Systems usign Blockchain
 
A Survey on Smart Metering Systems using Blockchain for E-mobility
A Survey on Smart Metering Systems using Blockchain for E-mobilityA Survey on Smart Metering Systems using Blockchain for E-mobility
A Survey on Smart Metering Systems using Blockchain for E-mobility
 
Detección de Movimiento usando Medidores Inteligentes
Detección de Movimiento usando Medidores Inteligentes Detección de Movimiento usando Medidores Inteligentes
Detección de Movimiento usando Medidores Inteligentes
 
A Survey on Smart Metering Systems using Human-Computer Interaction
A Survey on Smart Metering Systems using Human-Computer InteractionA Survey on Smart Metering Systems using Human-Computer Interaction
A Survey on Smart Metering Systems using Human-Computer Interaction
 
Machine Learnign Model for the Detection of Electricity Energy Fraud Using an...
Machine Learnign Model for the Detection of Electricity Energy Fraud Using an...Machine Learnign Model for the Detection of Electricity Energy Fraud Using an...
Machine Learnign Model for the Detection of Electricity Energy Fraud Using an...
 
Forecasting Electricity Consumption Using Weather Data in Edge-Fog-Cloud Data...
Forecasting Electricity Consumption Using Weather Data in Edge-Fog-Cloud Data...Forecasting Electricity Consumption Using Weather Data in Edge-Fog-Cloud Data...
Forecasting Electricity Consumption Using Weather Data in Edge-Fog-Cloud Data...
 
Aplicacion de Tecnicas de UX en el Desarrollo de un Portal de un Sistema de M...
Aplicacion de Tecnicas de UX en el Desarrollo de un Portal de un Sistema de M...Aplicacion de Tecnicas de UX en el Desarrollo de un Portal de un Sistema de M...
Aplicacion de Tecnicas de UX en el Desarrollo de un Portal de un Sistema de M...
 
Internet de las Cosas en Redes Eléctricas Inteligentes
Internet de las Cosas en Redes Eléctricas InteligentesInternet de las Cosas en Redes Eléctricas Inteligentes
Internet de las Cosas en Redes Eléctricas Inteligentes
 
Estrategias didacticas
Estrategias didacticasEstrategias didacticas
Estrategias didacticas
 
Optimización de la Eficiencia Energética en los Hogares utilizando una Arquit...
Optimización de la Eficiencia Energética en los Hogares utilizando una Arquit...Optimización de la Eficiencia Energética en los Hogares utilizando una Arquit...
Optimización de la Eficiencia Energética en los Hogares utilizando una Arquit...
 
Ciber Seguridad en Redes Eléctricas Inteligentes
Ciber Seguridad en Redes Eléctricas InteligentesCiber Seguridad en Redes Eléctricas Inteligentes
Ciber Seguridad en Redes Eléctricas Inteligentes
 
Estudio de Vulnerabilidad de Protocolos y Redes de Comunicación para Medidore...
Estudio de Vulnerabilidad de Protocolos y Redes de Comunicación para Medidore...Estudio de Vulnerabilidad de Protocolos y Redes de Comunicación para Medidore...
Estudio de Vulnerabilidad de Protocolos y Redes de Comunicación para Medidore...
 

Último

Institucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenaInstitucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenadanielaerazok
 
Buscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webBuscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webDecaunlz
 
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfNUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfisrael garcia
 
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señorkkte210207
 
Las redes sociales en el mercado digital
Las redes sociales en el mercado digitalLas redes sociales en el mercado digital
Las redes sociales en el mercado digitalNayaniJulietaRamosRa
 
Guia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdfGuia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdflauradbernals
 
institucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenainstitucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenajuniorcuellargomez
 
12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdf12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdfedwinmelgarschlink2
 
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAINSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAdanielaerazok
 

Último (9)

Institucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenaInstitucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalena
 
Buscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webBuscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la web
 
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfNUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
 
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor
 
Las redes sociales en el mercado digital
Las redes sociales en el mercado digitalLas redes sociales en el mercado digital
Las redes sociales en el mercado digital
 
Guia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdfGuia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdf
 
institucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenainstitucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalena
 
12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdf12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdf
 
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAINSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
 

Computo Distribuído

  • 1. ¿Qué es y qué no es un sistema distribuido? M.C. Juan Carlos Olivares Rojas
  • 2. Distribuir • Según el diccionario: “dividir una cosa entre varios designando lo que a cada uno corresponde” • Problemática: muchas tecnologías aparentan ser distribuidas como cómputo paralelo, concurrencia, grid computing, P2P, sistemas con múltiples procesadores o núcleos, etc., pero ¿realmente lo son?
  • 3. ¿Qué es un Sistema Distribuido (SD)? • “Es una colección de computadoras independientes que aparecen ante los usuarios del sistema como una única computadora” [1] (Principio de transparencia) • El objetivo de los SDs es descentralizar el cómputo basándose en el paradigma de “divide y vencerás”; logrando mayor eficacia, mayor tolerancia a fallos, seguridad, mayor velocidad, entre otros.*
  • 4. ¿Qué es un Sistema Distribuido (SD)? • Para lograr la distribución del cómputo se necesitan de diversas entidades que puedan atender una determinada cantidad de procesos en un momento determinado. • Según [2] la mayor problemática de los SDs es la gran heterogeneidad tanto en software y en especial en hardware, ya que se necesita de mucho esfuerzo para lograr la transparencia.
  • 5. Arquitecturas de cómputo • Taxonomía de Flynn: – SISD (Single Instruction Single Data) Procesador único. – SIMD (Single Instruction Multiple Data). Procesadores vectoriales (multimedia) – MISD (Multipe Instruction Single Data). No implementada – MIMD Multiple Instruction Multiple Data. Cómputo distribuido
  • 6. Cómputo Distribuido • La distribución del cómputo puede realizarse de diversas formas de acuerdo a su grado de acoplamiento en: – Fuertemente acopladas: Multiprocesadores (memoria compartida). UMA (Uniform Memory Acces) – Débilmente acopladas: Multicomputadoras (memoria privada). NUMA (Non Uniform Memory Access)
  • 7. Sistemas multiprocesadores • Son sistemas que tienen dos o más procesadores (CPU), comparten las misma memoria (espacio de direcciones). • Los sistemas multinúcleos es la nueva tendencia en el desarrollo de sistemas multiprocesadores. En un solo chip se tienen varios procesadores (no es nada nuevo bajo el sol).
  • 8. Tarjeta madre Tarjeta madre Sistemas multiprocesadores CPU 1 CPU nCPU 2 Memoria Modelo de n procesadores CPU N1 Nn Memoria Modelo de n núcleos … …
  • 9. Sistemas multicomputadoras • Son sistemas donde cada unidad de proceso es autónoma e independiente de las demás pero trabajan de manera conjunta. • La interconexión de unidades de proceso se hace a través de redes de computadora de preferencia de altas velocidades. • Este es el concepto más estandarizado de un SD.
  • 10. Sistemas Distribuidos • Generalmente están asociado al modelo cliente/servidor (c/s). Muchos servicios de Internet siguen este modelo: Web, e-mail, etc. • En el modelo c/s, el proceso cliente realiza peticiones de procesamiento al proceso servidor, realizando éste último el trabajo pesado. • Existen otros modelos como P2P (par a par), cluster y grid computing.
  • 11. Sistemas Distribuidos Cliente Servidor Solicitud Respuesta Modelo Cliente/Servidor Tradicional Cliente 1 Servidor Modelo Cliente/Servidor Concurrente Cliente Proxy en el lado cliente Modelo Cliente/Servidor de n capas Cliente Proxy en el lado servidor Cliente n . .
  • 13. Tecnologías de Sistemas Distribuidos • Sockets (API Berkeley, WinSocks) C, Java, etc. • RPC (Remote Procedure Call) C • RMI (Remote Method Invocation) Java • DCOM (Distributed Component Object Model) Propietario de Microsoft • CORBA (Common Object Request Broker Architecture) C, C++, Java, etc • .NET Remoting C#, C++, J#, etc. • Servicios Web (SOA), XML (SOAP, WSDL, UDDI)
  • 14. Sistemas Distribuidos • P2P (Peer to Peer) los procesos son totalmente descentralizados, funcionan como clientes y servidores a la vez, existen diversas arquitecturas [3]. • Cluster es una agrupación de computadoras intercomunicadas entre sí a través de un nodo central y cuyo objetivo es realizar una tarea específica. • Grid computing es muy parecido a P2P y al cluster.
  • 15. Sistemas Distribuidos • Grid computing se parece al cluster en que consisten en una asociación de computadoras con la única diferencia de que no existe un nodo centralizador. Está característica lo asemeja a P2P [4]. • La idea del grid es que el poder de cómputo siempre esté presente a semejanza de la red eléctrica.
  • 16. ¿Es el cómputo paralelo un sistema distribuido? • Sí y No. Depende de la implementación. • Los objetivos de la programación en paralelo de acuerdo con [5] son: – Reducir el tiempo de procesamiento utilizado por un algoritmo convencional – Reducir la complejidad del algoritmo
  • 17. Paralelismo A B C D A B C D P1 P2 P3 P4 Homoparalelismo A B C D A B C D P1 P2 P3 P4 Hetereoparalelismo
  • 18. Paralelismo • El problema del paralelismo radica en que muchos algoritmos no pueden paralelizarse (son serializable o secuenciales) [6]. • Existen dos tecnologías para realizar paralelismo: – PVM (Parallel Virtual Machine) [7] – MPI (Message Parking Interface) [8][9][10]
  • 19. Algoritmo paralelos for(int i = 0; i < 4; i++) { aleatorio(i); } aleatorio(1) micro1 aleatorio(2) micro2 aleatorio(3) micro3 aleatorio(4) en espera • Compilador optimizado. Sistemas Operativos optimizados
  • 20. Algoritmos paralelos • Instrucciones como while son más difíciles de paralelizar por que depende de la condición. • No siempre los compiladores pueden paralelizar de manera automática un algoritmo. • En algunas ocasiones se invierte más tiempo tratando de paralelizar un algoritmo que ejecutándolo de manera secuencial.
  • 21. Algoritmos paralelos //Procesador uno for( i=0; i<N/2; i++) { a[i]= c+i; } //Procesador dos for( ; i<N; i++) { a[i]= c+i; } //Procesador uno for( i=0; i<N/2; i++) { a[i]= c+i; } //Procesador dos for( i = N/2; i<N; i++) { a[i]= c+i; }
  • 22. Algoritmos paralelos A[0] = C; //Procesador uno for( i=1; i<N/2; i++) { a[i]= a[i-1]+1; } //Procesador 2 for( i=N/2; i<N; i++) { a[i]= a[i-1]+1; } • ¿Por qué no se puede paralelizar? • Por que el segundo proceso depende del resultado del primero. • Si se puede si se encuentra un algoritmo que permita encontrar el valor de a[N/2] directo. ∑= 2/N Ci i
  • 23. Caso práctico MPI • LAM/MPI, MPICH, MPICH2 • mpd –ncpus=procesadores & • mpdtrace -1 • mpicc holamundo.c –o holamundo • mpirun –np 10 ./holamnudo
  • 24. Holamundo.c en MPI #include <stdio.h> #include “mpi.h” int main(int argc, char **argv) { int procesos, rango, tam; char nombre[MPI_MAX_PROCESSOR_NAME]; MPI_Iinit (&argc, &argv); MPI_Comm_size(MPI_COMM_WORLD, &procesos); MPI_Comm_rank(MPI_COMM_WORLD, &rango; MPI_Get_processor_name(nombre, &tam); MPI_barrier(MPI_COMM_WORLD); printf(“Hola, mudo!, soy %d de %d y me ejecuto en:%sn”, rango, procesos, nombre); MPI_Finalize(); return 0; }
  • 25. Esquema de un programa en MPI Esquema de un programa en MPI /*Cabecera de MPI*/ #include <mpi.h> int main(int argc, char **argv) { int quiensoy, tamano; MPI_Status estado; /*Inicializamos MPI*/ MPI_Init(&argc, &argv); /*Preguntamos quienes somos*/ MPI_Comm_rank(MPI_COMM_WORLD, &quiensoy); /*Nos esperamos hasta quetodos hayan inicializado MPI*/ MPI_Barrier(MPI_COMM_WORLD); /*Preguntamos cuanto somos*/ MPI_Comm_size(MPI_COMM_WORLD, &tamano); /*PROGRAMA*/
  • 26. Esquema de un programa en MPI if(quiensoy == root) { /*Inicialización estrructuras repartidor Reparte tareas Espera resultados Visualiza resultados*/ } else { /*recibe la tarea realiza cálculos manda resultados*/ } /*Finaliza el programa*/ MPI_Finalize(); exit(0); }
  • 27. ¿Existe un rendimiento extra al utilizar multiprocesadores? • Las aplicaciones deben estar optimizadas para poder ejecutarse en diferentes procesadores. • Algunos sistemas operativos permiten ejecutar hilos o procesos hijos en diversos procesadores • El rendimiento no es del todo proporcional a la cantidad de procesadores (un sistema con 4 procesadores no es 4 veces mejor que un sistema de un solo procesador).
  • 28. ¿No existe cómputo distribuido en un único procesador? • Formalmente no, se tiene el concepto de concurrencia y multitarea. • En el pasado las computadoras sólo podían realizar una tarea a la vez. Existía mucho tiempo muerto al acceder recursos • Se reparte el tiempo de CPU aparentando que varios procesos se ejecutan al mismo tiempo.
  • 29. ¿No existe cómputo distribuido en un único procesador? • Se debe tomar en cuenta la comunicación interprocesos (IPC) el cual consiste de mecanismo para controlar los procesos que se ejecutan (sockets, semáforos, colas, etc.) • Es posible ejecutar n procesos distribuidos en una sola computadora, ya que cada proceso tiene su propio espacio de direcciones y cuentan con una interfaz de red local.
  • 30. Conclusiones • SD es aquel cuyas entidades de procesamiento son autónomas, independientes, no comparten memoria y están interconectadas por una red de computadoras (pudiendo estar distribuidas geográficamente alrededor del mundo) • Algunas tecnologías no son propiamente distribuidas. El uso de sistemas distribuidos y tecnologías afines va en amplio aumento.
  • 32. Referencias • [1] A. Tanenbaum, “Sistemas Operativos Distribuidos”, Prentice Hall, México, 1996, pp. 617, ISBN: 0-13-219908-4 • [2] G. Colouris, et al., “Sistemas Distribuídos. Conceptos y Diseño”, tercera edición, Pearson Addison Wesley, Espana, 2005, pp. 726, ISBN: 84- 7829-049-4 • [3] R. Millán, “Domine las redes P2P”, Alfaomega, México, 2006, ISBN: 970-15-1206-5, pp. 330.
  • 33. Referencias • [4] C. Pérez, “Oracel 10g. Administración y Análisis de Bases de Datos”, Alfaomega Ra- Ma, México, 2005, ISBN: 970-15-1102-6, pp. 671 • [5] G. Salazar y V. Ayala Ramírez, “Programación en paralelo en sistemas multiproceso”, VI CIECE, Morelia, Michoacán, México, 1996, pp. 279-285.
  • 34. Referencias • [6] R. Sedgewick, “Algoritmos en C++”, Pearson Educación, México, 2000, ISBN: 968-444-401-X, pp. 726. • [7] M. Farías, P. Rayon y M. Lazo, “Programación paralela de un algoritmo para el cálculo de testores con PVM”, Temas selectos (selected works ) de investigaciñon C.I.C. 1997, pp. 118-125, ISBN: 970-18- 3427-5
  • 35. Referencias • [8] S. Gómez, “Programación paralela(I)”, revista sólo programadores, año 12, segunda época, no. 135, España, pp. 54-60. • [9] D. Santo, “Message Passing Interface(II) Configurando y compilando MPI”, revista Mundo Linux, año VIII, no. 90, pp. 42-47 • [10] D. Santo, “Message Passing Interface(III) Programando para MPI”, revista Mundo Linux, año VIII, no. 91, pp. 28-33.
  • 36. Contacto • E-mail: jcolivar@itmorelia.edu.mx • MSN: juancarlosolivares@hotmail.com • Skype: juancarlosolivares • Instituto Tecnológico de Morelia • Departamento de Sistemas y Computación • Av. Tecnológico 1500 Col. Lomás de Santiaguito • Morelia, Michoacán, México
  • 37. Curriculum Vitae • M.C. en Ciencias de la Computación, CENIDET 2006 • Ing. Sistemas Computacionales, I.T. Morelia • Profesor tiempo parcial I.T. Morelia • Profesor tiempo parcial UNID Morelia • Áreas de investigación: Sistemas Distribuidos, Cómputo Móvil, Redes Inalámbricas, Base de Datos y Sistemas Empotrados.