Escolar Documentos
Profissional Documentos
Cultura Documentos
COMPONENTES: DANIEL LUIS M. TIMPONI R.A.: 16607 R.A.: 16629 R.A.: 16635 R.A.: 16646
A condio necessria e suficiente para que a a tarefa Ti seja escalonvel que exista um
Correspondem ao tempo de chegada das tarefas Tj de prioridade maior ou igual a Ti, ocorrendo dentro do periodo Pi.
O tempo de resposta mximo de uma tarefa foi introduzido como sendo o tempo transcorrido entre a chegada e o trmino de sua execuo, considerando a mxima interferncia que a tarefa pode sofrer de outras tarefas de maior ou igual prioridade.
O mtodo no converge quando a utilizao do conjunto de tarefas for maior que 100%
Escalonadores ativados por tempo ("ticket scheduler") podem ser fonte do atraso na liberao de tarefas:
As tarefas tem as suas chegadas detectadas nos tempos de ativao do escalonador,
Deadline Arbitrrio
TESTE DE ESCALONABILIDADE EM MODELOS ESTENDIDOS
Em modelos de deadline arbitrrio, podemos ter (D > P). Tarefas com estas caractersticas sofrem interferncia interna. Logo, para clculo do tempo de resposta, tambm temos de levar em considerao a
Para que se obtenha o tempo de resposta mximo Ri da tarefa Ti necessrio que se faa a inspeo de todos "i-busy periods", na ordem de valores crescentes de q (q=0, 1, 2, 3,..), at um valor de janela que verifique a condio:
Se o efeito de "deadlines" arbitrrios for includo em modelos onde as liberaes no coincidem com os tempos de chegada das instncias da tarefa T , a janela de tempo Wi (q) e o tempo de resposta Ri passam a ser dados, respectivamente, por:
3 (0)= 3 + 3 (1) -q 3 = 0 + 25 0 = 25
O valor do tempo de resposta R3(0) corresponde a 25. Com W3(0) superando o perodo P3 (P3 = 20) ento, essa janela no corresponde ao maior "busy period" de prioridade 3.
3 (1)= 3 + 3 (1) -q 3 = 0 + 30 20 = 10
Com isto obtemos R3(1) = W3(1) - P3 = 10. Como W3(1)<2P3 temos ento o mximo "busy period" envolvendo duas ativaes da tarefa T3
COMPARTILHAMENTO DE RECURSOS
As tarefas apresentadas nos exemplos anteriores eram tarefas independentes, mas em sistemas de
tempo real geralmente no ocorre dessa forma. Muitas tarefas possuem relao entre elas.
As tarefas dependentes criam bloqueios em tarefas mais prioritrias, tambm chamados de inverses
de prioridades.
Esses bloqueios so inevitveis em um escalonamento dirigido a tarefas dependentes. Sabemos que
evitar esses bloqueios ao mximo seria de grande importncia, por isso, foram criados mtodos para reduzir esse nmero (Protocolo Herana de Prioridade e o Protocolo de Prioridade Teto).
Nesse mtodo, as prioridades deixam de ser estticas, ou seja, de acordo com a figura anterior, quando T1 e T4 sofrem bloqueio, a prioridade passa a ser em T1. Evitando assim que tarefas intermedirias atrasem a execuo em sees crticas.
Tarefas possuem prioridade nominal ou esttica (RM, DM, etc). Tarefas possuem prioridade dinmica ou ativa (Derivadas das aes de bloqueio que ocorrem no sistema).
Uma tarefa mais prioritria quando executada sob o PHP pode sofrer dois tipos de bloqueios:
Bloqueio direto: ocorre quando a tarefa mais prioritria tenta acessar o recurso compartilhado j
sua execuo por uma tarefa que tenha herdado a prioridade de uma tarefa mais prioritria.
Ocorre quando h uma sequncia de tarefas aninhadas, ou seja, quando uma tarefa possui ligaes
O clculo do bloqueio no PHP envolve diversas variaes, o que pode tornar estes clculos muitas
tarefas:
No somatrio do teste acima, considera-se a utilizao de tarefas com prioridade maior ou igual a pi .
Outro teste, porm mais simples pode ser realizado utilizando apenas a frmula abaixo:
Esse teste mais impreciso que o teste apresentado anteriormente, ou seja, os resultados obtidos aqui
podem ser diferentes do anterior. Digamos que nos valores obtidos nesse teste no foi possvel o escalonamento, os clculos ento precisariam ser refeitos no teste anterior para confirmar esse resultado. Mas se um teste for escalonvel, no precisar refazer os clculos para ter a confirmao da resposta.
A seguir temos o modelo para calcular o escalonamento de prioridades fixas, utilizando o bloqueio que
O teste baseado em tempo de resposta para modelos envolvendo deadlines arbitrrios, estendido
O calculo de Bi (maior sesso crtica que bloqueia Ti) nem sempre exato, o que deixa os resultados
bastantes imprecisos.
usado para escalonamentos de prioridades fixas, como o rate monotonic. Limita o nmero de bloqueios ou inverses de prioridade para evitar deadlocks. Dirigido para escalonamento de prioridade fixa.
Assegura que apenas um bloqueio realizado por seo. Se uma tarefa de menos prioridade interferir
em uma de maior prioridade, esse protocolo no deixa que outra tarefa com prioridade inferior interfira novamente no processo.
Se ocorrer o bloqueio em mais de duas tarefas, a tarefa com menor prioridade inicial que passou a ser
a principal recebe um valor de prioridade teto, significando que ela passa a ser a tarefa de prioridade mxima.
Uma tarefa s acessa um recurso compartilhado se sua prioridade ativa for maior que a prioridade teto
O protocolo de prioridade de teto introduz um novo tipo de bloqueio chamado de ceiling, onde uma
tarefa fica bloqueada porque no possui prioridade dinmica superior a de maior prioridade teto entre os recursos ocupados. Esse bloqueio necessrio para evitar as cadeias de bloqueios e os deadlocks.
Uma verso melhorada do PCP. A herana de prioridade no IPCP deixa de se dar quando a seo crtica bloqueia a tarefa mais
prioritria. A tarefa menos prioritria tem sua prioridade ativa elevada, assumindo logo no incio da seo crtica a prioridade teto do recurso acessado, com isso, garantimos que um tarefa s poder ser bloqueada no incio de sua execuo e que a partir do momento de sua execuo, somente uma tarefa de maior prioridade poder interromper o processo.
T3 libera S3 retornando a sua prioridade esttica. T2 interrompe T3 e T1 tenta fechar semforo S1, T3 bloqueado por ceiling T2 ; libera possui S3 prioridade ;T3 fecha einterrompe libera igual S1; ao maior e completa. ceiling T3 de reassume semforo ej libera semforo S2. T1 reativado e T3. T1 entra libera T1 termina T1 e fecha reassume Semforo na prioridade herdada T1 libera T3 entra em seo crtica (fecha o Semforo T3 comea sua T3 entra na seo crtica aninhada ao fechar T2 T2 inicia seu processamento interrompendo T3(preempo sofre bloqueio direto: S3 fechado por T3 que reassume e herda prioridade T1 inicia tarefas. e interrompe mais que T3 com a prioridade fecha S3 prioritria fechado pelas outras completa em T3. S1. T1 S1 de T2 S2 S2 S3) de execuo semforo S2 T3)
Durao da maior sesso crtica que pode bloquear pelo algoritmo de Teto.
RELAES DE PRECEDNCIA
Relaes de precedncia podem ser definidas atravs das necessidades de comunicao e sincronizao entre as tarefas
As tarefas tipicamente, recebem mensagens, executam seus processamentos e por fim, enviam seus resultados ou sinais de sincronizao na forma de mensagens.
definido pode
acontecer.
O conceito de atividade usado como a entidade encapsuladora de tarefas que se comunicam e/ou se sincronizam.
Cada atividade representada por um grafo orientado acclico onde os nodos representam tarefas e os arcos identificam as relaes de precedncia.
As atividades so ditas sncronas quando as tarefas liberam suas sucessoras pelo envio de mensagens As atividades so ditas assncronas quando a liberao envolve "offsets.
O modelo introduzido coloca as atividades como sncronas o que implica em tratar precedncias como "release jitters". Como as tarefas possuem "deadlines" relativos menores que seus respectivos perodos, a verificao de escalonabilidade pode ser feita usando as equaes:
Com W2=20 e tomando J2=3, o valor do tempo de resposta dado por R2=23
A tarefa T3, por sua vez, sofre interferncias de T1 e de um jitter Porque sua liberao depende da concluso de T2(J3=R2)
A tarefa T4 tem o seu pior tempo de resposta portanto em 48 (R4=W4+J4). Se compararmos os tempos de resposta encontrados com os "deadlines' relativos das respectivas tarefas na figura 2.13, verificamos que as tarefas so escalonveis..
BIBLIOGRFIA
Jean-Marie F.; Fraga, J. S.; e Oliveira, R. S., Sistemas de Tempo Real, Departamento de
Automao e Sistemas, Universidade Federal de Florianpolis, Florianpolis-SC, 2000, Acessado em 12 de abril de 2013, Disponvel em <http://www.das.ufsc.br/~romulo/livrotr.pdf>;
Araujo, R. G. B., Simulador de escalonamento em tempo real CHEDDAR, Departamento de
Engenharia e Arquitetura, Universidade de Salvador BA, , Acessado em 12 de abril de 2013, Disponvel em < http://www.harpia.eng.br/disciplinas/str/Simulador_Cheddar%20%20How%20to.pdf >.
The Cheddar project : a free real time scheduling analyzer