Sei sulla pagina 1di 15

qwertyuiopasdfghjklzxcvbnmqwerty uiopasdfghjklzxcvbnmqwertyuiopasd fghjklzxcvbnmqwertyuiopasdfghjklzx cvbnmqwertyuiopasdfghjklzxcvbnmq ARQUITECTURA DE COMPUTADORAS wertyuiopasdfghjklzxcvbnmqwertyui KARINA ITZEL PREZ GAYTAN opasdfghjklzxcvbnmqwertyuiopasdfg hjklzxcvbnmqwertyuiopasdfghjklzxc vbnmqwertyuiopasdfghjklzxcvbnmq wertyuiopasdfghjklzxcvbnmqwertyui

opasdfghjklzxcvbnmqwertyuiopasdfg hjklzxcvbnmqwertyuiopasdfghjklzxc vbnmqwertyuiopasdfghjklzxcvbnmq wertyuiopasdfghjklzxcvbnmqwertyui opasdfghjklzxcvbnmqwertyuiopasdfg hjklzxcvbnmrtyuiopasdfghjklzxcvbn mqwertyuiopasdfghjklzxcvbnmqwert yuiopasdfghjklzxcvbnmqwertyuiopas


23/11/2012 CARDENAS VILLAFAA RUBEN ALEJANDRO

ARQUITECTURA DE COMPUTADORAS
MEMORIA COMPARTIDA DISTRIBUIDA Los sistemas de Memoria Compartida Distribuida (DNS) son sistemas que, mediante software, emulan semntica de memoria compartida sobre hardware que ofrece soporte solo para comunicacin mediante paso de mensajes. Este modelo permite utilizar una red de estaciones de trabajo de bajo costo como una maquina paralela con grandes capacidades de procesamiento y amplia escalabilidad, siendo a la vez fcil de programar. El objetivo principal de estos sistemas es permitir que un multicomputador pueda ejecutar programas escritos para un multiprocesador con memoria compartida. Cada uno de los nodos en un sistema de DNS aporta una parte de su memoria local para construir un espacio global de direcciones virtuales que ser empleado por los procesos paralelos que se ejecuten en el sistema. El software de DNS se encarga de interceptar las referencias a memoria que hacen los procesos, y satisfacerlas, ya sea local o remotamente. Si los accesos a memoria hacen referencia a posiciones almacenadas remotamente, es necesario llevar a cabo una transferencia a travs de la red, con el consecuente overhead que esto conlleva. Por esta razn los sistemas de MCD tienen un comportamiento no uniforme respecto a los accesos a memoria. Sin embargo, a diferencia de los sistemas NUMA, en este caso los procesadores no tienen acceso a memoria remota en forma directa. Es necesario que medie un componente de software para permitir los accesos que no son locales.

MEMORIA COMPARTIDA
KARINA ITZEL PEREZ GAYTAN

MEMORIA DISTRIBUIDA
Pgina 2

ARQUITECTURA DE COMPUTADORAS
COMPARTICION FALSA La comparticin falsa se produce cuando dos procesos se pelean el acceso a la misma pgina de memoria, ya que contiene variables que requieren los dos, pero estas no son las mismas. Esto pasa por un mal diseo del tamao de las pginas y por la poca relacin existente entre variables de la misma pgina. En los MCD basados en variables se busca evitar la comparticin falsa ejecutando un programa en cada CPU que se comunica con una central, la que le provee de variables compartidas, administrando este cualquier tipo de variable, poniendo variables grandes en varias pginas o en la misma pgina muchas variables del mismo tipo, en este protocolo es muy importante declarar las variables compartidas. En los MCD basados en objetos se busca el acceso a datos por medio de la encapsulacin de la informacin y repartida a travs de la red, estos objetos sern definidos por el Programador y las CPUs cambiaran los estados segn procedan con los accesos. VIRTUALIZACION Virtualizacin es la creacin -a travs de software- de una versin virtual de algn recurso tecnolgico, como puede ser una plataforma de hardware, un sistema operativo, un dispositivo de almacenamiento u otros recursos de red. 1 En los mbitos de habla inglesa, este trmino se suele conocer por el numernimo "v11n". Dicho de otra manera, se refiere a la abstraccin de los recursos de una computadora, llamada Hypervisor o VMM (Virtual Machine Monitor) que crea una capa de abstraccin entre el hardware de la mquina fsica (host) y el sistema operativo de la mquina virtual (virtual machine, guest), dividindose el recurso en uno o ms entornos de ejecucin. Esta capa de software (VMM) maneja, gestiona y arbitra los cuatro recursos principales de una computadora (CPU, Memoria, Almacenamiento y Conexiones de Red) y as podr repartir dinmicamente dichos recursos entre todas las mquinas virtuales definidas en el computador central. Esto hace que se puedan tener varios ordenadores virtuales ejecutndose en el mismo ordenador fsico.

