O toyota Way para Desenvolvimento de Software



Baixar 137.13 Kb.
Encontro12.09.2019
Tamanho137.13 Kb.

Universidade Federal de Pernambuco



Centro de Informática


Graduação em Ciência da Computação


Sistemas Operacionais embarcados:

UM ESTUDO COMPARATIVO

Augusto César de Mello Cabral Pedroza

pROPOSTA DE Trabalho de Graduação

Orientador: Prof. Dr. Paulo Romero Martins Maciel



  1. Contexto


Um sistema embarcado é comumente descrito como um dispositivo composto de um hardware programado que executa tarefas bastante específicas. Tais tarefas se caracterizam por terem requisitos bem definidos. Em virtude do tamanho destes componentes eletrônicos, diversas são as restrições por eles impostas especialmente em se tratando do tamanho das aplicações por eles suportadas.

Um ponto bastante notável na programação embarcada é que quase sempre um loop infinito engloba as principais funcionalidades da aplicação. Isto é feito porque o trabalho de um sistema embarcado nunca termina. Este tipo de aplicações rodam até que algum defeito ocorra ou o sistema seja reiniciado. Esta peculiaridade bastante utilizada no passado e ainda utilizada hoje, traz consigo algumas complicações. Uma delas é que quanto mais complexa for a aplicação mais difícil será prever o tempo de execução do loop principal do sistema, tornando estes sistemas não apropriados para aplicações que imponham restrições temporais.

Atualmente, com o avanço frenético da tecnologia, dispositivos embarcados cada vez menores com capacidades cada vez maiores são lançados no mercado possibilitando assim, que operações mais complexas e cada vez mais precisas possam ser efetuadas e, permitindo que camadas de abstração conhecidas como sistemas operacionais sejam utilizados para um melhor gerenciamento de recursos.

Os sistemas operacionais embarcados se caracterizam por serem bastante pequenos e conseqüentemente terem menos recursos que um SO de uso geral. São responsáveis atualmente pelas operações de tempo real que quase sempre estão presentes nos sistemas embarcados. Realizam um gerenciamento dos dispositivos de Entrada e Saída (IO), memórias, processadores, entre outros, e oferecem uma máquina estendida ou máquina virtual que tem como finalidade “esconder” complexas rotinas de acesso ao hardware. Esta abordagem facilita a manipulação de diversos dispositivos presentes no sistema embarcado.



  1. Objetivos


A proposta deste trabalho é gerar uma análise detalhada de vários aspectos dos sistemas operacionais embarcados mais utilizados atualmente. As áreas que serão analisadas com mais detalhes estão relacionadas ao suporte a tempo real do sistema e ao desenvolvimento de device drivers. Aspectos de segurança, portabilidade entre alguns outros, terão uma importância secundária.

Serão colhidas informações relativas à abordagem utilizada por cada sistema com o objetivo de identificar ambientes onde tais sistemas melhor se aplicam, assim como vantagens e desvantagens na modelagem de cada sistema.



Pequenas aplicações serão utilizadas para uma melhor demonstração dos conceitos e informações geradas na etapa de pesquisa deste projeto. Esta fase gerará dados que medirão a qualidade, facilidade e robustez das diversas etapas de desenvolvimento de uma aplicação embarcada (capacidade de depuração, carregamento em módulos e etc).


  1. Cronograma


Abaixo, uma visão macro das etapas necessárias para a conclusão deste trabalho, assim como uma previsão de suas respectivas datas de conclusão.


Atividades

Julho

Agosto

Setembro

Outubro

Escolher alguns dos sistemas operacionais embarcados mais utilizados atualmente























































Estudo comparativo relativo ao suporte oferecido pelos sistemas escolhidos à diversos tipos de operações necessárias em sistemas embarcados























































Implementação de pequenos experimentos que explorem conceitos de tempo real, multi-thread entre outros






















































Documentação e apresentação do estudo realizado
























































Referências


[1] ABBOTT, D. Linux for Embedded and Real-time Applications. 2 ed. Newness 2006, 325 p.
[2] BARR, M. Programming Embedded Systems in C and C++. 1 ed. O'Reilly 1999, 191 p.
[3] TANENBAUM, A. Modern Operating Systems. 2. ed. New Jersey. Prentice Hall: 2001, 976p.

Data e Assinaturas


Recife, 3 de julho de 2006


____________________________________

Paulo Romero Martins Maciel (Orientador)

____________________________________



Augusto César de Mello Cabral Pedroza (Proponente)







©aneste.org 2017
enviar mensagem

    Página principal