arquitetura de sistemas operacionais – machado/maia cap. 8 – gerência do processador1...

23
rquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador 1 Arquitetura de Sistemas Arquitetura de Sistemas Operacionais Operacionais Francis Berenger Machado Francis Berenger Machado Luiz Paulo Maia Luiz Paulo Maia Capítulo 8 Capítulo 8 Gerência do Processador Gerência do Processador

Upload: internet

Post on 17-Apr-2015

164 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz

Arq

uit

etu

ra d

e S

iste

mas

Opera

cionais

– M

ach

ado/M

aia

Cap. 8 – Gerência do Processador 1

Arquitetura de Sistemas Arquitetura de Sistemas OperacionaisOperacionais

Francis Berenger MachadoFrancis Berenger MachadoLuiz Paulo MaiaLuiz Paulo Maia

Capítulo 8Capítulo 8Gerência do ProcessadorGerência do Processador

Page 2: Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz

Arq

uit

etu

ra d

e S

iste

mas

Opera

cionais

– M

ach

ado/M

aia

Cap. 8 – Gerência do Processador 2

Sumário

• Introdução• Funções Básicas• Critérios de escalonamento• Escalonamentos não-preemptivos e

preemptivos• Escalonamento FIFO• Escalonamento SJF• Escalonamento cooperativo• Escalonamento circular• Escalonamento por prioridades• Escalonamento circular com prioridades

Page 3: Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz

Arq

uit

etu

ra d

e S

iste

mas

Opera

cionais

– M

ach

ado/M

aia

Cap. 8 – Gerência do Processador 3

Sumário

• Escalonamento por múltiplas filas• Escalonamento por múltiplas filas com

realimentação• Política de Escalonamento em Sistemas de

Tempo Compartilhado • Política de Escalonamento em Sistemas de

Tempo Real

Page 4: Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz

Arq

uit

etu

ra d

e S

iste

mas

Opera

cionais

– M

ach

ado/M

aia

Cap. 8 – Gerência do Processador 4

Introdução

• Escalonamento

Estado d eEsp era

Estado d eExecu çã o

Estado d ePronto

Esca lo namento

Page 5: Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz

Arq

uit

etu

ra d

e S

iste

mas

Opera

cionais

– M

ach

ado/M

aia

Cap. 8 – Gerência do Processador 5

Funções Básicas

• Manter a UCP ocupada a maior parte do tempo

• Balancear o uso da UCP entre processos• Privilegiar a execução de aplicações críticas• Maximizar o throughput• Oferecer tempos de resposta razoáveis para

usuários interativos• Implementada pelo scheduler e dispatcher• Processos – unidades de alocação de

recursos• Threads – unidades de escalonamento

Page 6: Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz

Arq

uit

etu

ra d

e S

iste

mas

Opera

cionais

– M

ach

ado/M

aia

Cap. 8 – Gerência do Processador 6

Critérios de Escalonamento

• Utilização do processador• Throughput• Tempo de Processador / Tempo de UCP• Tempo de Espera• Tempo de Turnaround• Tempo de Resposta

Page 7: Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz

Arq

uit

etu

ra d

e S

iste

mas

Opera

cionais

– M

ach

ado/M

aia

Cap. 8 – Gerência do Processador 7

Escalonamentos Não-Preemptivo e Preemptivo

• Preempção – possibilidade do SO interromper um processo em execução e substituí-lo por outro

• Escalonamento não-preemptivo• Escalonamento preemptivo

Page 8: Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz

Arq

uit

etu

ra d

e S

iste

mas

Opera

cionais

– M

ach

ado/M

aia

Cap. 8 – Gerência do Processador 8

Escalonamento FIFO

• Escalonamento First-In-First-Out

U C P

Estado d eC r iação

Estado d eEsp era

Fila do s pro cesso s n o estad o d e Pron to

Estado d eTérm ino

Page 9: Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz

Arq

uit

etu

ra d

e S

iste

mas

Opera

cionais

