UNIDAD 7

 

INSTITUTO TECNOLÓGICO DE MATEHUALA 

 

 

ING. EN SISTEMAS COMPUTACIONALES

 

 

JOSE ARIEL GUERRERO AGUILAR

 

CURSO DE VERANO

 

 

N. C. 02660018

 

 

MATERIA:

SISTEMAS DISTRIBUIDOS II

 

 

INVESTIGACION

 

 

 

MATEHUALA SAN LUIS POTOSÍ                                                                      JULIO  2006

 

 

CONTENIDO

INTRODUCION

TENDENCIAS DE SISTEMAS DISTRIBUIDOS

            ARQUITECTURA DE MULTIPROCESADORES

SISTEMAS DISTRIBUIDOS QUE INTEGRAN ARQUITECTURA DE MULTIPROCESADORES

            APLICACIONES DE MULTIMEDIA EN SISTEMAS DISTRIBUIDOS

 

 

 

Introducción

Los cambios tecnológicos de los últimos años pueden traer también cambios muy importantes en los sistemas de archivos distribuidos. Además con el rápido avance que se da en las redes de comunicaciones y su incremento en el ancho de banda la creación de paquetes que ofrecen la compartición de archivos es común de encontrarse en el mercado. En la industria, el esquema más solicitado es aquel que permite acceder a los grandes volúmenes de información de los grandes servidores desde las computadores personales o convencionales y desde otros servidores.

 

Veremos a continuación algunos aspectos en los que podrían presentarse cambios en un futuro no muy lejano, teniendo en cuenta que los cambios tecnológicos se producen día a día y en desmesurado avance.

 

TENDENCIAS EN LOS SISTEMAS DISTRIBUIDOS

Hardware reciente
Existen muchos dispositivos
hardware que en los últimos años están abaratando sus costos, tales como las memorias. Esto mejoraría circunstancialmente los actuales servidores de archivos puesto que se podrá adquirir gran cantidad de gigabytes de memoria, aunque todavía se presente el problema de que la memoria sea volátil, es decir, que cuando se apaga el sistema se borran los archivos.
Una nueva
innovación en hardware son los discos ópticos que ahora pueden ser utilizados más de una vez. Aunque son un poco más caros que las cintas de video siempre han sido un aporte importante para los sistemas de archivos, principalmente en el soporte de backups.
Otro desarrollo importante en hardware son las redes de
fibra óptica de alta velocidad que agilizarían la transferencia de archivos y se podría prescindir de la memoria caché. Esto también simplificaría en mucho el software a utilizarse en los sistemas de archivos distribuidos.
Existen muchas más innovaciones tecnológicas que poco a poco harán más eficiente el manejo y
administración de los sistemas de archivos, por lo que en el futuro se podría aun encontrar diversos tipos de soluciones específicas para un sistema determinado por sus propias características y requerimientos.

Escalabilidad
El
concepto de escalabilidad propone que cualquier computador individual ha de ser capaz de trabajar independientemente como un sistema de archivos distribuido, pero también debe poder hacerlo conectado a muchas otras máquinas.
Un sistema de archivos debería funcionar tanto para una docena de equipos como para varios millares. Igualmente no debería ser determinante el tipo de red utilizada (
LAN o WAN) ni las distancias entre los equipos.
Aunque este punto sería muy necesario, puede que las
soluciones impuestas para unos cuantos equipos no sean aplicables para varios otros. De igual manera, el tipo de red utilizada condiciona el rendimiento del sistema, y podría ser que lo que funcione para un tipo de red, para otro necesitaría un diseño diferente.

