This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Foi idealizada por Mark Weiser que imaginou ambientes impregnados de computação, nos quais os dispositivos fazem parte do ambiente (salas de aula, escritórios, edifícios).
Os ambientes se auto-configuram de acordo com as preferências do usuário, a fim de o ajudar nas suas tarefas
Calm Technology: a integração é tranqüila e até imperceptível (computação invisível).
Serviço e Assinatura (assinatura de serviços) Clientes assinam serviço disponibilizado Intermediação:
Encapsula características de provedor de serviços propiciando interoperabilidade, troca de provedores, serviços distribuídos (balanceamento de carga, redução de latência,...)
Requisitos: Interface Extensível Escalabilidade Transparência em relação à rede Eficiência: rápida transferência de mensagens
Alguns dos desafios e problemas enfrentados pela UC:
Tentar fazer das UCAs killer applications Criar sistemas tolerantes a falhas Interoperabilidade Sensibilidade ao Contexto Garantir Privacidade Custo dos dispositivos computacionais Baixo consumo de energia
Choices Um dos primeiros SODs Orientado a objetos – flexibilidade, extensibilidade Queriam provar que é possível construir um S.O. em C++ Arquitetura geral é definida como um framework Exokernel: radicalização da idéia de microkernel
2K Motivação: construir um Choices distribuído para a Internet Abordagem: middleware-level OS
Para resolver a questão da heterogeneidade de hardware e software / alguns problemas por causa da inflexibilidade e peso das plataformas
Estender as idéias do 2K para computação Ubíqua: um SO para espaços ativos.
Espaço Ativo: Ambiente de computação composto por um espaço físico qualquer enriquecido com dispositivos eletro-eletrônicos capazes de realizar algum tipo de computação útil aos freqüentadores do ambiente.
Manager”, “Component Container” e o UOBHost. Componente Unificado: são os elementos básicos do UOB.
Seguem um esquema de nomenclatura comum e seu ciclo de vida pode ser gerenciado dinamicamente independentemente de seu modelo de componentes e sua localização .
2) Unified Object Bus Gerenciador de Componentes: determina a interface para manipular o
ciclo de vida de componentes e encapsula a funcionalidade de integrar diferentes modelos de componentes; entretanto há um gerenciador para cada modelo de componentes integrado.
Component Container: provê o ambiente de execução para os componentes e determina a funcionalidade de gerenciar as dependências dos componentes que contém.
UOBHost: qualquer dispositivo capaz de hospedar a execução de componentes. Determinam a funcionalidade de criar, remover Component Containers, bem como criar componentes em containers específicos.
Presentation – É a externalização física do modelo que permite aos usuários percebê-lo através de um ou mais sentidos.
Adapter – É o componente responsável por adaptar o formato dos dados do modelo às características de um dispositivo de saída.
Controller – Determina mecanismos para modificar o estado do modelo. Entretanto, diferentemente do controlador padrão do MVC, o controlador definido pelo MPACC coordena não apenas os dispositivos de entrada, mas qualquer origem de contexto físico e digital que pode afetar a aplicação.
Coordinator – O coordenador é um componente de meta-nível que gerencia a composição da aplicação e aplica políticas de adaptação baseadas nos aspectos funcionais e não funcionais da aplicação.
Migração: cópia ou movimentação de ambientes e todo o seu conteúdo (operação atômica)
Emcee: Gerenciamento de usuários e aplicações.
Shell gráfico com interface drag and drop para o gerenciamento dos ambientes (árvore) Depende do serviço de migração e do serviço de descoberta Faz um scan do ambiente de destino para detectar a chegada da aplicação
Pró-atividade / auto ajuste tentativa de inferir requisições de uma camada mais alta. As
camadas adaptam-se ajustando a sua performance e o uso de recursos observando a demanda – fatores que colaboram para reduzir a necessidade de atenção do usuário
Gerenciador de Tarefas - Prisma Processos que estavam sendo executados anteriormente podem
ter que se adaptar a um novo contexto – congelamento das aplicações e restauração quando os recursos estão novamente presentes
[AMCRC04] Jalal AlMuhtadi, Shiva Chetan, Anand Ranganathan, and Roy Campbell. Super spaces: A middleware for largescale pervasive computing environments. In Proceedings of the Second IEEE Annual Conference on Pervasive Computing and Communications Workshops, page 198. IEEE Computer Society, 2004.
[DoCS] University of Illinois at UrbanaChampaign Departament of Computer Science. Gaia project, active spaces for ubiquitous computing. http://gaia.cs.uiuc.edu. [dW] Universidade de Washington. Projeto one.world. http://one.cs.washington.edu.
[ea04a] CarlFredrik et al. A contextaware middleware for applications in mobile ad hoc envirnments. In Proceedings of 2nd Workshop on Middleware for Pervasive and AdHoc Computing, pages 107--110. ACM Press, 2004.
[ea04b] Suskil K. Prasad et al. Syd: a middleware testbed for collaborative applications over small heterogeneous devices and data stores. In Proceedings of the International Middleware Conference, pages 352--371, Toronto, Canada, October 2004. Springer.
[Gri02] Robert Grimm. System Support for Pervasive Applications. PhD thesis, Washington University, October 2002.
[HM04] Markus C. Huebscher and Julie A. McCann. Adaptive middleware for context aware applications in smarthomes. In Proceedings of the 2nd workshop on Middleware for pervasive and adhoc computing, pages 111--116. ACM Press, 2004.
[MMH04] Mirco Musolesi, Cecilia Mascolo, and Stephen Hailes. Adapting asynchronous messaging middleware to ad hoc networking. In Proceedings of the 2nd workshop on Middleware for pervasive and adhoc computing, pages 121--126. ACM Press, 2004.
[RAM + 04] U. Ramachandran, Gregory Abowd, Martin Modahl, Bikash Agarwalla, and Scott Saponas. Toward a standad ubiquitous computing framework. In Proceedings of 2nd Workshop on Middleware for Pervasive and AdHoc Computing, pages 135--139. ACM Press, 2004.
[RBH04] Peter Rigole, Yolande Berbers, and Tom Holvoet. Mobile adaptive tasks guided by resource contracts. In Proceedings of the 2nd workshop on Middleware for pervasive and adhoc computing, pages 117--120. ACM Press, 2004.
[RHC + 02] Manuel Rom’an, Christopher Hess, Renato Cerqueira, Anand Ranganathan, Roy H. Campbell, and Klara Nahrstedt. A middleware infrastructure for active spaces. IEEE Pervasive Computing, 1(4):74--83,
2002. [SG02] Jo”ao Pedro Sousa and David Garlan. Aura: an architectural framework for user mobility in ubiquitous computing
environments. In Proceedings of the IFIP 17th World Computer Congress TC2 Stream / 3rd IEEE/IFIP Conference on Software Architecture, pages 29--43. Kluwer, B.V., 2002.