masterThesis
Desenvolvimento de mecanismo para especificação de políticas de escalonamento em projetos de sistemas embarcados
Registro en:
Patrícia Santos, Daniele; Natividade da Silva Barros, Edna. Desenvolvimento de mecanismo para especificação de políticas de escalonamento em projetos de sistemas embarcados. 2011. Dissertação (Mestrado). Programa de Pós-Graduação em Ciência da Computação, Universidade Federal de Pernambuco, Recife, 2011.
Autor
Patrícia Santos, Daniele
Institución
Resumen
Em sistemas embarcados, uma de suas partes críticas é o escalonador de tarefas. Este é responsável por determinar qual tarefa ocupará o processador em cada instante de tempo. Uma escolha de tarefa errada pode ter resultados que vão de uma diminuição de desempenho à perda de vidas humanas. Diante de sistemas cada vez mais complexos, surge a necessidade de criar escalonadores de tarefas especializados para aplicações específicas com o intuito de melhorar o desempenho desses sistemas. Sendo a implementação de escalonadores uma tarefa trabalhosa, que requer o uso de linguagens de baixo nível, esse trabalho de mestrado apresenta uma linguagem específica de domínio, a SchedLanguage, para facilitar a implementação de políticas de escalonamento dirigidas a prioridades. Com uma sintaxe simples, a SchedLanguage facilita a implementação de escalonadores, permitindo que estes sejam especificados em um nível de abstração maior. Além disso, também proporciona uma detecção precoce de erros relacionados ao entendimento e definição do sistema. Também é mostrado neste trabalho a ferramenta SchedTool, que gera um escalonador a partir de uma especificação em SchedLanguage. A utilização da linguagem proposta neste trabalho não é restrita a uma única plataforma. Por necessitar de algumas informações relacionadas à plataforma utilizada, uma mesma especificação nessa linguagem pode ser utilizada em diferentes plataformas. A linguagem e a ferramenta apresentadas neste trabalho foram validadas utilizando uma plataforma de referência ArchC, sendo utilizadas para escalonar diferentes tipos de tarefas