Redes de área amplia
La mayor parte del trabajo que se realiza actualmente en los sistemas distribuidos se basa en los sistemas alojados en
redes LAN. La tendencia en el futuro es que veremos conectados entres sí muchos sistemas distribuidos LAN con el fin de formar sistemas distribuidos transparentes a través de todo el mundo. Pero para esto tendría que tomarse como punto de importancia el hecho de que no todos los países utilizan un mismo tipo caracteres para sus archivos, es decir, si en latinoamérica utilizamos los códigos ASCII, puede ser que en otras partes del mundo no se utilice este mismo concepto, lo que produciría una incompatibilidad de datos.
Por otro lado, también es importante el cambio que se producirá en las aplicaciones, puesto que la mayoría de
experimentos que actualmente se realizan en las universidades están basados en sistemas parecidos a UNIX.
Un problema que se presentará aun mucho más tiempo es que la conexión de fibra
óptica tardará muchos años en instalarse en todos los rincones del planeta y también la existencia de una red de mayor ancho de banda será difícil y costosa de implementar pues no se cuenta, todavía, con una mayor aceptación del potencial público usuario.

Usuarios móviles
A medida que la
tecnología de las comunicaciones se digitaliza, se encuentra sujeta a las mismas mejoras exponenciales que han hecho que una computadora portátil de 2000 dólares actual tenga más capacidad que una computadora IBM de 10 millones de dólares de hace veinte años. Por esta razón las computadoras portátiles presenta un mayor crecimiento en la tecnología informática.
Pero este hecho presenta la inconveniencia de que estos usuarios no estarán conectados todo el tiempo al sistema, es decir, solo lo estarán algún tiempo y luego no aparecerán. Esto es debido a que todavía no se cuenta con una adecuada red instalada en diversos lugares para que el usuario pueda conectar su laptop, notebook y su PC de bolsillo a su respectivo sistema o al sistema al cual desea conectarse.
Además, como todavía no se cuenta con un ancho de banda mayor, la transferencia de archivos se hace aun mucho más lenta. Se espera que en el futuro existan mejores ventajas para que sobresalga este de desarrollo tecnológico que los últimos ha demostrado tener una verdadera tendencia a seguir creciendo.

Tolerancia de fallas
En la actualidad, la mayor parte de los sistemas de cómputo no presentan
tolerancia a fallas. Es común escuchar en las agencias bancarias la frase: "No hay sistema", por lo que tomamos este hecho como algo absolutamente normal. Salvo algunos sistemas especializados como los que se utilizan para el control de tráfico aéreo, otros sistemas no presentan este comportamiento que debería ser el óptimo.
Para que los sistemas de archivos cumplan con este requisito, deberá existir o implementarse una consistente infraestructura de hardware lo cual permita a los sistemas ser realmente confiables y
seguros en cuanto a tiempo de funcionamiento efectivo se refiere.

7.1 ARQUITECTURA DE MULTIPROCESADOR

Se denomina multiprocesador a un ordenador que cuenta con dos o más microprocesadores (CPUs).

Gracias a esto, el multiprocesador puede ejecutar simultáneamente varios hilos pertenecientes a un mismo proceso o bien a procesos diferentes.

Los ordenadores multiprocesador presentan problemas de diseño que no se encuentran en ordenadores monoprocesador. Estos problemas derivan del hecho de que dos programas pueden ejecutarse simultáneamente y, potencialmente, pueden interferirse entre sí. Concretamente, en lo que se refiere a las lecturas y escrituras en memoria. Existen dos arquitecturas que resuelven estos problemas:

·   La arquitectura NUMA, donde cada procesador tiene acceso y control exclusivo a una parte de la memoria.

·                     La arquitectura SMP, donde todos los procesadores comparten toda la memoria.

Esta última debe lidiar con el problema de la coherencia de caché. Cada microprocesador cuenta con su propia memoria cache local. De manera que cuando un microprocesador escribe en una dirección de memoria, lo hace únicamente sobre su copia local en caché. Si otro microprocesador tiene almacenada la misma dirección de memoria en su caché, resultará que trabaja con una copia obsoleta del dato almacenado.

Para que un multiprocesador opere correctamente necesita un sistema operativo especialmente diseñado para ello. La mayoría de los sistemas operativos actuales lo son.

 