– M

ach

ado/M

aia

Cap. 8 – Gerência do Processador 9Arq

uite

tura

de

Sis

tem

as O

pera

cion

ais

– M

acha

do/M

aia

Escalonamento FIFO

• Exemplo

Processo A

Processo B

Processo C

10 14 17

Processo A

Processo B

Processo C

4 7 17 u .t.

u .t.

ProcessoTem p o d e

p rocessa do r(u .t.)

A

B

C

10

4

3

Page 10: Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz

Arq

uit

etu

ra d

e S

iste

mas

Opera

cionais

– M

ach

ado/M

aia

Cap. 8 – Gerência do Processador 10Arq

uite

tura

de

Sis

tem

as O

pera

cion

ais

– M

acha

do/M

aia

Escalonamento SJF

• Escalonamento Shortest-Job-First

Processo A

Processo B

Processo C

3 7 17 u .t.

Page 11: Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz

Arq

uit

etu

ra d

e S

iste

mas

Opera

cionais

– M

ach

ado/M

aia

Cap. 8 – Gerência do Processador 11

Escalonamento Cooperativo

• Processo em execução libera voluntariamente a UCP

• Verifica a fila de mensagens periodicamente

• Podem ocorrer problemas• Exemplo: primeiros sistemas MS-Windows

Page 12: Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz

Arq

uit

etu

ra d

e S

iste

mas

Opera

cionais

– M

ach

ado/M

aia

Cap. 8 – Gerência do Processador 12

Escalonamento Circular

Preem p ção po r tem p o

U C P

Estado d eC r ia çã o

Estado d eEsp era

Fila do s pro cesso s n o estad o d e Pron to

Estado d eTérm ino

Page 13: Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz

Arq

uit

etu

ra d

e S

iste

mas

Opera

cionais

– M

ach

ado/M

aia

Cap. 8 – Gerência do Processador 13

Escalonamento Circular

• Exemplo

Processo A

Processo B

Processo C

2 4 17 u .t.6 8 10 11

Page 14: Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz

Arq

uit

etu

ra d

e S

iste

mas

Opera

cionais

– M

ach

ado/M

aia

Cap. 8 – Gerência do Processador 14

Escalonamento Circular

• Escalonamento circular virtual

Preem p ção po r tem p o

U C P

Estado d eC r iação

Fila do s pro cesso s n o estad o d e Pron to

Estado d eTérm ino

Estado d eEsp era

Fila au xi lia r

Page 15: Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz

Arq

uit

etu

ra d

e S

iste

mas

Opera

cionais

– M

ach

ado/M

aia

Cap. 8 – Gerência do Processador 15

Escalonamento por Prioridades

U C P

Estado d eTérm ino

Fila s do s p ro cesso s n o estad o d e Pro n to

Pr io r id ad e P1

Pr io r id ad e P2

Pr io r id ad e Pn

Estado d eC r iação

Estado d eEsp era

Preem p ção po r p r io r id ad e

Page 16: Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz

Arq

uit

etu

ra d

e S

iste

mas

Opera

cionais

– M

ach

ado/M

aia

Cap. 8 – Gerência do Processador 16

Escalonamento por Prioridades

• Exemplo

Processo A

Processo B

Processo C

3 13 17 u .t.

ProcessoTem p o d e

p rocessa do r(u .t.)

A

B

C

10

4

3

Pr io r id ad e

2

1

3

Page 17: Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz

Arq

uit

etu

ra d

e S

iste

mas

Opera

cionais

– M

ach

ado/M

aia

Cap. 8 – Gerência do Processador 17

Escalonamento Circular com Prioridades

U C P

Estado d eTérm ino

Fila dos processos n o estad o d e Pron to

Pr io r id ad e P1

Pr io r id ad e P2

Pr io r id ad e Pn

Estado d eC r iação

Estado d eEsp era

Preem p ção po r tem p o o u pr io rida de

Page 18: Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz

Arq

uit

etu

ra d

e S

iste

