universidad simón bolivar dpto. de computacion y tecnologia de la informacion prof. yudith...

56
Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS DE POSTGRADO COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA Herramientas de desarrollo en informati Especialización en Tele Especialización en Tele máti máti ca ca Herramientas de desarrollo en Herramientas de desarrollo en informática informática Primera Parte Primera Parte Prof. Yudith Cardinale, Ph.D.

Upload: mariano-martin-juarez

Post on 02-Feb-2016

231 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Especialización en Especialización en TeleTelemátimáticaca

Herramientas de Herramientas de desarrollo en informáticadesarrollo en informática

Primera PartePrimera ParteProf. Yudith Cardinale, Ph.D.

Page 2: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

ContenidoContenido

Introducción

Arquitecturas de Hardware• Clasificación• RAIDs

Arquitecturas de Software• Conceptos de Sistemas de Operación• Concurrencia en sistemas uniprocesadores• Otros conceptos introductorios

Page 3: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

1. Introducción1. Introducción

Page 4: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

IntroducciónIntroducción

Un sistema de computación está formado por una plataforma de hardware, una plataforma de

software y un conjunto de usuarios y aplicaciones

Page 5: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

IntroducciónIntroducción

procesadoresmemoria

medios de almacenamiento dispositivos de E/Smedios de interconexión

sistema de operaciónsistemas de archivos

librerías de comunicaciónservicios especializados

aplicaciones

datos/información

Page 6: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

IntroducciónIntroducción

Procesadores Sólo 1 Muchos Tradicionales o segmentados

(pipelines)

Memoria Ram (compartida o distribuida) Cachés de instrucciones y de datos

Elementos de hardware de un sistema de computación:

Page 7: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

IntroducciónIntroducción

Dispositivos de E/S: Discos De respaldo Impresoras, scanners y otros

Medios de interconexión: Especializado (buses de alta velocidad y

conmutadores) Genéricos:

Cableados: par trenzado, fibra óptico, coaxial. Inalámbricos: microondas, satélite, laser.

Elementos de hardware de un sistema de computación

(cont.):

Page 8: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

IntroducciónIntroducción

Sistema de operación: Monousuarios Multiusuarios, multitareas Paralelos Distribuidos

Servicios especilizados: Sistemas de archivos Soporte de transacciones Multimedios (voz y vídeo)

Elementos de software de un sistema de computación:

Bases de datos Seguridad Acceso remoto

Page 9: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

IntroducciónIntroducción

Los usuarios y las aplicaciones utilizan los recursos de

hardware y de información del sistema de computación,

para fines particulares.

secuenciales

paralelas distribuidas

concurrentes

orientadas por objetos

aplicaciones:

Page 10: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

IntroducciónIntroducción

Concurrencia: ¿¿Qué es?Ejecución simultánea de varias tareas o

procesos

Concurrencia

¿¿Cómo se

logra?

Paralelismo Distribución

Sistemas uniprocesadoresSistemas de operaciónMultiusuarios/multitareas

Sistemas multiprocesadoresSistemas de operaciónparalelos

Sistemas de redesSistemas de operacióndistribuidos

Page 11: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

2. Arquitecturas de 2. Arquitecturas de HardwareHardware

Page 12: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de hardwarehardware

Hardware: Recursos físicos que componen el sistema

de computación.

Arquitecturas centralizadas: Computadores personales Estaciones de trabajo Mainframes

Arquitecturas paralelas: Computadores vectoriales Computadores paralelos Supercomputadores

Arquitecturas distribuidas: Clusters Redes Computación Ubicua (Grids y sistemas P2P)

Page 13: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de hardwarehardware

Clasificación general (según Flynn, 1972): Basada en el nro.

de flujos de instrucciones y el nro. de flujos de datos

SISD: Single Instruction, Single Data Computadores de 1 CPU Mainframes

SIMD: Single Instruction, Multiple Data Computadores vectoriales. Computadores paralelos.

Page 14: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de hardwarehardware

Clasificación general (según Flynn, 1972): cont.

MISD: Multiple Instruction, Single Data. No hay computadores en esta

clasificación.

MIMD: Multiple Instruction, Multiple Data. Computadores paralelos

(supercomputadores) Sistemas Distribuidos.

Page 15: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de hardwarehardware

Clasificación según Tanenbaum para los sistemas MIMD

Page 16: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de hardwarehardwareMIMD: Multiprocesadores basados en buses

Alivia la sobrecarga del bus y aumenta el rendimiento

Problema con el cahe: Posibilidad de Memoria IncoherenteSolución:

–Cache de escritura (write-through cache) –Cache Monitor (snoopy cache)–Software de consistencia