Los sistemas multiprocesador (MP) son un tipo de arquitectura con una importancia creciente y ampliamente difundido. La mayoría de los constructores de computadores ofrece máquinas en las que están presentes más de una CPU, configuración que es hoy en día es de uso habitual en casi todos los sistemas de tamaño medio y grande. Asimismo, los fabricantes de procesadores incorporan a sus arquitecturas, desde hace pocos años, los mecanismos necesarios para que éstos se puedan emplear fácilmente, y con un coste reducido (publicidad de Sun Microsystems en 1999: "si compra un procesador, le regalamos otro"), en la construcción de este tipo de sistemas.

7.2.- SISTEMAS  DISTRIBUIDOS  QUE  INTEGREN  ARQUITECTURAS  MULTIPROCESADOR

La industria informática, ha tenido siempre un objetivo primordial, repetido a lo largo de toda su cadena (fabricantes de semiconductores, fabricantes de sistemas y usuarios): la búsqueda de la velocidad. Para alcanzar este objetivo se han invertido ingentes cantidades de recursos, hasta alcanzar los límites físicos del silicio.

Obviamente, la velocidad va ligada a las prestaciones, y por lo general, la primera ha sido la principal medida para decidirse por un sistema u otro. Sin embargo, por muy evidente que parezca, y dados los límites físicos de los semiconductores, las prestaciones pueden no estar forzosamente ligadas a la velocidad. Hoy es posible construir sistemas, que aún teniendo procesadores más "lentos" que otros, ofrezcan unas prestaciones significativamente superiores. Son los sistemas multiprocesador, que como su denominación indica, incorporan varios procesadores para llevar a cabo las mismas funciones.

No es un concepto nuevo, ya que los "minicomputadores" construidos por compañías como NCR, Sequent y Stratus, ya empleaban varios nodos de proceso como alternativas económicas a otros productos de otras compañías. Sin embargo, aquellos sistemas aún duplicaban recursos caros del sistema, como memoria y dispositivos de entrada/salida, y por tanto, confinaban a los sistemas multiprocesador al mundo de los sistemas de alto nivel.

Ahora, y en gran medida gracias a los procesadores de arquitectura RISC, el soporte multiprocesador es una solución integrada y fácilmente disponible en estaciones de trabajo de sobremesa, que resuelve, a través de hardware VLSI, los complejos problemas de compartición de recursos (memoria compartida) de aquellas primeras máquinas.

Evidentemente, estas mejoras en el hardware, para ser funcionales, requieren importantes desarrollos en el software, y de hecho, muchos sistemas operativos admiten extensiones multiproceso (Match, SCO, Solaris, System V, etc.), que proporcionan paralelismo "en bruto" (asignando múltiples tareas a múltiples procesadores) a nivel del sistema operativo.

Las aplicaciones escritas para facilitar el paralelismo en su ejecución, incrementan significativamente las prestaciones globales del sistema; esto es lo que se denomina multi-enhebrado (multithreading), que implica dividir una sola aplicación entre varios procesadores. Sin embargo, los desarrolladores de software y programadores de aplicaciones sólo han comenzado a explorar las vastas posibilidades de incremento de prestaciones que ofrecen los sistemas con capacidades reales de proceso en paralelo.

El multiproceso no es algo difícil de entender: más procesadores significa mas potencia computacional. Un conjunto de tareas puede ser completado más rápidamente si hay varias unidades de proceso ejecutándolas en paralelo. Esa es la teoría, pero otra historia es la práctica, como hacer funcionar el multiproceso, lo que requiere unos profundos conocimientos tanto del hardware como del software. Es necesario conocer ampliamente como están interconectados dichos procesadores, y la forma en que el código que se ejecuta en los mismos ha sido escrito para escribir aplicaciones y software que aproveche al máximo sus prestaciones.

Para lograrlo, es necesario modificar varias facetas del sistema operativo, la organización del código de las propias aplicaciones, así como los lenguajes de programación.

