Summary: | Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Ciência da Computação, Florianópolis, 2009. === Made available in DSpace on 2012-10-24T20:53:04Z (GMT). No. of bitstreams: 1
271600.pdf: 453764 bytes, checksum: 271409e78c4cde173b2d835cc753aeb0 (MD5) === Reconfiguração dinâmica de software em ambientes computacionais convencionais é o processo de atualizar o software de um sistema em execução. Esta atividade é extremamente importante para corrigir eventuais erros, adicionar e/ou remover funcionalidades e adaptar-se às mudanças que por ventura o sistema pode sofrer durante o seu tempo de vida. Reconfiguração dinâmica de software em sistemas profundamente embarcados torna-se um desafio ainda maior devido às características de tais sistemas, que apresentam sérias limitações de processamento, memória e, quando alimentados por bateria, de energia. Neste cenário, o próprio mecanismo de reconfiguração de software deve usar o mínimo de recursos possíveis pois estará competindo com os recursos do sistema e não deve influenciar os seus serviços. Esta dissertação apresenta o Epos Live Update System (ELUS), uma infra-estrutura de sistema operacional que permite reconfiguração dinâmica de software em sistemas profundamente embarcados. Através do uso de sofisticadas técnicas de metaprogramação estática em C++, o ELUS utiliza pouca memória e o processo de reconfiguração torna-se simples e totalmente transparente para as aplicações. O ELUS é construído dentro do framework de componentes do EPOS, em torno do aspecto de invocação remota, permitindo a seleção dos componentes reconfiguráveis em tempo de compilação, sendo que para todos os outros componentes não selecionados, nenhum sobrecusto em termos de memória e processamento é adicionado no sistema. As principais características que diferem o ELUS das outras infra-estruturas de sistemas operacionais para reconfiguração dinâmica de software existentes são a configurabilidade, o baixo consumo de memória, a simplicidade e a transparência para as aplicações.
|