Sie sind auf Seite 1von 16

Sistemas Operacionais Escalonamento de Processos

Francisco Jos da Silva e Silva e


Laboratrio de Sistemas Distribu o dos (LSD) Departamento de Informtica / UFMA a http://www.lsd.ufma.br

19 de agosto de 2010

Francisco Silva (UFMA/LSD)

Sistemas Operacionais

19 de agosto de 2010

1 / 16

FCFS - First-come, First-served

No preemptiva; a Empregada normalmente em sistemas do tipo lote; Gerenciada atravs de uma la utilizando FIFO (First In First Out); e O tempo mdio de espera nesta pol e tica alto. e

Francisco Silva (UFMA/LSD)

Sistemas Operacionais

19 de agosto de 2010

2 / 16

FCFS - First-come, First-served

Processo P1 P2 P3

Burst Time 24 3 3

Tempo mdio de espera: (0 + 24 + 27) 3 = 17 e No entanto, se a ordem de chegada dos processos fosse P2,P3,P1 o tempo mdio de espera seria: (6 + 0 + 3) 3 = 3. e

Francisco Silva (UFMA/LSD)

Sistemas Operacionais

19 de agosto de 2010

3 / 16

SJF - Shortest Job First


Quando a UCP estiver dispon vel, ela alocada ao processo cujo prximo e o burst time seja o menor entre os processos ativos. Exemplo: Processo Burst Time P1 6 P2 8 P3 7 P4 3 Neste caso, o prximo processo a ganhar o processador seria P4; o O tempo mdio de espera : (3 + 16 + 9 + 0) 4 = 7. Usando-se e e FCFS este tempo seria de 10,25.

Francisco Silva (UFMA/LSD)

Sistemas Operacionais

19 de agosto de 2010

4 / 16

SJF - Shortest Job First


Fornece o menor tempo mdio de espera poss entre os processos e vel ativos; Problema: diculdade de se descobrir qual ser o tempo que o a processo que receber a UCP passar ocupando este recurso; a a Normalmente adota-se a mdia dos ultimos CPU burst do processo e como forma de previso. a Pode ser implementada de forma preemptiva ou no: a
Preemptiva:
1

Quando um novo processo entrar para a la dos prontos para executar verica-se se o seu burst menor que o restante do burst do processo e atualmente em execuo; ca Se for, o processo em execuo interrompido para dar lugar ao novo ca e processo.

No preemptiva: deixaria que o processo em execuo terminasse seu a ca CPU burst.


Francisco Silva (UFMA/LSD) Sistemas Operacionais 19 de agosto de 2010 5 / 16

SJF - Shortest Job First

Processo P1 P2 P3 P4

Tempo de Chegada 0 1 2 3

Burst Time 8 4 9 5

A verso preemptiva do algoritmo geraria um tempo mdio de espera a e de ((10 1) + (1 1) + (17 2) + (5 3)) 4 = 6, 5. J na verso no preemptiva ele seria de 7,75. a a a

Francisco Silva (UFMA/LSD)

Sistemas Operacionais

19 de agosto de 2010

6 / 16

Escalonamento por Prioridade


A prioridade normalmente uma faixa de nmeros inteiros como, por e u exemplo, de 0 a 500; Alguns sistemas utilizam o zero como sendo a maior prioridade enquanto outros o utilizam como a menor prioridade; Denindo prioridade:
Internamente: o sistema operacional utiliza valores mensurveis para a denir a prioridade do processo. Utiliza-se, por exemplo, limites de tempo, requisitos de memria, nmero de arquivos abertos, etc. o u Externamente: so aquelas atribu a das por critrios externos ao sistema e operacional como a importncia do processo, o departamento a responsvel por sua execuo, etc. a ca