mas

Opera

cionais

– M

ach

ado/M

aia

Cap. 8 – Gerência do Processador 18

Escalonamento por Múltiplas Filas

U C P

Fila de p rocessos d o sistem a

Fila de p rocessos in tera tivos

Fila de p rocessos b a tch

M a io rp rio r id ade

M eno rp rio r id ade

Page 19: Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz

Arq

uit

etu

ra d

e S

iste

mas

Opera

cionais

– M

ach

ado/M

aia

Cap. 8 – Gerência do Processador 19

Escalonamento por Múltiplas Filas com Realimentação

U C P

Fila 1 (FIFO A da ptad o )

Preem p ção po r tem p o

Fila 2 (FIFO A da ptad o )

Preem p ção po r tem p o

Fila 3 (FIFO A da ptad o )

Preem p ção po r tem p o

Fila n (C ircu la r)

Preem p ção po r tem p o

Men

or

Prio

rid

ad

eM

aio

rPr

iori

da

de

Ma

ior

fati

ad

e te

mp

oM

eno

r fa

tia

de

tem

po

Page 20: Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz

Arq

uit

etu

ra d

e S

iste

mas

Opera

cionais

– M

ach

ado/M

aia

Cap. 8 – Gerência do Processador 20

Políticas em Sistemas de Tempo Compartilhado

• Escalonamento FIFO (exemplo)

Pro cesso A

Pro cesso B

u .t.277

E/S

de

A

11

E/S

de

B

19

E/S

de

A

21

E/S

de

B

Pro cessoTem p o d e

p rocessa do r(u .t.)

A

B

21

6

C aracter ística

C PU - b ou nd

I / O - b ou nd

Page 21: Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz

Arq

uit

etu

ra d

e S

iste

mas

Opera

cionais

– M

ach

ado/M

aia

Cap. 8 – Gerência do Processador 21

Políticas em Sistemas de Tempo Compartilhado

• Escalonamento circular (exemplo)

Pro cessoTem p o d e

p rocessa do r(u .t.)

A

B

15

10

C aracter ística

C PU - b ou nd

I / O - b ou nd

Pro cesso A

Pro cesso B

u .t.

Pree

mp

ção

po

rte

mp

o d

e A

5

E/S

de

B

9

E/S

de

A

11

E/S

de

B

13

Pree

mp

ção

po

rte

mp

o d

e A

18

E/S

de

B

20

E/S

de

A

23 25

E/S

de

B

27

UC

P liv

re

Page 22: Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz

Arq

uit

etu

ra d

e S

iste

mas

Opera

cionais

– M

ach

ado/M

aia

Cap. 8 – Gerência do Processador 22

Políticas em Sistemas de Tempo Compartilhado

• Escalonamento circular com prioridades (exemplo)

Pro cesso A

Pro cesso B

u .t.

E/S

de

B

4

Pre

emp

ção

po

rp

rio

rid

ad

e d

e A

6E/

S d

e B

8

Pre

emp

ção

po

rp

rio

rid

ad

e d

e A

12

E/S

de

B

14

E/S

de

A

15 17

Pre

emp

ção

po

rp

rio

rid

ad

e d

e A

18

E/S

de

B

20

Pre

emp

ção

po

rp

rio

rid

ad

e d

e A

24

E/S

de

B

27

UC

P liv

re

Pro cessoTem p o d e

p rocessa do r(u .t.)

A

B

12

13

C aracter ística

C PU - b ou nd

I / O - b ou nd

Pr io r id a d e

Ba ixa

A lta

Page 23: Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 8 – Gerência do Processador1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz

Arq

uit

etu

ra d

e S

iste

mas

Opera

cionais

– M

ach

ado/M

aia

Cap. 8 – Gerência do Processador 23

Políticas em Sistemas de Tempo Real

• Tempos de respostas rígidos• Aplicações de controle de processos• Utiliza prioridades estáticas• Não utiliza fatias de tempo• Exemplo: OpenVMS