Es difícil dar una definición exacta de un sistema multiprocesador, aunque podemos establecer una clasificación de los sistemas de procesadores en:

    SISD o secuencia única de instrucciones y datos (Single Instruction, Single Data): una sola secuencia de instrucciones opera sobre una sola secuencia de datos (caso típico de los ordenadores personales).

SIMD o secuencia única de instrucciones y múltiple de datos (Single Instruction, Multiple Data): una sola secuencia de instrucciones opera, simultáneamente, sobre múltiples secuencias de datos (array processors).

    MISD o múltiples secuencias de instrucciones y única de datos (Multiple Instruction, Single Data): múltiples secuencias de instrucciones operan, simultáneamente, sobre una sola secuencia de datos (sin implementaciones útiles actualmente).

    MIMD o múltiples secuencias de instrucciones y datos (Multiple Instruction, Multiple Data): múltiples secuencias de instrucciones operan, simultáneamente, sobre múltiples secuencias de datos.

Los sistemas multiprocesadores pueden ser clasificados con mayor propiedad como sistemas MIMD. Ello implica que son máquinas con múltiples y autónomos nodos de proceso, cada uno de los cuales opera sobre su propio conjunto de datos. Todos los nodos son idénticos en funciones, por lo que cada uno puede operar en cualquier tarea o porción de la misma.

 

APLICACIONES MULTIMEDIA EN  SISTEMAS  DISTRIBUIDOS

Los sistemas multimedia surgen por la posibilidad económicamente viable de integrar video, audio y datos, y de procesarlos y transmitirlos a un coste razonable. La convergencia de telecomunicaciones, electrónica de consumo, ordenadores, televisión y proveedores de información abre posibilidades no imaginadas hace unos pocos años. Aplicaciones a la teleconferencia, la teleeducación, el trabajo cooperativo, etc. están modificando muchos aspectos socio-económicos de la vida cotidiana. En el presente curso se pretenden presentar algunas de las principales aplicaciones multimedia (tales como M-BONE, Netmeeting, CUSeeme, etc.) así como sus fundamentos técnicos. El curso se cerrará presentando experiencias reales y una panóramica de las perspectivas futuras.

Las aplicaciones multimedia distribuidas pueden programarse utilizando tecnologías Java de objetos distribuidos (como RMI). Una aplicación multimedia de alta calidad y distribuida debe ser capaz de ofrecer una cierta calidad de salida, es decir, ofrecer una imagen a la salida cada cierto tiempo. La corrección en el procesamiento temporal de las imágenes depende no sólo de la gestión local del procesamiento sino también de la gestión llevada a cabo por los protocolos de red. En este estudio se deberá estudiar la estructura de tecnologías Java para la integración eficiente de protocolos de red que permitan garantizar los plazos de tiempo que una aplicación debe cumplir en su procesamiento de datos multimedia

Las investigaciones y desarrollos en el área de la multimedia se puede dividir en dos grandes grupos:

  • El primero centrado en el área de estaciones de trabajo independiente con el software y las herramientas relacionadas, tal como composición musical, enseñanza asistida por computadora, video interactivo, etc.
  • El segundo grupo centrado en el intercambio de información multimedia entre esas estaciones de trabajo a través de redes, combinando así los sistemas distribuidos con la multimedia.

Todo esto ofrece un gran panorama y un enorme potencial para nuevas aplicaciones basadas en los sistemas multimedia distribuidos, los cuales incluyen sistemas de información multimedia, los sistemas de colaboración y conferencia, los servicios multimedia sobre demanda, televisión de alta resolución y la enseñanza a distancia.

Los computadores modernos pueden manejar caudales de datos continuo (caudales), dependientes del tiempo como audio y vídeo digital. Esta capacidad ha conducido al desarrollo de aplicaciones multimedia distribuidas como biblioteca de vídeos en red, telefonía sobre Internet y vídeoconferencia. Dicha aplicaciones son viables con las actuales redes y sistemas de propósito general, a pesar de que a menudo la calidad del audio y del vídeo resultante esta lejos de ser satisfactoria. Las aplicaciones más exigentes como la vídeoconferencia a gran escala, la T.V. digital, y los sistemas de vigilancia están más allá de las capacidades de las redes y de los sistemas distribuidos actuales.

