Você está na página 1de 11

ESCALONAMENTO EM SISTEMAS DE TEMPO REAL

COMO DEVE SER O ESCALONAMENTO DE DIVERSAS TAREFAS ENVOLVIDAS EM UM SISTEMA DE TEMPO REAL? ATRAVS DO ESCALONAMENTO DE TAREFAS, SE PLANEJA E ORGANIZA FORMAS PARA AS TAREFAS ATENDEREM SEUS DEADLINES, REQUISITO BSICO PARA ESSE TIPO DE PROCESSAMENTO.

OBJETIVO DO ESCALONAMENTO: EXECUO DAS TAREFAS CR TICAS !"#ARD"$, EM PRIMEIRO LUGAR. PARA AS TAREFAS NO CR TICAS, TANTO QUANTO FOR POSS VEL, TENTA%SE TER SEUS TEMPOS DE RESPOSTA MINIMIZADOS.

LEMBRANDO: AS TAREFAS TEMPORALMENTE CR TICAS PODEM SER DIVIDIDAS EM PERI&DICAS E NO PERI&DICAS. UMA TAREFA NO PERI&DICA TEM ASSOCIADO UM DEADLINE PARA INICIAR OU TERMINAR !OU AMBOS$.

PARA UMA TAREFA PERI&DICA, A RESTRIO ADICIONAL CONSISTE EM CADA INST'NCIA EXECUTAR UMA (NICA VEZ DENTRO DO RESPECTIVO PER ODO.

A DEFINIO DA SEQ)*NCIA DE EXECUO DAS TAREFAS !ESCALONAMENTO$ PODE SER REALIZADA ESTTICA OU DINAMICAMENTE.

O ESCALONAMENTO ESTTICO DECIDIDO EM TEMPO DE COMPILAO, POIS TODAS AS TAREFAS ENVOLVIDAS SO CON#ECIDAS, BEM COMO SEUS DEADLINES E PERIODICIDADES. O ESCALONAMENTO DIN'MICO DECIDIDO EM TEMPO DE EXECUO, POIS NO SE CON#ECE DE ANTEMO QUAIS SO AS CARACTER STICAS DAS TAREFAS OU SUA QUANTIDADE, QUE MUDAM NO TEMPO.