Page 17: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de hardwarehardware

MIMD: Multiprocesadores basados en conmutadores

Usando un conmutador de cruceta (crossbar switch)

N procesadores

N memorias

Crosspoint switch

–Problema: El Nro. de puntos de cruce puede ser alto: N2

–Solución: Red Omega

Page 18: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de hardwarehardware

Usando una red Omega

Conmutador 2x2

– Nro. de etapas: log2N

– Nro. de conmutadores por etapa: N/2– Nro. Total de conmutadores: N/2 * log2N

– Problema: Retardo

Page 19: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de hardwarehardware

MIMD: Multicomputadores basados en buses

Estaciones de Trabajo

Page 20: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de hardwarehardware

Una red es una colección de computadores autónomos

interconectados a través de un Sistema de Comunicaciones

Ventajas: Compartir recursos Disponibilidad por duplicación de recursos Ahorro de dinero Poderoso medio de comunicación

Inconvenientes: Seguridad Personal especializado

Page 21: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de hardwarehardware

Una red puede clasificarse:

Según la tecnología: LAN (Varios Mbps, 2.5 Km) MAN (> 1 Mbps, 100 Km) WAN (< 1 Mbps, ilimitado)

Según la propiedad: Públicas (Frame Relay, ATM) Privadas (Petroleras)

Page 22: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de hardwarehardware

Un cluster es un conjunto de computadores convencionales

interconectados a través de una red de comunicaciones de alta velocidad

Se construyen con componentes commodity PCs, estaciones de trabajo, tarjetas de procesadores Cada nodo puede ser mono o multi procesador

Usos: Capacidad de cómputo para clientes ligeros (throughput) Alta disponibilidad y escalabilidad (replicación de servicios: motores de búsqueda) Como plataforma paralela (alto desempeño)

Page 23: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de hardwarehardwareMIMD: Multicomputadores con conmutadores

Malla (Parsytec) El último elemento en

una fila está conectado al primero en la próxima.

Hipercubos (Ncube)

Page 24: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de hardwarehardwareRAID: Redundant Array of Independent Disk Drives

Raid nivel 0: fraccionamiento de datos sin tolerancia a fallas (Data Striping without fault tolerance)

Aplicaciones recomendadas: Producción y edición de videos, edición de imágenes, aplicaciones que requieren alto ancho de banda.

Page 25: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de hardwarehardwareRAID: Redundant Array of Inexpensive Disk Drives

Raid nivel 1: discos espejos (Mirroring and Duplexing)

Aplicaciones recomendadas: Contabilidad, nómina, finanzas, aplicaciones que requieren alta disponibilidad.

Page 26: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de hardwarehardwareRAID: Redundant Array of Inexpensive Disk Drives

Raid nivel 2: fraccionamiento y sombras (Striping and Shadowing)

Excelente disponibilidad de datos y alto desempeño

Page 27: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de hardwarehardwareRAID: Redundant Array of Inexpensive Disk Drives

Raid nivel 3: transferencia paralela con paridad (Data Striping with Parity Checking)

Aplicaciones recomendadas: Producción y edición de videos, edición de imágenes, aplicaciones que requieran alto rendimiento (througput)

Page 28: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de hardwarehardwareRAID: Redundant Array of Inexpensive Disk Drives

Raid nivel 4: fraccionamiento con paridad (Block interleaved data striping with parity checking)

Buena disponibilidad de datos, alto desempeño para operaciones de lectura, sólo se requiere un disco extra para paridad.

Page 29: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de hardwarehardwareRAID: Redundant Array of Inexpensive Disk Drives

Raid nivel 5: fraccionamiento con paridad distribuida (Block interleaved data striping with distributed parity checking)

Aplicaciones recomendadas: servidores de aplicaciones y de rchivos, servidores de base de datos, servidores de noticias, correos y web, servidores Intranets. El nivel más versátil.

Page 30: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de hardwarehardwareRAID: Redundant Array of Inexpensive Disk Drives

Raid nivel 6: nivel 5 con doble paridad. La solución perfecta para aplicaciones de misión crítica.

Raid nivel 7: fraccionamiento independiente y discos de paridad.

Raid nivel 10: niveles 1 y 0 combinados. Favorable para servidores de bases de datos que requieren alto desempeño y tolerancia a fallas.

Raid nivel 53: niveles 0 y 3. Requiere un mínimo de 5 discos para implementarse.

Page 31: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

3. Arquitecturas de 3. Arquitecturas de SoftwareSoftware

Page 32: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de softwaresoftwareSoftware: Conjunto de componentes que

administran y acceden los recursos físicos y de información

de un sistema de computación

REDES

INTERNET

