220 likes | 786 Views
Sistemas Ubicuos 3. Plataformas y arquitectura middleware. Plataformas y arquitectura middleware. Metodologías. Herramientas y plataformas. Interfaces de usuario. Aplicaciones inteligentes. Seguridad e integridad. Aspectos éticos y sociales. Servicios. Infraestructuras software.
E N D
Sistemas Ubicuos3. Plataformas y arquitectura middleware Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Plataformas y arquitectura middleware Metodologías Herramientas y plataformas Interfaces de usuario Aplicaciones inteligentes Seguridad e integridad Aspectos éticos y sociales Servicios Infraestructuras software Infraestructuras hardware Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Plataformas y arquitectura middleware • Middleware vs sistema operativo • Compatibilidad • Arquitecturas middleware. Ejemplos Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Plataformas y arquitectura middleware • Middleware vs sistema operativo • Compatibilidad • Arquitecturas middleware. Ejemplos Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Plataformas y arquitectura middleware Interfaces de usuario Aplicaciones inteligentes Servicios Arquitectura Middleware Infraestructuras software Sistema Operativo o plataforma Infraestructuras hardware Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
¿cómo se reparten las funciones? Plataformas Aplicación Aplicación Middleware ¿compatibilidad? Sistema operativo o plataforma Tecnologías de red y dispositivos Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Reparto de funciones:SO vs Mw • Modificar el SO es laborioso y cuesta alcanzar versiones estables. • Trasladar la funcionalidad al Mw es más sencillo pero ofrece peor rendimiento. • Ejemplo: Gaia, Aura, Sistemas basados en Jini-Java. • Micronúcleos: sólo el soporte básico (cambio de contexto, interrupciones...) en el espacio del núcleo; el resto de funciones, como cliente-servidor en espacio de usuario. • Ejemplos: Plan 9 / Plan B. Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Plataformas y arquitectura middleware • Middleware vs sistema operativo • Compatibilidad • Arquitecturas middleware. Ejemplos Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Compatibilidad • Sistemas heterogéneos: • ¿cómo conseguir que las aplicaciones puedan migrar entre plataformas (Hw o SO) diferentes? • Soluciones: • Disponer de versiones de las aplicaciones para cada plataforma. • Utilizar una plataforma Mw común (ej: Java). • Utilizar emuladores para homogeneizar plataformas. • Condicionantes: • Compatibilidad hacia atrás. • Precio (Sw libre vs propietario). • Recursos limitados (p. ej., en sistemas empotrados). Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Compatibilidad: emulación • Emulación software • Se interceptan los traps de las llamadas al sistema del SO emulado y se interpretan en el SO anfitrión. • Ejemplo: Wine. • Emulación hardware • Se emula el entorno Hw completo. • Ejemplo: BOCHS • Virtualización • Emulación Hw de lo estrictamente necesario: • Llamadas al sistema • Acceso a los dispositivos • El resto de las IM se ejecutan nativamente • Requiere análisis del código • Ejemplos: VMware, VirtualPC, Win4Lin, Parallels Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Aplicación emulada Aplicación emulada Aplicación emulada SO huesped SO huesped Emulador API Aplicación nativa Hw emulado Aplicación nativa Hw emulado Aplicación nativa SO anfitrión SO anfitrión SO anfitrión Hw Hw Hw Compatibilidad: emulación (cont) Emulación Software Emulación Hardware Virtualización Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
SO clásico Micronúcleo Aplicaciones (espacio de usuario) Espacio de usuario Emulador System V Emulador POSIX Otro Emulador Sistema operativo (espacio del kernel) Micronúcleo Espacio del kernel Hw Compatibilidad: micronúcleos Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Compatibilidad: Java Configuration for Small Devices - The Connected Limited Device Configuration (CLDC) http://java.sun.com/javame/technology/index.jsp Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Plataformas y arquitectura middleware • Middleware vs sistema operativo • Compatibilidad • Arquitecturas middleware. Ejemplos Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Modelo de entorno para sistemas ubicuos Recursos o servicios Electrodomésticos, iluminación, proyector... Medio de acceso WiFi, Bluetooth, Infrarrojos, GPRS... Dispositivos de acceso Mando, PDA, teléfono... Servidores PC, dispositivos específicos... Infraestructura de comunicación Power line, ethernet... ¿Explícito o implícito? Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Modelo de entorno para sistemas ubicuos: ejemplo Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Arquitectura middleware Aplicación Aplicación Middleware Sistema operativo o plataforma Tecnologías de red y dispositivos Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Gaia Active Spaces (Roman, 2002) Arquitecturas middleware para sistemas ubicuos. Ejemplos. Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Arquitecturas middleware para sistemas ubicuos. Ejemplos. Aura (Garlan, 2002) Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Arquitecturas middleware para sistemas ubicuos. Ejemplos. Network services Applications Other services JavaSpaces Lookup Jini Discovery/Join RMI Java Java Java Solaris Mac Solaris Solaris Windows PowerPC SPARC x86 Arquitectura Jini Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Applications Intelligent Context Inteligent Context Service Context awareness and location Middleware Context Middleware Resource integration and discovery Raw Context Sensors Arquitecturas middleware para sistemas ubicuos. Ejemplos. AmbienNet Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores