Anda di halaman 1dari 30

SISTEMA

OPERACIONAL I
Prof. Ms. Patricia Klinkerfus de Campos
FATEC BRAGANA PAULISTA
Gerenciador do Processador
Processador
Tambm conhecido como CPU (unidade central de
processamento), a parte da mquina que executa
os programas.
A execuo dos programas em um ambiente
multiprogramvel exige que o processador execute
vrios programas ao mesmo tempo, sabendo
quando iniciar um ou outro e encerr-los tambm.
Tal processo de iniciar vrios programas ao mesmo
tempo, interrompendo-os quando necessrio para
abrir outros tem o nome de critrio de
escalonamento.
Gerenciador do Processador
Escalonamento de Programas e Processos
So conhecidos como os dois sub-
gerenciadores da CPU.
Trabalham juntos com o objetivo de
proporcionar a execuo de vrios programas
simultaneamente em um sistema operacional,
utilizando-se de algoritmos para hierarquizar
tal processo.
Gerenciador do Processador
Escalonador de Programas
Tambm conhecido como escalonador de alto nvel,
pois ele que coloca os programas a serem
executados na fila, para processamento
O escalonador de programas tem como preocupao
selecionar os programas em uma fila de entrada e
coloc-los na fila de processo, em lote ou interativa, de
acordo com as caractersticas de cada programa;
Seu objetivo o de encontrar um equilbrio entre os
programas em execuo, reduzindo ao mximo a
ociosidade da maioria dos componentes de um
sistema computacional.


Gerenciador do Processador
Escalonador de Processos
Tambm conhecido como escalonador de
baixo nvel, instrui a CPU para executar os
processos daqueles programas que foram
colocados na fila pelo escalonador de
programas;
Seu trabalho tem como caracterstica alternar
entre a execuo de ciclos de CPU (executar
alguma tarefa de programa, clculos, etc) e
ciclos de E/S (impresso, escaneamento, etc).
Gerenciador do Processador
Temos ainda o escalonador de nvel mdio,
que utilizado quando o sistema est
sobrecarregado, pois retira os programas
ativos da memria para reduzir o grau de
multiprogramao, permitindo que outros
programas sejam executados mais
rapidamente.
Gerenciador do Processador
Estados de Programas e de Processos
Podemos considerar como sendo os estgios
que um programa passa, ou seja, um programa
pode ser iniciado (NOVO), estar pronto para
comear (PRONTO), estar sendo usado (EM
EXECUO), estar esperando para ser
acessado (EM ESPERA), ou ainda, ser
finalizado (TERMINADO). Ento temos:

NOVO PRONTO EM EXECUO TERMINADO

EM ESPERA
Gerenciador do Processador
A transio de NOVO para PRONTO iniciada pelo Escalonador
de Programas, de acordo com os critrios predefinidos. Neste
momento so verificadas a disponibilidade de memria e dos
recursos requisitados;
A transio do PRONTO para EXECUO feita pelo
Escalonador de Processos, de acordo com algum algoritmo
predefinido;
A transio do EXECUO para PRONTO feita pelo
Escalonador de Processos, de acordo com algum limite de tempo
ou outro critrio preestabelecido;
A transio de EM ESPERA para PRONTO tambm feita pelo
Escalonador de Processos e iniciada por um sinal do
gerenciador de dispositivos de E/S dizendo que o programa pode
prosseguir;
J a transio de EXECUO para TERMINADO pode ser
iniciada tanto pelo escalonador de programas quanto pelo de
processos. Ser pelo de processos quando o programa for
concludo com sucesso tendo terminado sua execuo, porm
ser terminado pelo de programas quando houver um erro,
fazendo com que o S.O. termine o programa prematuramente.
Gerenciador do Processador
Blocos de Controle de
Processos (BCP)
uma estrutura de dados
que contm as informaes
bsicas a respeito de um
programa, como por
exemplo, o que ele ,
aonde esta indo, at onde
ser processado, onde est
armazenado, etc.
Vejamos a ilustrao ao
lado de um BCP:

Identificao do Processo
Status do Processo
Estado do Processo

Palavra de Status do Processo
Contedo do Registrador
Memria Principal
Recursos
Prioridade do Processo
Contabilidade
Identificao do Processo uma identificao especifica que cada
programa recebe atravs da identificao do usurio e de um ponteiro que se
conecta a seu descritor (fornecido pelo escalonador de programas quando
colocado na fila NOVO);
Status do Processo indica em que estado est o programa, se NOVO ou
PRONTO, etc.
Estado do Processo contm todas as informaes necessrias para indicar
o estado do programa em determinado momento, como:
Palavra de Status de Processo o contedo do contador de instruo e do
registrador quando o programa no est em execuo (quando seu Status
NOVO, PRONTO ou EM ESPERA).
Contedo do Registrador quando o programa foi interrompido e est
esperando para reiniciar a execuo.
Memria Principal informaes sobre o endereo na memria principal ou
mapeamento entre as posies na memria virtual.
Recursos informaes sobre todos os recursos (unidades de disco,
arquivos, impressoras, etc) alocados ao programa.
Prioridade no Processo necessrio aos sistemas que utilizam algoritmos
de escalonamento por prioridades para selecionar o proximo programa a
ser executado.
Contabilidade contm informaes sobre medies de desempenho. Indica
que tipo de recurso o programa utilizou e por quanto tempo.
Gerenciador do Processador
Gerenciador do Processador
Critrios de Escalonamento de Processos
Para que vrios programas possam ser acessados e processados
simultaneamente necessrio que o escalonador de processos use de
critrios para maximizar o uso e minimizar os problemas, para tanto
vejamos tais critrios
Maximizar produtividade executar o maior numero possvel de
programas em determinado perodo (fcil para programas curtos)
Minimizar o tempo de resposta executar primeiro os programas
interativos e depois os em lote.
Minimizar os tempo de retorno submeter e retornar os programas o
mais rpido possvel. Para isso tem-se que priorizar os programas em
lote.
Minimizar o tempo de espera - retirar os programas da fila PRONTO o
mais rpido possvel. S se torna possvel se reduzir o numero de
usurios.
Maximizar a eficincia da CPU manter a CPU sempre ocupada. S
executar programas dependentes da CPU e no os programas de E/S.
Garantir equanimidade para todos os programas tornar disponvel a
todos os programas a mesma quantidade de tempo de CPU e E/S
Observamos atravs dos critrios que quando utilizados acabaro por
prejudicar uns para agradar a outros e vice-versa.
Gerenciador do Processador
Algoritmos de Escalonamento de Processos
So usados para alocar a CPU e possibilitar o
transito de programas pelo sistema. So eles:
Primeiro a chegar, primeiro a ser atendido;
Programa Menor primeiro;
Escalonamento por prioridade;
Menor tempo restante;
Rodzio;
Fila de Mltiplos nveis.
Considerando a chegada simultnea dos programas podemos dizer que
o tempo de retorno do Programa A de 15, do,Programa B de 17 e do
programa C de 18. Logo o tempo mdio de retorno ser:
Gerenciador do Processador
Primeiro a chegar, primeiro a ser atendido(PCPA)
um algoritmo muito simples pois trabalha com a idia de que o
programa que chegar primeiro quem ser processado. Trabalha
com a fila FIFO, sendo amplamente utilizado em sistemas em
lotes, porm inadequado para sistemas interativos, onde se exige
rapidez no processamento.
Vejamos o exemplo a seguir: Imagine que temos trs programa a
serem executados, A, B e C. Tem-se o programa A que possui um
ciclo de CPU de 15 milissegundos, o programa B com um ciclo de
2 milissegundos e o programa C com um ciclo de 1 milissegundos.
Vamos imaginar a entrada nesta ordem A, B, C. Temos:

Gerenciador do Processador
Observe agora os mesmos programas, porm em outra ordem:




Aqui o tempo de retorno do programa A 18, do Programa B
3 e do Programa C 1, ento o tempo mdio :

Podemos observar que os mesmos programas podem ser
administrados de forma diferente dando resultados de tempo
diferentes, porm o sistema que utiliza este critrio ir realizar o
processo de acordo com a chegada, no com o clculo da
melhor situao. Justamente por isso um sistema pouco
usado
Gerenciador do Processador
Programa menor primeiro (MP)
O critrio executar primeiro o menor programa e assim por
diante.
S usado em sistemas em lote, pois aqui os usurios podem
prever o tempo de execuo dos programas.
Considere os quatro programas em lotes, todo na fila
PRONTO, cujos ciclos de CPU so estimados em:




O algoritmo MP inspeciona os quatro programas escalona o
processo da seguinte forma: B,D,A,C. Observe como fica:




O tempo mdio de retorno :
Programa A B C D
Ciclo de CPU 5 2 6 4
Gerenciador do Processador
Escalonamento por Prioridade
Usado em sistemas em lote, caracterizado pelo fato de processar os
programas mais importantes primeiro. Caso hajam dois programas a
serem executados com o mesmo grau de importncia o sistema ira
processar aquele que chegou primeiro a fila.
As caractersticas de prioridades podem ser atribudas por:
Necessidade de memria - programas que necessitam de grande
quantidade de memria podem receber prioridades menores;
Nmeros e tipo de dispositivos perifricos programas que
requerem muitos dispositivos perifricos podem ter prioridades
menores;
Tempo Total de CPU programas que possuem um longo ciclo na
CPU, podem receber prioridades menores;
Tempo decorrido de permanncia no sistema o tempo total
decorrido desde que o programa foi aceito para processamento.
Alguns sistemas aumentam a prioridade de programas que j esto
no sistema por perodo atipicamente longo, a fim de apressar sua
sada do sistema. Isso conhecido como envelhecimento.
Estes critrios so padro, porm podem ser sobrepujados por
prioridades especificas definidas pelos usurios.
Gerenciador do Processador
Menor tempo restante (MTR)
Utilizado somente em sistemas em lote, devido ao fato
de requerer conhecimento prvio do tempo que a CPU
necessitar para executar o programa.
Observe o exemplo abaixo, onde temos os programas
A,B,C,D como esta ordem de chegada, porm como
ciclos de CPU diferentes.
O tempo de retorno o tempo de execuo menos o
tempo de chegada

Tempo de chegada 0 1 2 3
Programa A B C D
Ciclo de CPU 6 3 1 4
Programa A B C D
Tempo de Retorno 14 4 1 6
Gerenciador do Processador
Logo o tempo mdio de retorno :
Gerenciador do Processador
Rodzio
Utilizado amplamente nos sistemas interativos, j que fcil de se
implementar e no se baseia nas caractersticas dos programas,
mas em uma fatia de tempo reservada a cada programa de forma
a garantir que a CPU seja equitativamente compartilhada por
todos os processos ativos, e no monopolizada por um nico
programa.
O Rodzio define o tempo que cada programa poder utilizar,
independente de seu ciclo, fazendo a rotatividades dos programas
at que se termine cada um deles. Veja o exemplo abaixo:

Tempo de Chegada 0 1 2 3
Programa A B C D
Ciclo de CPU 8 4 9 5
Gerenciador do Processador
Observe que cada programa roda at 4ms e depois entra o
prximo e assim por diante, at que todos sejam terminados
O tempo de retorno o tempo de execuo menos o tempo de
chegada
Programa A B C D
Tempo de Retorno 20 7 24 22
Logo o tempo mdio de retorno :
Gerenciador do Processador
Rodzio
Importante salientar que se o intervalo de tempo
(quantum de tempo) for muito pequeno, provoca
sobrecarga no sistema, pois h muitas
interrupes entre a entrada de um e sada de
outro. J se o quantum de tempo for longo
provoca poucas interrupes, porm se os
programas possurem tempos menores que tais
intervalos o sistema se reduz ao PCPA (primeiro a
chegar, primeiro a ser atendido)
Gerenciador do Processador
Filas de Mltiplos Nveis
So aqueles que se utilizam dos vrios
esquemas vistos anteriormente, conforme a
necessidade ou interesse. So encontrados
em sistemas onde h programas que podem
ser agrupados de acordo com uma
caracterstica comum, ou seja, o sistema
define quais critrios deve utilizar ou no,
dependendo dos programas que tem para
executar.