Una mquina virtual nos permite tener varios ordenadores virtuales ejecutndose sobre el mismo ordenador fsico.

KARINA ITZEL PEREZ GAYTAN

Pgina 3

ARQUITECTURA DE COMPUTADORAS
MULTIPROCESADOR Se denomina multiprocesador a un sistema que cuenta con ms de un microprocesador, funcionando de modo paralelo e independiente del resto, para la ejecucin de una o varias tareas, bajo el control de un nico sistema operativo. Son, pues, sistemas MIMD, en los cuales \varias unidades funcionales realizan Mltiple Instruction, Multiple Data Diferentes operaciones sobre diferentes datos"[1]. Una de las caractersticas ms interesantes de estos sistemas es el uso de memoria compartida, mediante el cual todos los procesadores disponen de un espacio de direccionamiento comn. Atendiendo a la forma en la que la memoria est distribuida, se puede clasificar a los Multiprocesadores como Multiprocesadores de Memoria Compartida (MMC en adelante) y como Multiprocesadores con memoria distribuida (MMD en adelante). Tipos de Multiprocesadores Aunque el presente documento se centra en los MMC, es adecuado ofrecer una pequea introduccin a los MMD. MULTIPROCESADORES CON MEMORIA COMPARTIDA En los MMC, la memoria se organiza en uno o varios mdulos, compartidos por todos los procesadores a travs de distintos tipos de interconexin (tratados ms adelante), con un acceso constante. A este tipo de arquitectura se le conoce como UMA2. El acceso a los mdulos por parte de los procesadores se realiza en paralelo, pero cada modulo solamente puede atender una peticin en cada instante de tiempo.

KARINA ITZEL PEREZ GAYTAN

Pgina 4

ARQUITECTURA DE COMPUTADORAS
MULTIPROCESADORES CON MEMORIA DISTRIBUIDA Este tipo de Multiprocesadores distribuye la memoria de manera que dentro de cada procesador posee uno o varios mdulos de memoria propia y est conectado mediante una red de interconexin al resto de procesadores. De esta manera, cada procesador podr acceder tanto a su memoria local, como a la memoria remota de cualquiera del resto de procesadores. Este tipo de arquitectura se denomina NUMA3. Caractersticas de los Multiprocesadores de Memoria Compartida Entre las caractersticas de los MMC se encuentran: Tiempos de acceso a memoria uniformes, ya que todos los procesadores se encuentran igualmente comunicados con la memoria principal Las lecturas y escrituras de cada uno de los procesadores tienen exactamente las mismas latencias La programacin es mucho mas fcil que en los MMD, debido a que la gestin de la memoria de cada modulo es transparente para el programador. Al acceder simultneamente a la memoria se producen colisiones y esperas, lo que es un problema. Debido a la organizacin de la arquitectura, es poco escalable en nmero de procesadores, debido a que puede surgir un cuello de botella si se aumenta el nmero de CPUS. MULTICOMPUTADORAS CON PASO DE MENSAJE Los sistemas multicomputadores se pueden ver como un computador paralelo en el cual cada procesador tiene su propia memoria local. En estos sistemas la memoria se encuentra distribuida y no compartida como en los sistemas multiprocesador. Los computadores se comunican a travs de paso de mensajes, ya que stos slo tienen acceso directo a su memoria local y no a las memorias del resto de procesadores. El diagrama de bloques de un sistema multicomputador coincide con el de los sistemas UMA, la diferencia viene dada porque la red de interconexin no permite un acceso directo entre memorias, sino que la comunicacin se realiza por paso de mensajes. La transferencia de los datos se realiza a travs de la red de interconexin que conecta un subconjunto de procesadores con otro subconjunto. La transferencia de unos procesadores a otros se realiza por tanto por mltiples transferencias entre procesadores conectados dependiendo del establecimiento de dicha red. Dado que la memoria est distribuida entre los diferentes elementos de proceso, estos sistemas reciben el nombre de distribuidos. Por otra parte, estos sistemas son dbilmente acoplados, ya que los mdulos funcionan de forma casi independiente. Caractersticas de los multicomputadores - La memoria es privada (es decir, cada procesador tiene un mapa de direcciones propio que no es accesible directamente a los dems).
KARINA ITZEL PEREZ GAYTAN Pgina 5