INTRANETS

UNIXLINUXWINDOWS

Cliente/Servidor

Sistemas de Operación Distribuidos

WEB Software abierto

Middleware

Page 33: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Introducción a los Sistemas Concurrentes

Arquitecturas de Arquitecturas de softwaresoftware

Material Anexo

Page 34: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Concurrencia: ¿¿cómo se logra en sistemas uniprocesadores?

Hardware

NivelesNiveles

Intraproceso Interproceso

Replicando componentesArquitectura pipelineProcedores especializados

A nivel de instruccionesA nivel de ciclosHilos (threads)

Pipes, puertosLibrerías de mensajes

Arquitecturas de Arquitecturas de softwaresoftware

Page 35: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Primitivas de Sincronización

Arquitecturas de Arquitecturas de softwaresoftware

Material Anexo

Page 36: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de softwaresoftware

Sistemas Distribuidos

Sistemas de Cómputo compuestos por un gran número de CPUs, conectados mediante una red de alta velocidad

Colección de computadores independientes que aparecen ante el usuario como una sola máquina virtual

TRANSPARENCIA (¿OPACIDAD?)

RENDIMIENTO FIABILIDAD

SEGURIDAD ESCALABILIDAD

Page 37: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de softwaresoftware

Sistemas de Operación Distribuidos

Colección de componentes de software que simplifican las tareas de programación y soporta un alto rango de aplicaciones.

Son modulares y extensibles, lo que implica que se pueden adicionar nuevos componentes en respuesta a nuevas necesidades.

Poseen mecanismos de comunicación y esquemas de protección globales.

Software fuertemente acoplado

Page 38: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de softwaresoftware

Sistemas Paralelos

Buscan obtener máxima velocidad en un problema determinado.

Software fuertemente acoplado.

Conjunto de computadores conectados por

una red.

Existe autonomía en cada estación

La localización de los objetos no es transparente

Software débilmente acoplado

Sistemas de Redes

Page 39: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de softwaresoftware

Un sistema distribuido permite acceso transparente a los recursos

Un sistema de red requiere explícitamente

lalocalización del recurso

En los sistemas distribuidos tradicionales, los nodos no tienen dueños. En los sistemas de red, cada nodo tiene su propietario.

En los sistemas distribuidos tradicionales, cada nodo tieneinstalado el mismo kernel. En los sistemas de red, losnodos pueden tener diferentes sistemas de operación.

Actualmente el concepto de sistemas distribuidos considera

cualquier sistema con posibilidades de cómputo remoto y

acceso a información repartida geográficamente

Page 40: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de softwaresoftware

Sobre los Sistemas Centralizados: Economía y Velocidad:

Mejor relación Precio/rendimiento en comparación a un Mainframe.

Confiabilidad: La falla de un componente afecta a lo

más a una máquina

Ventajas de los Sistemas Distribuidos

Page 41: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de softwaresoftware

Sobre los Sistemas Centralizados: (cont) Escalabilidad (crecimiento por incrementos):

Si aumenta la carga, se pueden agregar más procesadores o equipos al sistema

Distribución Inherente: Hay aplicaciones que se distribuyen por

naturaleza.

Ventajas de los Sistemas Distribuidos

Page 42: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de softwaresoftware

Sobre los PCs independientes: Compartir:

Recursos Lógicos: dato, registro, archivo Recursos físicos o dispositivos.

Comunicación entre personas: Más rápido que enviar un documento

físico. Permite que sea asíncrona Su contenido puede ser actualizable.

Flexibilidad: Permite la distribución de la carga de

trabajo

Ventajas de los Sistemas Distribuidos

Page 43: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de softwaresoftwareArquitectura de los Sistemas Distribuidos

Computadores y red de interconexión

Sistema de Operación

Aplicación de Servicios

MiddlewareEnmascara la heterogeneidad Proporciona un modelo de programación

Page 44: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de softwaresoftware

Internet:

Vasta colección de redes de computadores de diferentes tipos interconectados.

Existe un medio común de comunicación (TCP/IP, SNA, BitNet) basado en pase de mensajes.

Permite acceso a servicios remotos: World Wide Web Correo electrónico Transferencias de archivos Multimedia para acceso a audio y video (música, videoconferencias, etc.)

Ejemplos de Sistemas Distribuidos:

Page 45: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de softwaresoftware

Intranets: Porción de Internet administrada

separadamente y con un acceso limitado según políticas de seguridad local

Puede estar compuesta de varias redes locales (LANs)

La configuración de la red es responsabilidad de la organización que la administra

Por lo general se mantiene un conjunto de páginas web con acceso restringido desde el exterior