Gerenciador do Processador
Podemos descrever os critrios como:
No permitir a movimentao entre filas;
Permitir a movimentao de programas entre
filas;
Aumentar o quantum de tempo para as filas
menores;
Dar tratamento especial aos programas que
esto no sistema h muito tempo.
Gerenciador do Processador
Nenhuma movimentao entre filas
Favorece os programas com prioridade maior;
O processador alocado aos programas na
fila de maior prioridade (PCPA) e passa para
as filas de menor prioridade apenas quando
no h mais programas na anterior
Gerenciador do Processador
Movimentao de programas entre filas
Mais adequando aos sistemas interativos;
Faz com que os programas de maior prioridade, a
principio, fiquem na mesma posio que os outros,
aps entrar no sistema;
Sempre que um programa atinge seu quantum de
tempo interrompido, levado ao final da fila, para que
outro entre em processamento;
Este critrio mais justo quando aplicado em
programas que possuem caractersticas prprias em
seu ciclo computacional, sendo dependentes da CPU
ou E/S.

Gerenciador do Processador
Quantum de tempo varivel por fila
Caracteriza-se por fornecer um retorno de tempo mais
rpido para os programas dependentes de CPU;
Neste esquema cada fila recebe um quantum de
tempo duas vezes maior do que o quantum da fila
anterior.
Quando um programa no consegue concluir suas
atividades em seu quantum de tempo enviado ao
final da fila, porm com um quantum de tempo
dobrado, portanto quando chegar sua vez novamente
ter mais tempo para sua execuo,
conseqentemente um programa dependente de CPU
pode ficar em execuo por perodos cada vez
maiores, melhorando assim suas chances de terminar
mais cedo.
Gerenciador do Processador
Dar tratamento especial aos programas que
esto no sistema h muito tempo
(Envelhecimento)
Critrio utilizado para garantir que os
programas colocados nas filas de nvel inferior
eventualmente possam concluir sua
execuo.
Tal esquema visa reprimir a postergao
indefinida, ou seja, a no finalizao de um
programa dentro da fila, devido a sua efetiva
tranferencia ao final da fila.
Gerenciador do Processador
Memria CACHE
Localiza-se entre a memria principal e o processador;
uma memria de rpido acesso, concebida para amenizar
as diferenas de velocidade entre uma CPU rpida e uma
memria principal lenta.
utilizada com o objetivo de processar mais rapidamente os
programas mais utilizados pelo usurio.
A memria CACHE possui um controlador que verifica os
programas mais utilizados dentro do sistema, deixando-os
armazenados em sua rea, proporcionando maior agilidade
em sua execuo, quando solicitado.
Os dados da memria CACHE devem ser considerados
temporrios, ou seja, na falta de energia todo seu contedo
perdido.
Gerenciador do Processador
Questes
Quais so as informaes a respeito de um
programa que devem constar em um BCP?
Cinco programas esto na fila PRONTO espera de
processamento. Os ciclos de CPU estimados so:
10, 3, 5, 6 e 2. De acordo com o algoritmo MP, em
que ordem eles devem ser processados para que o
tempo mdio de espera seja minimizado?
O que postergao indefinida?
O que envelhecimento?
Para que serve a memria CACHE?
Explique os algoritmos de escalonamento. Crie
exemplos em sua utilizao, definindo sua mdia de
tempo de retorno.

Anda mungkin juga menyukai