UM ALGORITMO DE ESCALONAMENTO ESTTICO SE AS PRIORIDADES PARA AS TAREFAS SO ATRIBU DAS UMA (NICA VEZ, ANTES DA EXECUO DAS TAREFAS E NO SO MAIS ALTERADAS DURANTE A EXECUO. UM ALGORITMO DE ESCALONAMENTO DIN'MICO SE AS PRIORIDADES DAS TAREFAS SO DETERMINADAS EM TEMPO DE EXECUO, PODENDO SER ALTERADAS DE ACORDO COM A EVOLUO DO SISTEMA.

NA PRTICA, A MAIOR PARTE DOS SISTEMAS DE TEMPO REAL ENVOLVE UM N(MERO DE TAREFAS QUE PODE SER ESCALONADO ESTATICAMENTE, BEM COMO OUTRO N(MERO DE TAREFAS QUE EXIGE ESCALONAMENTO DIN'MICO.

FUNO DE UM ESCALONADOR
DETERMINAR PARA UM DADO CONJUNTO DE TAREFAS:
+ SE A ORDEM DE EXECUO DAS TAREFAS EXISTE. + SE EXISTIR, ENTO DEFINIR QUAL ESSA ORDEM, DE TAL

MANEIRA QUE AS RESTRI,ES DE TEMPO, DISTRIBUIO, PRECED*NCIA, COMUNICAO E RECURSOS DAS TAREFAS SEJAM SATISFEITAS. OBJETIVOS:
+ GARANTIR QUE TAREFAS COM R GIDAS RESTRI,ES DE

TEMPO SATISFAAM SEUS DEADLINES.


+ OBTER UM ALTO GRAU DE UTILIZAO DE RECURSOS PARA

TAREFAS COM DEADLINES.


+ FORNECER BONS TEMPOS MDIOS DE RESPOSTA PARA

TAREFAS QUE NO POSSUEM DEADLINES.


+ GARANTIR A ESTABILIDADE EM MOMENTOS DE

SOBRECARGA TRANSIT&RIA DO SISTEMA. UMA SOLUO &TIMA BASTANTE DIF CIL E -S VEZES COMPUTACIONALMENTE INTRATVEL !NP DIF CIL$. HEURSTICAS SO NECESSRIAS PARA:
+ OU PROVAR QUE O ESCALONAMENTO NO POSS VEL, + OU AC#AR UMA SEQ)*NCIA DE ESCALONAMENTO, DESDE

QUE SEJA FCIL FAZ*%LO,

FATOR DE UTILIZAO
A TAXA DE GARANTIA O N(MERO TOTAL DE TAREFAS GARANTIDAS DIVIDIDO PELO N(MERO DE TAREFAS QUE C#EGAM. O FATOR DE UTILIZAO PARA UMA TAREFA I DEFINIDO POR:

. / E!0$ 1 T!0$

E O TEMPO DE EXECUO, T A PERIODICIDADE E 0 INDICA QUAL A TAREFA . CORRESPONDE - FRAO DE TEMPO DE PROCESSADOR GASTO NA EXECUO DA TAREFA.

CONDIO NECESSRIA PARA QUE UM CONJUNTO DE TAREFAS DINMICAS POSSA SER ESCALONADO: O FATOR DE UTILIZAO DO CONJUNTO NO SEJA MAIOR QUE O N(MERO DE PROCESSADORES DISPON VEIS.

EARLIEST-DEADLINE-FIRST (EDF)
EDF UM ALGORITMO DIN'MICO E CENTRALIZADO !MONOPROCESSADO$ QUE:
+ TRATA DE TAREFAS PERI&DICAS. + USA PREEMPO SOBRE TAREFAS. + AS TAREFAS NO APRESENTAM RESTRI,ES DE

PRECED*NCIA OU DE COMUNICAO, E TAMBM NO NECESSITAM DE RECURSOS ESPEC FICOS PARA EXECUTAR, OU SEJA, SO INDEPENDENTES ENTRE SI.
+ O DEADLINE D DE CADA TAREFA IGUAL AO FIM DE SEU

PER ODO T, CONSIDERANDO O MOMENTO DE IN CIO A.


+ O TEMPO DE EXECUO E MXIMO REQUERIDO

CONSTANTE E CON#ECIDO A PRIORI.


+ O TEMPO NECESSRIO PARA TROCA DE CONTEXTOS PODE

SER IGNORADO.
+ P CORRESPONDE AO MOMENTO EM QUE A TAREFA EST

PRONTA PARA INICIAR SUA EXECUO.

PRIORIDADES SO ASSOCIADAS -S TAREFAS DE ACORDO COM SEUS DEADLINES. DEADLINE MAIS PR&XIMO, PRIORIDADE MAIS ALTA. OS PER ODOS DAS TAREFAS PODEM MUDAR A QUALQUER MOMENTO, OU SEJA, AS PRIORIDADES PODEM MUDAR. O FATOR DE UTILIZAO DO CONJUNTO DE TAREFAS .: . / SOMAT&RIA !E!I$ 1 T!I$$ 2 3, I CORRESPONDENDO A CADA TAREFA DO CONJUNTO A SER ESCALONADO. !PORQUE O RESULTADO 2 3?$

EXEMPLO DE UM ESCALONAMENTO EDF


SUPONDO DUAS TAREFAS A E B

E A B 34 56

T 54 64

D 54 64

E % TEMPO DE EXECUO T % PER ODO D 7 DEADLINE

!VERIFICAR O FATOR DE UTILIZAO$

EM T / 4, AS TAREFAS A E B INICIAM O SEU PRIMEIRO PER ODO. COMO A TAREFA A TEM DEADLINE CORRENTE MAIS PR&XIMO !D / 54$, A ESCALONADA E EXECUTADA AT T / 34, QUANDO COMPLETADA.

EM T/34, SENDO B A (NICA TAREFA PRONTA, ESTA ESCALONADA E EXECUTADA AT T / 54, QUANDO COMEA O NOVO PER ODO DE A, OU SEJA., APARECE NOVA INST'NCIA DE A. COMO # PREEMPO E O DEADLINE DA NOVA A !D / 84$ MAIS PR&XIMO QUE O DA TAREFA B CORRENTE !D / 64$, B PERDE A CPU PARA A.

A PARTIR DE T / 54, A INST'NCIA DE A EXECUTADA AT T / 94, SENDO COMPLETADA. DE T / 94 A T / 84, B VOLTA A SER EXECUTADA, QUANDO C#EGA A PR&XIMA INST'NCIA DE A. MAS, B POR TER DEADLINE MAIS PR&XIMO !D / 64$ CONTINUA EM EXECUO AT T / 86, QUANDO COMPLETADA.

EM T / 86, A NOVA INST'NCIA DE A VOLTA A SER ESCOLANADA E PERMANECE EM EXECUO AT T / 66, MESMO QUANDO NOVA INST'NCIA DE B APARECE EM T / 64.

TENTE EXPLICAR O PORQUE DA TAREFA B SER EXECUTADA APENAS AT T / :4 E COMPLETE O ESCALONAMENTO AT T / 344.

O QUE OCORRE A PARTIR DE T / 344, O M NIMO M(LTIPLO COMUM DOS PER ODOS DE A E B?

E !"#$#%&' 3. V;<= <;>?0@ABC DEA ;? CFG;B0HI;? @A A?<CF;>CIA>H; J0?H;? >C @0?<0KF0>C @A S0?HAIC? OKABC<0;>C0? ?L; CKF0<MJA0? C; KB;NFAIC @A A?<CF;>CIA>H; @A HCBAOC? AI ?0?HAIC? @A HAIK; BACF? JE?H0O0DEA. 5. C;>?0@ABC>@; C? @0OABA>HA? BA?HB0PQA? DEA K;@AI ?A CKF0<CB R? HCBAOC? @A EI ?0?HAIC @A HAIK; BACF !@AC@F0>A?, KAB0;@0<0@C@A A HAIK; IMS0I; @A ASA<EPL; @A EIC HCBAOC, CFTI @A KBA<A@=><0C, <;IE>0<CPL;, BA<EB?;? A KBAAIKPL;$, DECF ?AB0C ; GBCE @A <;IKFAS0@C@A @A EI CFG;B0HI; @A A?<CF;>CIA>H; KCBC A??A H0K; @A KB;<A??CIA>H; !FAINBCB @A C>MF0?A @A CFG;B0HI;?$? 9. C;>?0@ABC>@; ; CFG;B0HI; EDF, @0?<EH0@; <;I; ?;FEPL; KCBC ; A?<CF;>CIA>H; @; NBCP; @; @0?<; @A>HB; @A EI @B0JAB, C 0@T0C @A CHA>@AB ; @AC@F0>A IC0? KBUS0I; K;@AB0C ?AB E?C@C KCBC A?<CF;>CB HCBAOC? AI EI ?0?HAIC @A HAIK; BACF? 8. D= EI ASAIKF; @A ?0?HAIC @A HAIK; BACF DEA K;??C HAB ?EC? HCBAOC? A?<CF;>C@C? <;I EI CFG;B0HI; EDF ; DECF KABI0HC C KBAAIKPL; @A HCBAOC? AI ASA<EPL; <;I C <VAGC@C @A EIC HCBAOC <;I @AC@F0>A IC0? KB0;B0HMB0;. 6. C;I; T K;??WJAF ?CNAB ?A @AHABI0>C@; <;>XE>H; @A HCBAOC? @0>YI0<C? T A?<CF;>MJAF? :. P;BDEA ?A E?CI VAEBW?H0<C? >;? CFG;B0HI;? @A A?<CF;>CIA>H; KCBC HAIK; BACF?

Você também pode gostar