arquitetura de sistemas operacionais · operacionais fabiano utiyama capítulo 8 gerência do...

34
Arquitetura de Sistemas Arquitetura de Sistemas Operacionais Operacionais Operacionais Operacionais Fabiano Utiyama Fabiano Utiyama Capítulo 8 Capítulo 8 Gerência do Processador Gerência do Processador 8/1

Upload: ngokhanh

Post on 08-Nov-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

Arquitetura de Sistem as Arquitetura de Sistem as OperacionaisOperacionaisOperacionaisOperacionais

Fabiano Ut iyam aFabiano Ut iyam a

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

8/1

I nt rodução

• Com o surgimento dos sistemas multiprogramáveis, nos quais múltiplos multiprogramáveis, nos quais múltiplos processos poderiam permanecer na memória principal compartilhando o memória principal compartilhando o uso da UCP– a gerência do processador tornou-se uma – a gerência do processador tornou-se uma

das atividades mais importantes em um sistema operacional

8/2

I nt rodução

• A partir do momento em que diversos processos podem estar no estado de processos podem estar no estado de pronto, critérios devem ser estabelecidos para determinar qual estabelecidos para determinar qual processo será escolhido para fazer uso do processadordo processador

• Os critérios utilizados para esta seleção compõem a chamada polít ica de compõem a chamada polít ica de escalonam ento

8/3

Escalonam ento

Estado deExecução

EscaEscalonam

ento

Estado deEspera

Estado dePronto

Escalonamento

Escalonamento

8/4

Funções Básicas

• A política de escalonamento de um sistema operacional tem diversas sistema operacional tem diversas funções básicas– Manter o processador ocupado a maior – Manter o processador ocupado a maior

parte do tempo– Balancear o uso da UCP entre processos– Privilegiar a execução de aplicações críticas– Maximizar o throughput do sistema

(produtividade)(produtividade)– Oferecer tempos de resposta razoáveis

para usuário interativos

8/5

para usuário interativos

Funções Básicas

• A rotina do sistema operacional que tem como principal função tem como principal função implementar os critérios da política de escalonamento é denominada escalonamento é denominada escalonador (sheduler)

• Outra rotina importante na gerência do • Outra rotina importante na gerência do processador é conhecida como dispatcher, responsável pela troca de dispatcher, responsável pela troca de contexto dos processos após o escalonador determinar qual processo deve fazer o uso do processador

8/6

deve fazer o uso do processador

Critér ios de Escalonam ento

• Política de escalonamento– Utilização do processador– Utilização do processador

•O processador deve permanecer a maior parte do tempo ocupadoparte do tempo ocupado

– Throughput•O número de processos executados em •O número de processos executados em um determinado intervalo de tempo. Quanto maior o throughput, maior o número de tarefas executadas em número de tarefas executadas em função do tempo

8/7

Critér ios de Escalonam ento

– Tempo de processador / Tempo de UCP•É o tempo que um processo leva no •É o tempo que um processo leva no estado de execução durante seu processamento

– Tempo de espera– Tempo de espera•É o tempo total que um processo permanece na fila de pronto durante seu permanece na fila de pronto durante seu processamento, aguardando para ser executadoexecutado

8/8

Critér ios de Escalonam ento

– Tempo de Turnaround•É o tempo que um processo leva desde •É o tempo que um processo leva desde a sua criação até seu término

– Tempo de Resposta•É o tempo decorrido entre uma requisição ao sistema ou à aplicação e o instante em que a resposta é exibidainstante em que a resposta é exibida

8/9

Escalonam entos

• As políticas de escalonamento podem ser classificadas segundo a ser classificadas segundo a possibilidade de o sistema operacional interromper um processo em execução interromper um processo em execução e substituí-lo por um outro, atividade esta conhecida como preempçãoesta conhecida como preempção

8/10

Escalonam entos

• Não-Preemptivos– Processamento batch– Processamento batch– Neste tipo de escalonamentoo, quando um

processo está em execução nenhum evento externo pode ocasionar a perda do evento externo pode ocasionar a perda do uso do processador

– O processo sai do estado de execução – O processo sai do estado de execução caso:•Termine seu processamento•Execute instruções do próprio código •Execute instruções do próprio código que ocasionem uma mudança para o estado de espera

8/11

estado de espera

Escalonam entos

• Preemptivos– O sistema operacional pode interromper – O sistema operacional pode interromper

um processo em execução e passá-lo para o estado de pronto, com o objetivo de alocar outro processo na UCPalocar outro processo na UCP

8/12

Escalonam ento FI FO

• O processo que chegar primeiro ao estado de pronto é o selecionado para estado de pronto é o selecionado para execução

8/13

Escalonam ento FI FO

Estado de

Fila dos processos no estado de Pronto

Estado de

UCP

Estado deCriação

Estado deTérmino

Estado deEspera

8/14

Escalonam ento FI FO

Processo A

Processo B

Processo C

10 14 17 u.t.

ProcessoTempo de

processador(u.t.)

Processo A

A

B

C

10

4

3

Processo B

Processo C

8/15

4 7 17 u.t.

Escalonam ento SJF

• O algoritmo de escalonamento seleciona o processo que tiver o menor seleciona o processo que tiver o menor tempo de processador ainda por executarexecutar