Las aplicaciones multimedia generan y consumen caudales de datos continuos en tiempo real. Éstos contienen grandes cantidades de audio, vídeo y otros elementos de datos dependientes del tiempo, y resulta esencial el procesamiento y la entrega a tiempo de los elementos individuales de datos.

Una especificación de un caudal multimedia se expresa en términos de valores aceptables para la tasa a la que los datos pasan desde la fuente al destino (ancho de banda), el retardo en la entrega de cada elemento (latencia) y la tasa a la que se pierden o se desechan los elementos. La latencia es particularmente importante en aplicaciones interactivas. En las aplicaciones multimedia a menudo resultan aceptables un grado pequeño de perdida de datos de los caudales multimedia ya que las aplicaciones pueden volver a sincronizarse con los elementos que siguen a aquellos perdidos.

La reserva y la planificación (scheduling) de los recursos pensadas para satisfacer las necesidades tanto de las aplicaciones multimedia como las otras se denomina gestión de la calidad de servicio. Parámetros importantes son la reserva de la capacidad de procesamiento, el ancho de banda de la red y la memoria (para el almacenamiento de los elementos de datos que son entregados temprano).

Las aplicaciones multimedia demandan la entrega a tiempo a los usuarios de caudales de datos multimedia. Los caudales de audio y vídeo se generan y se consumen en tiempo real, la entrega a tiempo de los elementos individuales es esencial para la integridad de la aplicación. En resumen, los sistemas multimedia son sistemas de tiempo real: deben ejecutar tareas y entregar sus resultados de acuerdo de una planificación que es determinada externamente.

 

 

 

 

 

CONCLUSIONES

Concluimos que la industria informática, ha tenido siempre un objetivo primordial, repetido a lo largo de toda su cadena (fabricantes de semiconductores, fabricantes de sistemas y usuarios): la búsqueda de la velocidad Hoy es posible construir sistemas, que aún teniendo procesadores más "lentos" que otros, ofrezcan unas prestaciones significativamente superiores. Gracias a esto, el multiprocesador puede ejecutar simultáneamente varios hilos pertenecientes a un mismo proceso o bien a procesos diferentes

 

 

 

 

 

Bibliografía

Sistemas Operativos Distribuidos - William Stallings  

Trabajo enviado por:
José Walter Fernández Sánchez
josewalter@terra.com
Ing. de Sistemas
Perú

[Solo00] Solomon, David A.y Russinovich Mark "Inside Microsoft Windows 2000". 3ra Edi. Microsoft Press. Washington. 2000.

[Stal98] Stallings, William. "Operating Systems". 3ra Edi. Prentice-Hall, Inc. New Jersey. 1998.

[Stal01] Stallings, William. "Systemas Operativos". 4ta Edi. Pearson Edicación, S.A. Madrid. 2001.URL: http://www.monografias.com/trabajos7/arso/arso2.shtml

URL: http://www.windowstimag.com/

URL: http://usuarios.lycos.es/betzweb/

Comentarios

Gracias por la informacion, creo q me servira de mucho, yo estoy estudiando Ing. en Sistemas Computacionales en el Instituto Tecnologico de Jiquilpan, los temas de esta unidad don identicos a los que me imparten, solo hace falta un ultimo punto:"7.4 Configuración de Arquitecturas RAID"


Este artículo es una real mierda


Añadir un Comentario:



Inserta aquí el código de verificación que ves en la imagen.

Acerca de arieljaga

ensayo

Archivo

Suscríbete

RSS | Atom

Contacto

Contactar

Albergado en:blogdiario.com

Noticias: Noticias

Un servicio de HispaVista

Contador gratis contadorplus.com