ARQUITECTURA DE COMPUTADORAS
- La comunicacin entre procesadores es por paso de mensajes a travs de una red de interconexin. - En un multicomputador, cada nodo es una computadora clsica. - Los nodos colaboran para resolver juntos un mismo problema (ejecutar la misma aplicacin). - La comparticin de datos es explcita, ya que el acceso a datos comunes es por paso de mensajes.

HARDWARE DE UNA MULTICOMPUTADORA ARQUITECTURA DE PROCESADORES

KARINA ITZEL PEREZ GAYTAN

Pgina 6

ARQUITECTURA DE COMPUTADORAS

SISTEMA DISTRIBUIDO DE AREA AMPLIA Sistemas cuyos componentes hardware y software, que estn en ordenadores conectados en red, se comunican y coordinan sus acciones mediante el paso de mensajes, para el logro de un objetivo. Se establece la comunicacin mediante un protocolo prefijado por un esquema cliente-servidor. Caractersticas:

Concurrencia.- Esta caracterstica de los sistemas distribuidos permite que los recursos disponibles en la red puedan ser utilizados simultneamente por los usuarios y/o agentes que interactan en la red. Carencia de reloj global.- Las coordinaciones para la transferencia de mensajes entre los diferentes componentes para la realizacin de una tarea, no tienen una temporizacin general, est ms bien distribuida a los componentes. Fallos independientes de los componentes.- Cada componente del sistema puede fallar independientemente, con lo cual los dems pueden continuar ejecutando sus acciones. Esto permite el logro de las tareas con mayor efectividad, pues el sistema en su conjunto continua trabajando.

KARINA ITZEL PEREZ GAYTAN

Pgina 7

ARQUITECTURA DE COMPUTADORAS
En un sistema de un solo procesador la comunicacin supone implcitamente la existencia de la memoria compartida:

Ej.: problema de los productores y los consumidores, donde un proceso escribe en un buffer compartido y otro proceso lee de l.

En un sistema distribuido no existe la memoria compartida y por ello toda la naturaleza de la comunicacin entre procesos debe replantearse. Los procesos, para comunicarse, deben apegarse a reglas conocidas como protocolos. Para los sistemas distribuidos en un rea amplia, estos protocolos toman frecuentemente la forma de varias capas y cada capa tiene sus propias metas y reglas. Los mensajes se intercambian de diversas formas, existiendo muchas opciones de diseo al respecto; una importante opcin es la llamada a un procedimiento remoto. Tambin es importante considerar las posibilidades de comunicacin entre grupos de procesos, no solo entre dos procesos.

MULTIPROCESADOR BASADO EN BUS a) sin uso de cache b) con uso de cache c) con cache y memoria privada UMA Bus-Based SMP Architectures UMA (Uniform Memory Access) SMP (simplest multiprocessors) Conformado por cierta cantidad de CPUs, conectados a un bus comn, junto con un mdulo de memoria. Sin uso de cache (32 es inmanejable) Problemas del uso de caches: Inconsistencia de la memoria y difcil programacin. Solucin: Cach de escritura: Escribe en el cach y en la memoria. Genera trfico para la primera lectura, as como todas las escrituras. Para asegurar la consistencia se realiza un monitoreo constante en el bus (cach monitor). Con cache (+64 es inmanejable).
KARINA ITZEL PEREZ GAYTAN Pgina 8

