Aula 13 - Algoritmos de Escalonamento

849 visualizações

Publicada em

Sistemas Operacionais: Algoritmos de Escalonamento

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
849
No SlideShare
0
A partir de incorporações
0
Número de incorporações
21
Ações
Compartilhamentos
0
Downloads
23
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Aula 13 - Algoritmos de Escalonamento

  1. 1. CONCEITOS  Escalonador: Parte do sistema responsável por decidir quais processos em estado de pronto, irão executar primeiro.  Escalonamento: Procedimento que utiliza rotinas do sistema operacional para definir qual processo irá ser executado pela CPU.
  2. 2. Para que um processo não execute tempo demais, praticamente todos os computadores possuem um mecanismo de relógio (clock) que causa uma interrupção periodicamente.
  3. 3. FCFS –FIRST COME FIRST SERVER (Primeiro a chegar é o Primeiro a ser servido) E FIFO – FIRST IN FIRST OUT (Primeiro a entrar é o Primeiro a sair)
  4. 4.  Algoritmo não-preemptivo  A CPU é atribuída aos processos na ordem em que eles a requisitam. Basicamente há uma fila única de processos prontos.  Quando o primeiro processo chega, é iniciado imediatamente e autorizado a executar. A medida que outros processos chegam, vão sendo encaminhados para o fim da fila.  Quando um processo é bloqueado, ele é automaticamente levado para o fim da fila.
  5. 5. Scheduling por Prioridades ou HPF (Highest Priority First)  É uma variante do escalonamento FIFO onde os processos em espera são organizados numa fila segundo sua prioridade. Uma prioridade é associada a cada processo, e a CPU é alocada ao processo de prioridade mais alta.  Processos de prioridade iguais são agendados na ordem FCFS.  O algoritmo SJF é simplesmente um algoritmo de prioridades em que a prioridade é o inverso do próximo pico da CPU, ou seja, quanto maior o pico de CPU, menor a prioridade , e vice-versa.
  6. 6. SJF - JOB MAIS CURTO PRIMEIRO  Algoritmo não – preemptivo.  Quando vários jobs (tarefas) igualmente importantes estiverem postados na fila à espera de serem iniciados, o escalonador escolhe o job mais curto primeiro.  Quando a CPU está disponível, ela é atribuída ao processo que tem o pico mais curto. Se os processos forem iguais o scheduling FCFS será usado para resolver o impasse.
  7. 7. EXERCÍCIO PRÁTICO  Considere o conjunto de processos a seguir que chegam no momento 0, com o intervalo do pico de CPU dado em milissegundos. Encontre o tempo de espera de cada processo, e o tempo médio de espera de todos.  PROCESSO DURAÇÃO DO PICO  P1 24  P2 3  P3 3
  8. 8. SCHEDULING ROUD- ROBIN  O Algoritmo Round-Robin (RR) foi projetado especialmente para sistemas de tempo compartilhado.  Ele é semelhante ao Scheduling FCFS, mas a preempção é adicionada para permitir que o sistema se alterne entre os processos.  Uma pequena unidade de tempo chamada quantum de tempo é definida.  A fila de prontos é tratada como uma fila circular. O Scheduler da CPU percorre a fila de prontos, alocando a CPU para cada processo por um intervalo de até um quantum de tempo.
  9. 9.  Algoritmo preemptivo.  Para implementar o scheduling RR, a fila de prontos é formada por uma fila FIFO de processos. O Scheduler define um timer para interromper após um quantum de tempo e despacha o processo.  Neste processo, uma entre duas coisas pode acontecer: o processo ter um pico de CPU acima do quantum determinado; ou o processo ter um pico de CPU abaixo do quantum determinado.
  10. 10. Determine a cronologia de funcionamento de três processos com o algoritmo Round Robin, em que a duração de P0 é 6, P1 é 8 e P2 é 10. O período de quantum para cada processo é de 3 segundos. EXERCÍCIO PRÁTICO

×