Se puede acceder a los servicios de una Intranet desde el exterior, siempre que se tenga el código de acceso.

Ejemplos de Sistemas Distribuidos:

Page 46: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de softwaresoftware

Modelo Cliente/Servidor:

Máquina local Máquina remota

Cliente Servidor

Petición del servicio

Respuesta

Todos los servicios sobre Internet funcionan bajo este esquemaEl medio de envío para la petición/respuesta es la redUn servidor debe poder manejar varios usuarios concurrentemente

Page 47: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de softwaresoftware

Servicio HTTP: ejemplo del modelo Cliente/Servidor

Los navegadores se comunican con los servidores Web por medio del protocolo HTTP (Hyper Text Transfer Protocol, RFC 2616).

HTTP es un protocolo suficientemente ligero y rápido para ser utilizado en un sistema colaborativo de información de medios distribuidos. Es un protocolo genérico orientado a objetos, por lo cual se puede utilizar para diversos tipos de aplicaciones.

HTTP fue creado en 1992 por Tim Berners-Lee, reemplazando en gran medida los sistemas Gopher.

Page 48: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de softwaresoftware

Servicio HTTP: ¿¿ Cómo funciona?

http://www.ldc.usb.ve/~yudith

GET /~yudith HTTP/1.0Accept: text/plainAccept: text/htmlUser-Agent: Netscape Communicator 4.76

HTTP/1.0 200 OKServer: Apache/2.0.16Content-type: text/htmlLast-Modified: Thu Jul 7 00:25:33 2001Content-Length: 2003<html><body>...</body></html>

Page 49: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de softwaresoftware

Servicio HTTP: PROXIESPROXIES

Page 50: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de softwaresoftwareServicio HTTP: CGI o ASP o ServletsCGI o ASP o Servlets

http://www.ldc.usb.ve/cgi-bin/hello.pl

GET /cgi-bin/hello.pl HTTP/1.0Accept: text/plainAccept: text/htmlUser-Agent: Netscape Communicator 4.76

El servidor crea un nuevo proceso y coloca los valores apropiados en las variables de ambiente.Se pasan los parámetros por stdin o por argumentos según el método del POSTSe ejecuta la aplicación CGI, los resultados se toman de stdout.

Page 51: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de softwaresoftwareServicio HTTP: Contenido dinámico usando Contenido dinámico usando

módulos módulos en el servidoren el servidor

https://webmail.cesma.usb.ve

Conexión segura

Page 52: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de softwaresoftwareServicio HTTP: ProblemasProblemas

Uso de conexiones persistentes

Causa gran congestión

Uso de cookies, manejo de sesiones

Es un protocolo sin estado

Implementación de nuevos encabezados en HTTP/1.1

Problemas de caching

Implementación de HTTPSEs inseguro

SoluciónProblema

Page 53: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de softwaresoftwareServicios proporcionados por múltiples

servidores

cliente

servidor

Servicio

Por distribución o por réplicasWeb: cada servidor web administra sus propios recursos. Con un navegador un usuario accede a cualquier servicio.NIS (Network Information Service) en una LAN. Posee réplicas del archivo de contraseñas.

cliente

servidor

servidor

Page 54: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de softwaresoftwareProcesos de igual a igual

Todos los procesos desempeñan tareas semejantes.La sincronización y comunicación es responsabilidad de los procesos.

Aplic.

Código de

coordin

Aplic.

Código de

coordin

Aplic.

Código de

coordin

Page 55: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de softwaresoftware Un sistema de operación para Un sistema de operación para clustersclusters

Transforma un cluster de PCs (estaciones de trabajo y servidores) en un SMP.

Distribuye transparentemente los procesos entre los nodos, para alcanzar mejor desempeño.

Realiza actividades de monitoreo, migración y balance de carga.

K-Mosix es el kernel compatible con linux

U-Mosix es un despachador

sobre plataformas Unix (FreeBSD y Solaris) y K-

Mosix

Page 56: Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS

Universidad Simón BolivarDpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale

Especializacion en TelemaicaDECANATO DE ESTUDIOS DE POSTGRADO

COORDINACIÓN DE POSTGRADOS EN ELECTRÓNICA

Herramientas de desarrollo en informatica

Arquitecturas de Arquitecturas de softwaresoftware Plataforma de desarrollo y pruebaPlataforma de desarrollo y prueba

55 nodos (quad, dual, single) P-III 1GHz – 550 MHz conectados con Fas Ethernet. Unos nodos son stand-alone y la mayoría usan NFS.

Aplicaciones: Procesos paralelos CPU-bound, procesos paralelos I/O-bound, procesos sencillos, servidores Web escalables (requieren análisis estadísticos de información histórica)