Sie sind auf Seite 1von 21

Processos

Processos so basicamente programas em


execuo. So constitudos basicamente de:

Sequncia de instrues;
Conjunto de dados;
Registro descritor (rea de memria que
armazena o processo).
Os processos possuem trs estados:

Em execuo - significa que est utilizando a CPU no


momento.

Pronto - Aguardando para ser executado

Bloqueado Aguardando uma entrada ou


interveno externa.
Escalonador

Componente do sistema operacional que


determina qual processo ir rodar primeiro, de
acordo com uma poltica de escalonamento
Aspectos do Escalonamento de Processos

Polticas de Escalonamento (Regras que definem


qual processo rodar e por quanto tempo at rodar
outro).

Implementaes (Estruturas de dados e algoritmos


que colocam em prtica as polticas)
Categorias de algoritmos de escalonamento

Existem duas categorias de algoritmos:

Preemptivo;
No preemptivo.

Ambientes de aplicao dos algoritmos;

Em lote;
Interativo;
Em Tempo Real;
Em Lote:
No possui usurios aguardando;
O prazo de resposta no necessita ser rpido;

Interativo:
Vrios usurios aguardando;
Evita monopolizao de CPU;
Preempo essencial;

Em Tempo Real
Processos conscientes do tempo de execuo;
Processos que visam progresso da aplicao;
Objetivos...
Todos os Sistemas:
Justia dar a cada processo uma poro justa da CPU;
Aplicao da poltica de escalonamento;
Equilbrio Sistema eficiente sem ociosidade;

Sistemas em lote:
Vazo (throughput) Maximizar o nmero de tarefas por
hora;
Tempo de retorno (turnaround time) Minimizar o tempo
entre incio e o trmino de execuo;
CPU Manter CPU ocupada sempre;
...objetivos
Sistemas interativos:
Tempo de resposta Responder rapidamente as
requisies;
Proporcionalidade Satisfazer as expectativas dos
usurios.

Sistemas em tempo real:


Cumprimento dos Prazos Evitar perda de dados;
Previsibilidade Evitar a degradao em sistemas
multimdia.
Algoritmos para escalonamento em
Sistemas de lote

FIFO/FCFS: Primeiro a entrar/chegar primeiro a sair/ser


servido - Fila;

SJF (shorted job first) Tarefa mais curta primeiro;

SRT (Shortest Remaining Time Next) (Prximo de menor


tempo restante)
Algoritmos para escalonamento em
sistemas interativos...
Round-Robin (Chaveamento circular) Estabelece um
tempo de execuo (quantum). Pressupe igualdade entre
todos os processos CPU sofre preempo No ocorre
STARVATION (inanio);

Por prioridades: Cada processo recebe uma prioridade.


Esttica (Quantum fixo e conhecimento prvio dos
jobs a serem executados uma nica vez) ou;
Dinmica (Sem conhecimento dos jobs. Processos
chegam em tempos assncronos e aleatrios. Sistema
adapta os processos necessidade).
...algoritmos para escalonamento em
sistemas interativos...
Filas Mltiplas: So criadas filas com classes de
prioridades. A fila de classe com maior prioridade tem
seus processos executados primeiro;

Shortest Process Next (Prximo processo mais curto): O


prximo processo mais curto executado primeiro,
tendo como base o tempo estimado em outra execuo
passada (AGING).
...algoritmos para escalonamento em
sistemas interativos...
Escalonamento garantido: O escalonador faz promessa de
tempo de CPU e cumpre No ocorre STARVATION
(inanio);

Por loteria: So sorteados bilhetes com prmios (recursos


de CPU, por exemplo) aos processos. Usado
principalmente para resoluo de problemas com outros
algoritmos.
...algoritmos para escalonamento em
sistemas interativos...
Fair Share (Escal. Por frao justa): So prometidos e
alocados a cada usurio e no a cada processo, uma frao
da CPU.;
Escalonamento em sistemas de tempo
real...
Podem ser:
Tempo real crtico: O tempo e agilidade so essenciais. Os
prazos absolutos devem ser cumpridos. Ex: Sistemas
embarcados de aeronaves e aparelhos de monitoramento
em hospitais;

Tempo real no crtico: Tempo e agilidade so essenciais,


no entanto, atrasos ou descumprimentos ocasionais so
tolerveis; Ex: CD/DVD player;
Escalonamento em sistemas de tempo
real...
Algoritmos podem ser:

Estticos: Previsibilidade (Trabalho a ser feito, prazo e


tempo so conhecidos previamente). Decises de
escalonamento tomadas antes do sistema comear
executar.

RMS (Rate Monotonic Scheduling): Atribui


prioridades fixas aos processos de acordo com a
frequncia. Quanto maior a frequncia, maior a
prioridade Preemptivo.
...escalonamento em sistemas de tempo
real
Algoritmos podem ser:

Dinmicos: Sem previsibilidade, no h prioridades fixas.


Escalonamento realizado na execuo. Algoritmo mais
comum :

EDF (Earliest Deadline First): Processo com prazo de


execuo mais curto executado. Se chegar outro
processo mais curto que o em execuo, ocorre
preempo.
Escalonamento de thread
O que thread?
Forma de um processo se dividir em uma ou mais tarefas que
podem ser executadas concorrentemente.

Podem ser
ULT (User level thread) Nvel de usurio: Escalonada pelo
programador. Executa at acabar o quantum do processo
pai. O ncleo no tem conhecimento.
KLT (Kernel level thread) Nvel de ncleo: So escalonadas
diretamente pelo sistema operacional exige mudana de
contexto de uma thread para outra.

Das könnte Ihnen auch gefallen