ANÁLISE DE ESCALONADORES DE PROCESSOS EM TEMPO REAL EM UMA PLATAFORMA ABERTA

  • Lais Borin UFFS
  • Marco Aurélio Spohn UFFS
Palavras-chave: Algoritmos de escalonamento, Escalonamento em tempo real, Xv6.

Resumo

Escalonamento de processos em tempo real determina um algoritmo a ser seguido sob restrições de tempo. O algoritmo de escalonamento de processos deve atender as exigências impostas pelo sistema tanto a nível de dados quanto em questão de tempo. Determinar um algoritmo satisfatório exige um alto grau de conhecimento e controle sobre o sistema. A análise comportamental dos algoritmos, contudo, realiza-se a partir de demostrações teóricas, de simulações ou em plataformas de tempo real. A parte significativa das análises é realizada, em sua maioria, de forma teórica. Esta abordagem, pois, ignora custos como, por exemplo, instanciação do sistema e trocas de contexto. Com isso, este trabalho descreve a implementação dos algoritmos Earliest Deadline First e Preemption Thresholds para escalonamento de processos em tempo real. A implementação é realizada como uma expansão do sistema operacional xv6, um sistema operacional educacional e convencional. Dessa forma, o xv6 passa a oferecer a opção de execução em modo de tempo real, com a disponibilidade de dois algoritmos de escalonamento de processos dentro do modo. A análise comportamental dos algoritmos foi realizada através de métricas padrões de desempenho, aplicadas a partir da execução de cenários na plataforma. A execução dos cenários é feita com base em um único processador. O xv6 apresentou capacidade para modelagem em tempo real, o que viabiliza uma gama maior de testes com outros cenário e possibilita a inclusão de demais algoritmos para escalonamento de processos em tempo real. O comportamento dos algoritmos mostrou ser relativo ao conjunto de processo utilizado, apesar de apresentarem desempenho semelhante.

Referências

G. C. Buttazzo. Hard Real-Time Computing Systems. Predictable Scheduling Algorithms and Applications. Real-Time Systems Series. Springer, Spring Street, New York, NY 10013, USA, third edition, 2011.

P. Li and B. Ravindran. Fast, best-effort real-time scheduling algorithms. IEEE TRANSACTIONS ON COMPUTERS, 53(9):1159–1175, Sep. 2004.

M. Dellinger, P. Garyali, and B. Ravindran. Chronos linux: A best-effort real-time multiprocessor linux kernel. Design Automation Conference (DAC), 2011 48th ACM/EDAC/IEEE, June 2011.

J. Regehr. Scheduling tasks with mixed preemption relations for robustness to timing faults. In Proceedings of the 23rd IEEE Real-Time Systems Symposium (RTSS 2002), page 315–326, December 3-5 2002.

C. L. Liu and J. W. Layland. Scheduling algorithms for multiprogramming in a hard-real time environment. Journal of ACM, 20(1):46–61, January 1973.

Publicado
28-09-2016