ARQUITECTURA DE COMPUTADORAS

SMP (Multiprocesador simtrico) Los sistemas SMP utilizan una modalidad de procesamiento en paralelo en la que todos los procesadores son tratados como iguales". Los SMP estn basados en el modelo de memoria de acceso uniforme, en donde la memoria fsica esta uniformemente compartida por todos los procesadores, lo cual implica que todos ellos posean los mismos tiempos de acceso a todas las palabras de memoria. Estos sistemas poseen una red de interconexin entre los distintos procesadores y la memoria, habitualmente en forma de bus, aunque tambin pueden tener otro tipo de sistema de interconexin. Cabe destacar que en los sistemas SMP todos los procesadores tienen el mismo acceso a los perifricos, lo cual implica que todos los procesadores tienen la misma capacidad para ejecutar programas tal como el Kernel o las rutinas de entrada y salida. Otra caracterstica importante es que todo el sistema est controlado por un mismo sistema operativo que posibilita la cooperacin entre los procesadores y sus programas, debido a este alto nivel de cooperacin se clasifican como sistemas fuertemente acoplados.

Arquitectura de memoria SMP El principal problema que se presenta en los SMP en cuanto a su arquitectura de memoria es la coherencia de cache, ya que los distintos procesadores pueden

KARINA ITZEL PEREZ GAYTAN

Pgina 9

ARQUITECTURA DE COMPUTADORAS
mantener su propia cache, por lo tanto si uno de ellos mdica un dato de la memoria compartida otros pueden mantener copias en su propia cache incoherentes. Para solucionar este problema hay diferentes estrategias hardware y software, aunque este aspecto merecer un estudio en profundidad queda fuera del alcance de este documento. Los SMP no slo se encuentran en entornos de supercomputacin, si no que los PCs con procesadores multinucleo aplican esta arquitectura, tratando a cada ncleo como un procesador independiente. DSM: Memoria compartida distribuida Como hemos visto anteriormente, los sistemas de memoria compartida tradicionales SMP, utilizan un mismo espacio de memoria compartido entre todos los procesadores. La comunicacin entre la memoria y los procesadores generalmente se realiza mediante un bus, el cual puede llegar a suponer un cuello de botella en el acceso a memoria si el nmero de procesadores es sucientemente alto. NUMA Las arquitecturas NUMA (Non-Uniform Memory Architecture) intentan aliviar este cuello de botella, acercando parte de la memoria a cada procesador, aunque esto deriva en que el acceso a la memoria remota es ms lento que el acceso a la memoria local. Desafortunadamente, tanto los sistemas SMP como NUMA tienen un precio elevado, lo que motiva el uso de los sistemas distribuidos, relativamente ms baratos. No obstante, todas las comunicaciones y sincronizaciones deben hacerse mediante el paso de mensajes, ya que cada sistema tiene su propia memoria local, separada del resto. En general resulta ms fcil la programacin para sistemas con un solo procesador o sistemas multiprocesadores con un bloque de memoria compartida, que mediante el paso de mensajes, de ah el nacimiento de los sistemas DSM (Distributed Shared Memory), que no es ms que una tcnica para simular un espacio comn de direcciones entre multicomputadores. Existen varias alternativas para conseguir simular este espacio comn de direcciones a partir de la arquitectura de memoria distribuida, por ejemplo mediante el uso de caches, ms rpido y caro, mediante el uso de memoria virtual con medicaciones en el software, ms lento y barato, o tambin mediante soluciones hibridas entre hardware y software. Como es de esperar los sistemas DSM tambin plantean varios problemas que hay que tener en cuenta y para los cuales se proponen distintas soluciones, una vez ms el problema de la coherencia es uno de los principales focos de conecto, aunque su estudio queda fuera del alcance de este documento.

KARINA ITZEL PEREZ GAYTAN

Pgina 10

