Sistemas Operacionais

Escalonamento de processos

Introdução

Uma política de escalonamento é a estratégia  do sistema para escolher quais processos  devem ser executados a cada instante

 

 

2

minimizar o tempo que cada processo espera para  ser executados (latência).Introdução ● Uma política de escalonamento é a estratégia  do sistema para escolher quais processos  devem ser executados a cada instante Essa política deve satisfazer critérios de: ● ● maximizar o número de processos/tempo  (desempenho).   3 ● ●   . evitar o adiamento indefinido.

Níveis de escalonamento ● Escalonamento de alto nível ● Determina quais jobs serão admitidos pelo sistema. Determina o grau de multiprogramação: número de  processos a cada instante. Se admitidos tornam­se processos ou grupos de  processos. ● ●     4 .

 pois os processos podem ser  suspensos para cumprir metas de desempenho. Funciona como um buffer entre a admissão e a  designação de processadores para um processo. ●     5 .Níveis de escalonamento ● Escalonamento de nível intermediário ● Determina se um processo terá permissão de  disputar processador.

Podem ter uma política de prioridades (importância  de um processo). Designa o processador (se multiprocessado).Níveis de escalonamento ● Escalonamento de baixo nível ● Determina qual processo ativo será executado  quando o processador estiver disponível. ● ● ●     6 . Ele reside na memória principal o tempo todo.

o sistema é capaz de interromper a execução de um  processo e reconduzi­lo ao processador em outro  momento. não  preemptivo ● Não preemptivo:  ● uma vez que o sistema conduz um processo a  execução.Escalonamento preemptivo vs. ● Preemptivo:  ●     7 . ele não poderá retirar o processo de  execução.

Prioridades ● Prioridades quantificam a importância relativa  dos processos     8 .

Prioridades ● Prioridades quantificam a importância relativa  dos processos São de dois tipos: ● ● Estáticas: permanecem fixas Dinâmicas: são alteradas de acordo com as  mudanças do ambiente ●     9 .

  10 ●   . não propiciam a adaptação da execução as mudanças  do ambiente (reduzindo latência e aumentando  rendimento). ● ● ● Dinâmicas:  ● reduzem a latência de processos que estão retendo  recursos.Prioridades ● Estáticas: ● fáceis de implementar. sobrecarga baixa  (uso dos recursos na realização das  tarefas dos processos). implementação mais complexa.

Maximizar o número de processos interativos  que estão recebendo tempos de resposta  “aceitáveis”.Objetivos do escalonamento ● Maximizar o rendimento. Minimizar sobrecarga.   11 ● ● ● ● ●   . Impor as prioridades. Maximizar a utilização de recursos. Evitar o adiamento indefinido.

Critérios para o escalonamento ● Um processo pode ser orientado a: ● Processador: usa todo o tempo disponibilizado a  ele para executar suas tarefas (CPU bound). E/S: usa brevemente o processador antes de gerar  E/S e então o devolve (I/O bound). ●     12 .

Interativo: requer frequentes interações com o  usuário.Critérios para o escalonamento ● Um processo pode ser orientado a: ● Processador: usa todo o tempo disponibilizado a  ele para executar suas tarefas (CPU bound). E/S: usa brevemente o processador antes de gerar  E/S e então o devolve (I/O bound). Lote: executa sem interagir com o usuário.   13 ● ● O tipo do processo pode ser: ● ●   .

Algoritmos de escalonamento ● FIFO – First in First out Round Robin – fila circular Short Process First (SPF) Filas multinível com retro­alimentação ● ● ●     14 .

Algoritmos de escalonamento ● FIFO – First in First out Job 4 Job 3 Job 2 Job 1 CPU     15 .

processos longos fazem processos curtos esperar. processos não importantes fazem processos  importantes esperar.   16 ● ● ● ● ●   . não é empregado como esquema mestre. não é recomendado para processos interativos.Algoritmos de escalonamento ● FIFO – First in First out ● todos os processos são tratados igualmente. processos de mesma prioridade são despachados  na ordem FIFO.

Algoritmos de escalonamento ● Round Robin – fila circular 4 3 2 Preempção por tempo Bloqueio ou espera 1 CPU     17 .

 varia de 10 a 200ms.   18 ●   . empregado em ambientes interativos. não é empregado como esquema mestre. varia ser for background o foreground. Quantum ● ● ● ● ● Linux: padrão 100ms. em geral  20ms.Algoritmos de escalonamento ● Round Robin – fila circular ● FIFO com tempo limitado (quantum). preempção. Windows XP: padrão específico da arquitetura.

+ TEn ) TME =  n ou    TME =  (∑i =1 TEi ) n     n 19 ..Algoritmos de escalonamento ● Short Process First (SPF) ● Menor tempo estimado pelo ● usuário ou sistema ● ● não há preempção ● O tempo médio de espera (TME) é calculado  da seguinte forma: (TE1 + TE2 + ..

Algoritmos de escalonamento ● Short Process First (SPF) ● O tempo de espera (TE) de cada job é o tempo que  ele levou para começar a processar: JOB 4 JOB 3 JOB 2 JOB 1 0 TE1=0 3s 3 TE2=3 TE3=8   3s 1s 5s 8 9 TE4=9 12 tempo   TME = (0+3+8+9)/4 = 5s 20 .

Algoritmos de escalonamento ● Short Process First (SPF) JOB 4 JOB 3 JOB 2 JOB 1 0 1 3s 4 TE3=4 7 TE4=7   3s 1s 5s 12 tempo TE1=0 TE2=1   TME = (0+1+4+7)/4 = 3s 21 .

Algoritmos de escalonamento ● Filas multinível Alta prioridade: (FIFO) Média prioridade: (Circular) Baixa prioridade: (FIFO) CPU     22 .

Algoritmos de escalonamento ● Filas multinível com retro­alimentação ● Alta prioridade (FIFO adaptado) Preempção por tempo Menor tempo (FIFO adaptado) Preempção por tempo Preempção por tempo (Circular) Baixa prioridade Maior tempo     23 .

processos que devolvem o processador antes do  término do quantum permanecem no mesmo nível. 24   ● ● ● ●   . processos que expiram o quantum vão para fila de  nível mais baixo. sistemas aumentam o quantum a medida que  passam a execução para filas de mais baixo nível.Algoritmos de escalonamento ● Filas multinível com retro­alimentação ● Auxilia o processo de reconhecimento do  comportamento de um processo. processos entram na fila de mais alto nível.

Uma requisição de E/S retira o processo da rede de  filas (pronto). São ideais para separa processos em categorias  (identificar se é orientado a processador ou E/S).Algoritmos de escalonamento ● Filas multinível  com retro­alimentação ● Favorecem processos orientados a E/S ou que  precisam de pequenos surtos de tempo. O quantum da primeira fila é grande o bastante  para que processo orientados a E/S façam sua  requisição. Processos podem subir de nível a medida de    25 ● ● ●   ● .

Tanembaum.br/~asc/livro/matdidatico.  Porto Alegre: Instituto de Informática da UFRGS.  Rio de Janeiro: Ed. Sistemas Operacionais  Modernos.Referências ● Silberschatz.html. Galvin.  Acesso em: 10/02/2003. Peter. Andrew S.inf. Campus. Gagne. 1995.  Sistemas operacionais: conceitos e aplicações. Disponível on­line em:  http://www.  2001. Oliveira.    26 ● ●   . 2000.ufrgs. Carissimi. Abraham. Rio de Janeiro: LTC. Greg. Sistemas Operacionais. Toscani.

Sign up to vote on this title
UsefulNot useful