OSEmb- Suporte ao Nível de Sistema para Sistemas Embebidos de Reduzidas Dimensões

Enquadramento: A proliferação de pequenos sistemas embebidos tais como telefones celulares, PDAs, câmaras fotográficas e de filmar, redes de sensores para monitorização e controlo, sistemas de vigilância, etc, cria uma infra-estrutura com o potencial para o desenvolvimento de aplicações com requisitos cada vez mais exigentes. O desenvolvimento desse novo tipo de aplicações pode beneficiar consideravelmente da existência de algum suporte em termos de sistema operativo / "middleware". Apesar dos escassos recursos normalmente disponíveis nalguns dos dispositivos atrás referidos, um suporte mínimo à construção de aplicações é desejável. Nomeadamente, suporte à concorrência e garantias de cumprimento de metas temporais são factores importantes. No entanto, a utilização directa de sistemas operativos comuns, nem sempre é viável devido às restrições associadas aos recursos disponíveis. A existência de núcleos multitarefa de dimensões reduzidas, que ofereçam um suporte mínimo ao desenvolvimento de aplicações tempo-real em microcontroladores de escassos recursos, é fundamental para a proliferação dos sistemas embebidos acima referidos.

Objectivos: Obtenção de núcleo multitarefa / "middleware" de reduzidas dimensões, susceptível de ser utilizado em sistemas embebidos de escassos recursos, suportados por microcontroladores. Abordagem de aspectos relacionados com tempo-real, consumo energético e suporte às comunicações, numa arquitectura modular baseada em componentes e facilmente configurável.

Descrição: Para além dos aspectos básicos de suporte à concorrência, comunicação e sincronização entre tarefas, devem ser abordados aspectos relativos ao tempo-real, consumo energético e suporte a redes de comunicação. Obviamente que, atendendo à escassez dos recursos disponíveis, isso implicará soluções relativamente rudimentares, constituindo todavia uma mais-valia no suporte ao desenvolvimento de aplicações neste tipo de ambiente. Como ponto de partida poderão ser utilizados núcleos multitarefa existentes no domínio público, como por exemplo, o TinyOS, uCOS, Nano-RK ou o eCOS.

Orientação: Carlos Almeida