ARQUITECTURA DE COMPUTADORAS
SISTEMAS OPERATIVOS MULTIPROCESADOR Una forma cada vez ms comn de obtener potencia de computacin de primera lnea es conectar varias CPUs en un mismo sistema. Dependiendo de la forma exacta de la conexin y de qu recursos se compartan, estos sistemas se llaman ordenadores paralelos, multicomputadores o multiprocesadores. Necesitan sistemas operativos especiales, pero con frecuencia stos son variaciones de los sistemas operativos de servidor, con caractersticas especiales para la comunicacin y su conectividad.

SINCRONIZACION DEL MULTIPROCESADOR Los mecanismos de sincronizacin suelen implementarse mediante rutinas software que descansan en las instrucciones de sincronizacin proporcionadas por el hardware. Sin esta capacidad, el coste de construir las primitivas bsicas de sincronizacin ser demasiado alto y se incrementara al incrementarse el nmero de procesadores. Estas primitivas forman los bloques de construccin bsicos para implementar una amplia variedad de operaciones de sincronizacin a nivel de usuario, incluyendo elementos tales como los cerrojos y las barreras. Durante aos ha habido un considerable debate sobre qu primitivas hardware deben proporcionar las maquinas multiprocesador para implementar estas operaciones de sincronizacin. Las conclusiones han cambiado a lo largo del tiempo, con los cambios de la tecnologa y el estilo de diseo de las maquinas. El soporte hardware tiene la ventaja de la velocidad, pero mover funcionalidad al software tiene la ventaja de la flexibilidad y la adaptabilidad a diferentes situaciones. Los trabajos de Dijkstra y Knuth mostraron que es posible proporcionar exclusin mutua nicamente con operaciones de lectura y escritura exclusiva (suponiendo una memoria con consistencia secuencial). Sin embargo, todas las operaciones de sincronizacin practicas descansan en primitivas atmicas del tipo leer-modificarescribir, en donde el valor de una posicin de la memoria se lee, modifica y se vuelve a escribir de manera atmica.

KARINA ITZEL PEREZ GAYTAN

Pgina 11

ARQUITECTURA DE COMPUTADORAS
La historia del diseo del conjunto de instrucciones nos permite observar la evolucin de soporte hardware para la sincronizacin. Una de las instrucciones clave fue la inclusin en el IBM 370 de una instruccin atmica sofisticada, la instruccin compareand- swap, para soportar la sincronizacin en multiprogramacin sobre sistemas uniprocesador o multiprocesador. Esta instruccin compara el valor de una posicin de la memoria con el valor de un registro especfico, y si son iguales se intercambia el valor de la posicin con el valor de un segundo registro. El Intel x86 permite aadir a cualquier instruccin un prefijo que la hace atmica, con lo que haciendo que los operandos fuente y destino sean posiciones de la memoria es posible utilizar la mayor parte del conjunto de instrucciones para implementar operaciones atmicas. Tambin se ha propuesto que las operaciones de sincronizacin a nivel de usuario, como barreras y candados.

TIEMPO COMPARTIDO El uso del tiempo compartido se refiere a compartir un recurso computacional entre muchos usuarios por medio de la multitarea. Su introduccin en los aos 1960, y su asentamiento como modelo tpico de la computacin en los aos 1970, representa un cambio importante en la historia de la computacin. Al permitir que un gran nmero de usuarios interactuara simultneamente en una sola computadora, el coste del servicio de computacin baj drsticamente, mientras que al mismo tiempo haca la experiencia computacional mucho ms interactiva.

KARINA ITZEL PEREZ GAYTAN

Pgina 12

ARQUITECTURA DE COMPUTADORAS
SISTEMAS DE DISTRIBUCION HARDWARE DE RED

PROTOCOLOS Definicin: Es un conjunto bien conocido de reglas y formatos que se utilizan para la comunicacin entre procesos que realizan una determinada tarea. Se requieren dos partes:

Especificacin de la secuencia de mensajes que se han de intercambiar. Especificacin del formato de los datos en los mensajes.

Un protocolo permite que componentes heterogneos de sistemas distribuidos puedan desarrollarse independientemente, y por medio de mdulos de software que componen el protocolo, haya una comunicacin transparente entre ambos componentes. Es conveniente mencionar que estos componentes del protocolo deben estar tanto en el receptor como en el emisor. Ejemplos de protocolos usados en los sistemas distribuidos:

