Escalonamento de processos

12

Click here to load reader

Transcript of Escalonamento de processos

Page 1: Escalonamento de processos

UFRPE/EADLicenciatura em Computação-6P

2011.1Tutor: Rodrigo Lins Rodrigues

Escalonamento de Processos

Aula 4

Page 2: Escalonamento de processos

2

Introdução

O ponto principal do sistema operacional é a multiprogramação;

Múltiplos programas são mantidos na memória;

O escalonamento de processos é a chave para a a multiprogramação;

Principal função é selecionar o job que deve ocupar o processador;

Existem 3 níveis de escalonamento num S.O: escalonamento de longo prazo; escalonamento de curto prazo; escalonamento de entrada/saída.

Page 3: Escalonamento de processos

3

Tipos de Escalonamento

Escalonamento de longo prazo;

Escalonamento de curto prazo;

Escalonamento de entrada e saída.

Page 4: Escalonamento de processos

4

Escalonamento de longo prazo

O escalonador de longo prazo determina que programas podem ser admitidos no sistema para o processamento, controlando o número de jobs na memória;

O fato do escalonador de longo prazo selecionar aquele job não signifca que ele vai ser executado de imediato;

Obs: Um processo é um programa em execução e um job é um programa que foi selecionado para execução, mas ainda não começou a executar

Page 5: Escalonamento de processos

5

Escalonamento de Curto Prazo

O escalonamento de curto prazo tem o objetivo de decidir qual dos jobs deve utilizar o processador e quando isto deve acontecer;

Uma vez admitido, o job torna-se um processo e é adicionado a uma fila no escalonador;

Page 6: Escalonamento de processos

6

Escalonamento de Entrada e Saída

Possui a função de decidir que processo deverá acessar um dispositivo de E/S;

Ex: Se dois processos requerem acesso à impressora, ao mesmo tempo, o S.O precisa decidir qual deles será o próximo a utilizar a impressora.

Page 7: Escalonamento de processos

7

Políticas de Escalonamento

As políticas de escalonamento utilizam algoritmos que aparecem nas versões preemptiva e não preemptiva;

Manter o processador ocupado a maior parte do tempo, balancear o uso da CPU entre processos, privilegiar a execução de aplicações críticas e oferecer tempos de resposta razoáveis para o usuário.

Page 8: Escalonamento de processos

8

Estratégias de escalonamento

Escalonamento não-preemptivo: um processo que entra no processador roda até terminar, sem jamais ser interrompido.

Escalonamento preemptivo: esta estratégia é baseada na atividade de preempção, permite a suspensão temporária da execução de um processo.

Page 9: Escalonamento de processos

9

FIFO (First in First out)

É não preemptivo e baseia-se na estratégia de que o primeiro processo a entrar na fila deverá ser o primeiro a ser atendido.

Esse algoritmo é empregado normalmente em sistemas do tpo lote e, em geral, possui um tempo médio de espera alto.

Page 10: Escalonamento de processos

10

STCF (Shortest Time to Completon First)

Para superar o problema dos altos tempos de espera que o algoritmo FIFO apresenta, foi desenvolvida a política STCF, cuja tradução determina que o job que possui menor tempo, dentre os que estão na fila, será aquele selecionado primeiro.

Page 11: Escalonamento de processos

11

Escalonamento circular (Round Robin)

É a mais comum entre os preemptivos; A cada processo atribui-se um intervalo de

tempo, chamado de fatia de tempo (time-slice), durante o qual ele poderá usar o processador;

Page 12: Escalonamento de processos

12

Escalonamento por prioridade

O escalonamento baseado em prioridades irá selecionar processos que sejam considerados muito prioritários em detrimento aos demais;

Esse tipo de escalonamento pode gerar um problema grave que é o impedimento da execução de processos pouco prioritários.