Escalonamento
• Referencias:
– dissertação de mestrado de João Luiz Luguesi (2006) orientação: Douglas Renaux
– disponível em:
http://arquivos.cpgei.ct.utfpr.edu.br/Ano_2006/dissertacoes/Dissertacao_421_2006.pdf http://arquivos.cpgei.ct.utfpr.edu.br/Ano_2006/dissertacoes/Dissertacao_421_2006.pdf
– Artigo de Sha, Rajkumar e Lehoczky sobre semáforos com prioridade
http://www.cs.utexas.edu/users/karu/papers/pathfinder.pdf
Diagrama de Gantt
serviço = job
Nomenclatura
Classificação de Tarefas
Preemptivo x Não-Preemptivo
Round Robin
Executivo Cíclico (estático)
Earliest Deadline First
(mais próximo primeiro)
Least Laxity First
(menor tempo de relaxamento primeiro)
Highest Priority First
• Alocação de prioridades:
– importância da tarefa
– RMA (análise de taxa monotônica) – DMA (análise de prazo monotônico) – DMA (análise de prazo monotônico)
Prioridades
Teorema 1 – Liu e Layland
Seja um conjunto de n tarefas periódicas e independentes com prazos iguais aos
períodos,prioridades por RMA, em ambiente preemptivo. A equação 3.2 (LUI;
preemptivo. A equação 3.2 (LUI;
LAYLAND,1973) estabelece um limite máximo
U(n) para a taxa de utilização, que garante a
escalonabilidade deste conjunto de tarefas.
Teorema 2 – Liu e Layland
Seja um conjunto de n tarefas periódicas e independentes com prazos iguais aos
períodos,prioridades por RMA, em ambiente preemptivo. Se cada tarefa atender seu
preemptivo. Se cada tarefa atender seu primeiro prazo quando considerando que todas estavam prontas simultaneamente então o sistema é escalonável.
Solução gráfica.
Prioridades
9878 .
11 0 5 5
1 3
1 + + =
Escalonamento com Bloqueio
Efeito dos Semáforos
Inversão de Prioridade
Deadlock
Inversão de Prioridades
PIP – Priority Inheritance Protocol
PCP – Priority Ceiling Protocol
PCP – Priority Ceiling Protocol
• Para cada semáforo atribui-se um teto de prioridade = prioridade da tarefa mais prioritária dentre as que
acessam este semáforo.
• Teto de cada semáforo: estático
• Teto do sistema: dinâmico (maior teto dentre os semáforos atualmente travados)
• Teto do sistema: dinâmico (maior teto dentre os semáforos atualmente travados)
• Uma tarefa só pode entrar numa região crítica se sua prioridade for estritamente maior (>) do que o teto do sistema.
• Caso esta condição não seja verdadeira, a tarefa bloqueia e a tarefa em posse do semáforo herda a prioridade da tarefa bloqueada.