IP: Protocolo de Internet.- Protocolo de la capa de Red, que permite definir la unidad bsica de transferencia de datos y se encarga del direccionamiento de la informacin, para que llegue a su destino en la red. TCP: Protocolo de Control de Transmisin.- Protocolo de la capa de Transporte, que permite dividir y ordenar la informacin a transportar en paquetes de menor tamao para su transporte y recepcin. HTTP: Protocolo de Transferencia de Hipertexto.- Protocolo de la capa de aplicacin, que permite el servicio de transferencia de pginas de hipertexto entre el cliente WEB y los servidores. SMTP: Protocolo de Transferencia de Correo Simple.- Protocolo de la capa de aplicacin, que permite el envo de correo electrnico por la red. POP3: Protocolo de Oficina de Correo.- Protocolo de la capa de aplicacin, que permite la gestin de correos en Internet, es decir, le permite a una estacin de trabajo recuperar los correos que estn almacenados en el servidor.

KARINA ITZEL PEREZ GAYTAN

Pgina 13

ARQUITECTURA DE COMPUTADORAS
SERVICIOS DE RED

Sistemas Comerciales.- Inicialmente fueron construidos con hardware dedicado y entornos centralizados, son, por sus caractersticas de distribucin geogrfica y necesidad de acceso a sistemas distintos, ideales para implementarse en sistemas distribuidos. Requieren ciertas caractersticas de fiabilidad, seguridad y proteccin. Algunos ejemplos son: o Sistemas de reservas de lneas areas. o Aplicaciones bancarias. o Cajas y gestin de grandes almacenes. Redes WAN.- Debido al gran crecimiento de este tipo de redes (Internet), ha tomado gran importancia el intercambio de informacin a travs de la red. Y para esto tenemos los siguientes ejemplos: o Los servicios comunes que brinda Internet: Correo electrnico, servicio de noticias, transferencia de archivos, la Wrld Wide Web, etc. Aplicaciones Multimedia.- Son las ltimas incorporaciones a los sistemas distribuidos. Estas aplicaciones imponen ciertas necesidades de hardware para poder tener una velocidad y regularidad de transferencia de una gran cantidad de datos. Los ejemplos de estos sistemas son: o Videoconferencia. o Televigilancia. o Juegos multiusuarios. o Enseanza asistida por ordenador. reas de la informtica aplicada a los Sistemas Distribuidos.- En este punto se tienen en cuenta toda la variedad de aplicaciones de los sistemas distribuidos, pues su diseo involucra a muchas reas, por ejemplo: o Comunicaciones. o Sistemas operativos distribuidos. o Base de datos distribuidos. o Servidores distribuidos de ficheros. o Lenguajes de programacin distribuidos. o Sistemas de tolerancia de fallos. Redes de comunicacin Cableadas PAN: USB (1 m, 12 - 480 Mbps) LAN: Ethernet (1 km, 10 - 1000 Mbps) MAN: ATM (10 km, 1 - 150 Mbps) WAN: Internet (mbito mundial, 0,5 - 600 Mbps) Inalmbricas PAN: Bluetooth (10 m, 0,5 - 2 Mbps), Zigbee, IrDA LAN: WiFi (100 m, 2 - 54 Mbps) MAN: WiMAX (10 km, 1,5 - 20 Mbps) WAN: UMTS (mbito mundial, 2 Mbps)
Pgina 14

KARINA ITZEL PEREZ GAYTAN

ARQUITECTURA DE COMPUTADORAS

Soporte hardware de un sistema distribuido conjunto de nodos con espacios propios de memoria y E/S. Cada nodo posee su propio SO y los servicios de red bsicos Ejemplos: multicomputadores, redes LAN / WAN _Problema para la integracin: heterogeneidad *hardware, sistema operativo _Solucin: sistemas abiertos * especificacin pblica de su interfaz * estndares: oficiales vs de facto (OSI vs TCP/IP)

KARINA ITZEL PEREZ GAYTAN

Pgina 15

Potrebbero piacerti anche