DevC: uma linguagem de suporte ao desenvolvimento concorrente de device drives e modelos de controladores de entrada e saída

Detalhes bibliográficos
Ano de defesa: 2009
Autor(a) principal: LISBOA, Edson Barbosa
Orientador(a): BARROS, Edna Natividade da Silva
Banca de defesa: Não Informado pela instituição
Tipo de documento: Tese
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Federal de Pernambuco
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: https://repositorio.ufpe.br/handle/123456789/1393
Resumo: Produtos eletrônicos modernos integram diversas funcionalidades, combinando mobilidade, poder computacional, uma alta capacidade para comunicação e flexibilidade de interfaceamento. No entanto, a integração dessas funcionalidades eleva a complexidade do projeto. O projeto de tais produtos inclui um sistema embarcado que, em geral, implementa suas funcionalidades em uma solução integrada de hardware e software. Uma plataforma de hardware baseada em processador permite a execução das funcionalidades do software do sistema. Os seus principais componentes são: processadores, memória, barramento e dispositivos periféricos. Modelos de simulação destes componentes podem ser obtidos e conectados para compor um modelo de plataforma virtual. Este modelo pode ser usado, ainda na fase inicial, para o desenvolvimento dos componentes de software: código dependente da plataforma, device drivers, funcionalidades do sistema operacional e aplicações do usuário. Nesse contexto, os dispositivos periféricos e os respectivos device drivers têm um papel importante, pois são responsáveis pelos diversos tipos de comunicação e interfaceamento com o mundo exterior, requisitos obrigatórios na maioria dos sistemas modernos. No entanto, o desenvolvimento de dispositivos periféricos não é uma tarefa simples, ainda que seja um modelo de simulação. Por outro lado, o desenvolvimento do driver depende da disponibilidade do modelo do dispositivo, além do tipo do processador e do sistema operacional. Essas dependências, portanto, podem acarretar atraso no tempo de desenvolvimento e afetar o custo do projeto. Assim, o desenvolvimento integrado e concorrente do dispositivo e do driver facilita a depuração, contribuindo para a eliminação de erro, além de reduzir o tempo total do projeto. Esse trabalho propõe uma abordagem para dar suporte ao desenvolvimento incremental e concorrente de device drivers e modelos de simulação do controlador de dispositivos, considerando diferentes níveis de detalhes dos modelos, o tipo do processador usado, bem como, a utilização de um sistema operacional. Para isso, uma linguagem específica do domínio é proposta para descrever características dos controladores e do device driver e, a partir dessa descrição, possibilitar que o controlador e os drivers sejam sintetizados. Para validar a proposta, uma plataforma baseada no processador Sparc foi desenvolvida e um porte do sistema operacional uclinux foi realizado. Alguns dispositivos periféricos e seus respectivos device drivers foram sintetizados tais como, UART, LCD display e dispositivos específicos para plataformas de computação reconfigurável. Esses componentes foram integrados à plataforma base e simulados para a validação dos componentes