Este trabajo corresponde a una de las principa- les l´ıneas de investigaci´ on del Laboratorio de In- vestigaci´ on en SistemasDistribuidos (LISiDi) de la Universidad Nacional del Sur. La misma ser´a obje- to de estudio de diversas tesinas de grado de las ca- rreras de Ingenier´ıa en Sistemas de Computaci´ on y Licenciatura en Ciencias de la Computaci´ on, am- bas dictadas por el Departamento de Ciencias e In- genier´ıa de la Computaci´ on de la Universidad Na- cional del Sur y posiblemente se extienda a varios trabajos de postgrado (actualmente forma parte del trabajo de una tesis de Magister).
La coordinaci¶on de procesos distribuidos re- quieren del soporte de exclusi¶on mutua. El ambiente de los sistemasdistribuidos puede estar basado en Memoria Compartida Dis- tribuida o mediante la utilizaci¶on de men- sajes. En este trabajo, se consider¶o el en- torno de Memoria Compartida Distribuida, utilizando variables de control compartida para acceder a la secci¶on cr¶³tica.
En los sistemasdistribuidos es importante analizar y verificar el funcionamiento de los procesos cooperativos y de aquellos que comparten recursos y/o servicios. Los procesos cooperativos pueden directamente compartir un espacio de dirección lógico (código y datos), o solamente comparte los datos a través de archivos.
El objetivo de esta línea de investigación está en los aportes de la orientación a objetos aplicada a los sistemasdistribuidos, con énfasis en la migración y sus mecanismos tratando de minimizar el impacto sobre la eficiencia. La temática es una de las áreas de mayor investigación actual en Informática por el crecimiento de los sistemas y aplicaciones distribuidas.
Por otra parte el software de los sistemasdistribuidos actuales debe resolver otro problema. El problema surge debido a que los sistemasdistribuidos actuales est´an compuestos de una gran variedad de hardware (provisto por diferentes fabricantes) y de software de base (sistema operativo). Lograr SSI sobre esta heterogeneidad constituye un gran reto. Los sistemas como Amoeba, etc. no tratan de resolver el problema de la heterogeneidad de sistemas operativos, simplemente asumen que todas las m´aquinas participantes del cluster corren el mismo S.O. Hoy en d´ıa existen soluciones parciales a este problema, e.g. SunNFS [SGK +
principios de la cibernética de segundo orden y de los sistemas complejos autorregulados (Clark, 1999), (Foerster, 1996), (García, 2006), (Varela, 1990). También habrán de considerarse los principios de la computación autonómica y de los procesos cognitivos (Chiew et al., 2004), (Papageorgiou et al., 2005), (Wang, 2007), los principales aspectos de la computación cognitiva (Ehrlich, 2007), (Modha et al., 2011), como así también la comunicación en sistemasdistribuidos (Birman et al., 1991), (Tanenbaum, 1996 y 2009), (Tanenbaum y Van Steen, 2008), (Silberschatz et al., 2006), la sincronización en sistemasdistribuidos (Agrawal et al., 1991), (Ricart et al., 1981), (Cao y Singhal, 2001), (Stallings, 2005), (Tanenbaum, 1996 y 2009). Para el tratamiento de datos faltantes se considerarán métodos de imputación de datos (Kennickell, 1998) (Nguyen et al., 2003), (Peláez et al., 2008). Asimismo se han de tener en cuenta los conceptos acerca de sistemas de soporte de decisión (Doña et al., 2011), (Peláez et al., 2009), (Chen, 2001), (Fodor el al., 1994), (García-Melón et al., 2006), (Saaty, 1980) y de toma de decisiones en grupo (Ben- Arieh et al., 2006), (Herrera et al., 2000), (Herrera et al., 1996), (Chiclana et al., 2004), (Delgado et al., 1998), (Herrera et al., 2000), (La Red et al., 2011), (Lu et al., 2007), (Martínez et al., 2007) y (Martínez et al., 2006), (Yager, 1988, 1993), todo ello sin dejar de considerar la toma de decisiones y su relación con los procesos cognitivos (IPAM, 2007), (Wang et al., 2004).
Un sistema distribuido consiste en un conjunto de computadoras autónomas conectadas por una red y con soporte de software distribuido. Permite que las computadoras coordinen sus actividades y compartan los recursos de hardware, software y datos, de manera tal que el usuario percibe una única facilidad de cómputo integrada aunque ésta pueda estar implementada por varias máquinas en distintas ubicaciones [1]. El desarrollo de sistemasdistribuidos es una necesidad a partir de la utilización de redes de computadoras y de computadoras personales de alta performance.
En todo sistema orientado a objetos, los objetos asumen los roles de clientes y proveedores de servicio. Los proveedores brindan servicios (operaciones) que pueden ser invocados por los dem´as objetos del sistema, que act´ uan como clientes. En los sistemas orientados a objetos tradicionales, el acceso a los proveedores se logra me- diante el uso de referencias expl´ıcitas (punteros o nombres) que deben ser conocidas antes de invocar cualquier operaci´on. ´ Esto resulta mucho m´as dif´ıcil en los sistemas de objetos distribuidos, debido a su gran complejidad. Por un lado, dada la gran escala de estos sistemas, la cantidad de servicios disponibles hace imposible que el desarrollador pueda recordar sus nombres y, menos a´ un, su comportamiento. Por otra parte, los objetos en ejecuci´on est´an constantemente cambiando de ubicaci´on (migrando) y modificando din´amicamente la sem´antica de los servicios que ofrecen. En este contexto las referencias expl´ıcitas ya no son apropiadas porque, por lo gene- ral, cuando se necesita un servicio, resulta imposible disponer de una referencia a su proveedor. Esta limitaci´on impuls´o la exploraci´on de mecanismos encargados de la vinculaci´on din´amica entre objetos, que permitan ubicar, o descubrir , al proveedor apropiado en cada caso sin necesidad de tener una referencia expl´ıcita. Esta vincu- laci´on se logra a trav´es de mecanismos conocidos como de descubrimiento din´ amico de recursos.
El modelo preliminar que se describe a continuación considera Agentes Autónomos (AA) distribuidos en un Mundo (M) pudiendo ser estos reales(r), virtuales (v), o híbridos (h). Sobre el mundo de actuación los Agentes realizan la sensorizacion, acciones para alcanzar sus metas u objetivos y comparten el conocimiento adquirido a través de sus capacidades de interoperar entre si. La Arquitectura propuesta del Agente Autónomo (AA) que actúa en un mundo (M), dispone de: • Un Sistema de Sensorizacion (SS) considerando Sensores Reales (SR) y Sensores Virtuales
Pregunta 3 (1,5 puntos): Se disponen de 3 clientes A, B y C que usan tres sistemas de ficheros distribuidos SF1, SF2 y SF3, cada uno de ellos empleando un modelo de acceso diferente. Un cliente A usa el SF1 que emplea el modelo de carga/descarga, un cliente B usa el SF2 que emplea acceso remoto (sin caché en los clientes) y un cliente C que usa el SF3 que emplea un modelo híbrido. Los clientes A, B y C quieren acceder para lectura a un único bloque del fichero ‘foo.txt’. Complete la siguiente tabla:
Se espera diseñar y desarrollar algoritmos en entornos distribuidos para la resolución de problemas de creciente dificultad (escalabilidad), enfatizando el uso de técnicas híbridas para incorporar heurísticas específicas a cada problema que puedan beneficiar la búsqueda de soluciones. Es fundamental comprender el funcionamiento básico de los algoritmos, tanto secuenciales como paralelos, en dichas condiciones de dificultad e identificar los puntos que permitan una mejora en eficiencia o precisión.