8/16

Escalonam ento SJF

Processo A

Processo B

Processo C

3 7 17 u.t.

8/17

Escalonam ento Cooperat ivo

• É uma implementação que busca aumentar o grau de multiprogramação aumentar o grau de multiprogramação em políticas de escalonamento que não possuem mecanismos de preempçãopossuem mecanismos de preempção

• Neste caso, um processo em execução pode voluntariamente liberar o pode voluntariamente liberar o processador

8/18

Escalonam ento circular

• É um escalonamento do tipo preemptivopreemptivo

• É semelhante ao FIFO, porém quando um processo passa para o estado de um processo passa para o estado de execução existe um tempo-limite para o uso contínuo do processador o uso contínuo do processador denominado fatia de tempo (time-slice) ou quantumou quantum

8/19

Escalonam ento circular

Estado de

Fila dos processos no estado de Pronto

Estado de

Preempção por tempo

UCP

Estado deCriação

Estado deTérmino

Estado deEspera

8/20

Escalonam ento circular

Processo A

Processo B

Processo C

u.t.2 4 17 u.t.6 8 10 11

8/21

Escalonam ento circular vir tual

• Neste esquema, processos que saem do estado de espera vão para uma fila do estado de espera vão para uma fila de pronto auxiliar

• Os processos da fila auxiliar possuem • Os processos da fila auxiliar possuem preferência no escalonamento em relação à fila de prontorelação à fila de pronto

• O escalonador só seleciona processos na fila de pronto quando a fila auxiliar na fila de pronto quando a fila auxiliar estiver vazia

8/22

Escalonam ento circular vir tual

UCP

Estado deCriação

Fila dos processos no estado de Pronto

Estado deTérmino

Preempção por tempo

UCP

Fila auxiliar

Estado deEspera

8/23

Escalonam ento por pr ior idades

• É um escalonamento do tipo preemptivo realizado com base em um preemptivo realizado com base em um valor associado a cada processo denominado prioridade de execuçãodenominado prioridade de execução

• O processo com maior prioridade no estado de pronto é sempre o escolhido estado de pronto é sempre o escolhido para execução, e processos com valores iguais são escalonados valores iguais são escalonados seguindo o critério de FIFO

8/24

Escalonam ento por prior idadesprioridades

Filas dos processos no estado de Pronto

Prioridade P1Prioridade P1

Prioridade P2

UCP

Estado deTérmino

Prioridade Pn

Estado deCriação

Preempção por prioridade

Estado deEspera

8/25

Escalonam ento por prior idades prior idades

Processo ATempo de

Processo B

Processo C

ProcessoTempo de

processador(u.t.)

A

B

10

4

Prioridade

2

1Processo C

3 13 17 u.t.

C 3 3

8/26

Escalonam ento circular com prior idadesprior idades

• Implementa o conceito de fatia de tempo e de prioridade de execução tempo e de prioridade de execução associada a cada processo

8/27

Escalonam ento circular com prioridadesprioridades

Fila dos processos no estado de ProntoFila dos processos no estado de Pronto

Prioridade P1

Prioridade P2

UCP

Estado deTérmino

Prioridade P2

Estado deCriação

Prioridade Pn

Preempção por tempo ou prioridade

Estado deEspera

8/28

Escalonam ento por m últ iplas filas com realim entaçãocom realim entação

• É semelhante ao escalonamentoo por múltiplas filas, porém os processos múltiplas filas, porém os processos podem trocar de filas durante seu processamentoprocessamento

8/29

Escalonam ento por m últ iplas filas com realim entaçãofilas com realim entação

Fila 1 (FIFO Adaptado)

r de

atia

po

Preempção por tempo

Fila 2 (FIFO Adaptado)

Maio

rPr

iori

dad

Men

or

fade

tem

p

UCP

Preempção por tempo

Fila 3 (FIFO Adaptado)

Preempção por tempo

Fila n (Circular)

Preempção por tempo

Men

or

Prio

rida

de

Maio

r fa

tia

de

tem

po

8/30

Polít ica de Escalonam ento em Sistem as de Tem po Com part ilhadoSistem as de Tem po Com part ilhado• Escalonamento circular• Escalonamento circular com • Escalonamento circular com

prioridades

8/31

Polít ica de escalonam ento em Sistem as de Tem po RealSistem as de Tem po Real

• Deve levar em consideração a importância relativa de cada tarefa na importância relativa de cada tarefa na aplicação

• O escalonamento por prioridade é o • O escalonamento por prioridade é o mais adequado

8/32

Exercícios

• O que é política de escalonamento de um Sistema Operacional?um Sistema Operacional?

• Quais as funções do escalonador e do dispatcher?dispatcher?

• Quais os principais critérios utilizados em uma política de escalonamento?em uma política de escalonamento?

• Diferencie os escalonamentos preemptivos e não-preemptivos.preemptivos e não-preemptivos.

• Cite os escalonamentos estudados, explicando cada um deles.

8/33

explicando cada um deles.

This document was created with Win2PDF available at http://www.win2pdf.com.The unregistered version of Win2PDF is for evaluation or non-commercial use only.This page will not be added after purchasing Win2PDF.