Escalonamento de tarefas e fluxos de comunicação para sistemas semi-particionados em arquiteturas NoC
Resumo
Com a popularização de sistemas multi-processador, surgiu uma série de propostas de
modelos de escalonamento, na área de sistemas de tempo real que, teoricamente, são capazes
de obter um alto aproveitamento dos recursos do sistema. Entretanto, o modelo de
escalonamento mais adotado continua sendo um dos primeiros modelos de escalonamento
propostos na área, o modelo de escalonamento particionado. O modelo de escalonamento
particionado só pode garantir o escalonamento de conjuntos com até cerca de 69% de
utilização de processador, sendo limitado se comparado com garantias de escalonamento de
até 97% de utilização de modelos mais recentes. O motivo pelo qual o escalonamento
particionado continua sendo utilizado é a grande concentração de estudos a respeito do
modelo e o desenvolvimento de análises de escalonamento capazes de garantir o
escalonamento do modelo em condições reais do sistema. Modelos mais recentes, como o
escalonamento semi-particionado, apresentam uma possibilidade de um maior aproveitamento
do sistema, porém, ainda possuem estudos limitados e não dispõe de análises de
escalonamento capazes de prover garantias temporais para o sistema em condições reais,
devido à presença de diversas abstrações no modelo. Neste sentido, este trabalho foca em
arquiteturas Network-on-Chip que apresentam comunicação explícita, abstraída nos trabalhos
encontrados na literatura. Este trabalho tem como objetivo primário o desenvolvimento de
uma análise de escalonamento capaz de prover garantias temporais para o modelo de
escalonamento semi-particionado levando em consideração fatores previamente abstraídos,
como a necessidade de comunicação entre tarefas e o impacto da migração das tarefas nos
seus fluxos de comunicação, aproximando o modelo da realidade. O desenvolvimento de tal
análise possibilita o estudo preliminar de algoritmos heurísticos de mapeamento de tarefas,
capazes de mapear conjuntos de tarefas levando em consideração migrações de tarefas e
comunicação entre tarefas em um modelo de escalonamento semi-particionado.