Problema: postergao indenida, que pode ser gerada por processos ca de alta prioridade que podem impedir que processos pouco prioritrios a sejam executados; Preveno: aging: a prioridade dos processos aumentada ca e a ` medida que eles esperam pela UCP.
Francisco Silva (UFMA/LSD) Sistemas Operacionais 19 de agosto de 2010 7 / 16

Escalonamento por Prioridade

Processo P1 P2 P3 P4 P5

Burst Time 10 1 2 1 5

Prioridade 3 1 3 4 2

Tempo mdio de espera: (6 + 0 + 16 + 18 + 1) 5 = 8, 2. e

Francisco Silva (UFMA/LSD)

Sistemas Operacionais

19 de agosto de 2010

8 / 16

Escalonamento Circular (round-ribon)


Reparte uniformemente o tempo do processador entre todos os processos prontos para execuo; ca Projetada para sistemas de tempo compartilhado; Processos so organizados numa la circular, alocando a cada um a uma fatia de tempo do processador (time slice) Q toda vez que o processo receber a UCP; Quando existirem muitas tarefas ativas e de longa durao no ca sistema, tarefas curtas tero seu tempo de resposta degradado porque a as tarefas longas reciclaro continuamente na la circular, a compartilhando de maneira equitativa o processador com as tarefas curtas; O tempo mdio de espera normalmente alto. e e

Francisco Silva (UFMA/LSD)

Sistemas Operacionais

19 de agosto de 2010

9 / 16

Escalonamento Circular (round-ribon)

Considere o exemplo a seguir no qual todos os processos chegaram no tempo 0: Processo Burst Time P1 24 P2 3 P3 3 Tempo mdio de espera: ((10 4) + 4 + 7) 3 = 5, 66. e

Francisco Silva (UFMA/LSD)

Sistemas Operacionais

19 de agosto de 2010

10 / 16

Escalonamento Circular (round-ribon)

Quanto tempo dar aos processos?


1

Se Q for muito grande, cada processo recebe mais tempo do que necessita para executar de forma que a pol tica de escalonamento circular se degenera a FIFO; Se Q for muito pequena, a troca de contexto se torna uma sobrecarga chegando ao ponto em que o sistema perde mais tempo trocando o processo a ser executado do que executando processos dos usurios. a

Francisco Silva (UFMA/LSD)

Sistemas Operacionais

19 de agosto de 2010

11 / 16

Escalonamento em Mltiplas Filas com Diferentes u Prioridades

Francisco Silva (UFMA/LSD)

Sistemas Operacionais

19 de agosto de 2010

12 / 16

Escalonamento em Mltiplas Filas com Diferentes u Prioridades

Cada la possui seu prprio algoritmo de escalonamento; o Por exemplo, las distintas podem ser utilizadas para processos em background ou foreground. A la foreground pode utilizar o escalonamento circular enquanto que background utiliza o FCFS; Cada la pode possuir prioridade absoluta sobre as las de menor prioridade ou o tempo do processador pode ser compartilhado entre elas. Por exemplo, a la foreground pode receber 80% do tempo do processador enquanto que background recebe 20%.

Francisco Silva (UFMA/LSD)

Sistemas Operacionais

19 de agosto de 2010

13 / 16

Escalonamento em Cascata

No escalonamento em mltiplas las com diferentes prioridades um u processo uma vez atribu a uma la permanece na mesma at seu do e trmino; e No escalonamento em cascata os processos podem ser movido entre las; A idia separar os processos que possuem diferentes caracter e e sticas de uso da UCP; Normamente prioriza processos I/O bound e interativos; Utiliza-se a tcnica do aging para prevenir postergaes indenidas. e co

Francisco Silva (UFMA/LSD)

Sistemas Operacionais

19 de agosto de 2010

14 / 16

Escalonamento em Cascata

Francisco Silva (UFMA/LSD)

Sistemas Operacionais

19 de agosto de 2010

15 / 16

Escalonamento em sistema multiprocessados: Abordagens

Prover uma la de processos prontos para executar para cada processador. Desvantagem: um processador pode car desocupado (por ter sua la vazia) enquanto outros podem estar sobrecarregados com muitos processos. Uma la unica de processos compartilhada por todos os processadores. Nesta abordagem, pode-se seguir dois caminhos:
1

Multiprocessamento simtrico: todos os processadores so responsveis e a a pelo escalonamento de processos. Cada processador examina a la e seleciona um processo para executar. Deve-se tomar cuidado de se sincronizar o uso concorrente da la de processos pelos processadores; Multiprocessamento assimtrico: dene-se um processador como e escalonador criando uma estrutura mestre-escravo.

Francisco Silva (UFMA/LSD)

Sistemas Operacionais

19 de agosto de 2010

16 / 16

Das könnte Ihnen auch gefallen