Escalonamento de CPU - Introdução sobre algoritmo de multiplas filas

3
ESCALONAMENTO DE CPU ALGORTÍMOS DE MÚLTIPLAS FILAS Introdução O que é escalonamento de CPU? É a técnica que consiste em vários tipos de algoritmos criados para que a CPU não fique muito tempo ociosa, isto é, sem executar tarefa alguma. Os sistemas operacionais utilizam técnicas para escalonar estas tarefas em processos de forma que fiquem ordenados em filas de execução. Esta execução não é realizada simultaneamente, ou seja, ao mesmo tempo na maquina, em sim é dividida em pequenas fatias de tempo muito breves e extremamente rápidas. Para o usuário, contudo, a sensação é de que o processamento é simultâneo, Relembrando Por que a CPU pode ficar ociosa? Um programa ao ser executado é carregado na memória Os dados do programa são enviados à CPU numa velocidade máxima de 10 MB/s Tais dados são transformados em processos e são realizados internamente na CPU A CPU tem uma capacidade de processamento muito grande e pode transferir os dados de volta à memória ou a periféricos numa velocidade de até 25 MB/s, ou seja, no mínimos duas vezes mais rápido que o melhor barramento é capaz de enviar aos dispositivos de I/O.

Transcript of Escalonamento de CPU - Introdução sobre algoritmo de multiplas filas

Page 1: Escalonamento de CPU - Introdução sobre algoritmo de multiplas filas

ESCALONAMENTO DE CPU

ALGORTÍMOS DE MÚLTIPLAS FILAS

Introdução

O que é escalonamento de CPU?

É a técnica que consiste em vários tipos de algoritmos criados para que a CPU não fique muito tempo ociosa, isto é, sem executar tarefa alguma. Os sistemas operacionais utilizam técnicas para escalonar estas tarefas em processos de forma que fiquem ordenados em filas de execução. Esta execução não é realizada simultaneamente, ou seja, ao mesmo tempo na maquina, em sim é dividida em pequenas fatias de tempo muito breves e extremamente rápidas. Para o usuário, contudo, a sensação é de que o processamento é simultâneo,

Relembrando

Por que a CPU pode ficar ociosa?

• Um programa ao ser executado é carregado na memória• Os dados do programa são enviados à CPU numa velocidade máxima de 10 MB/s• Tais dados são transformados em processos e são realizados internamente na CPU• A CPU tem uma capacidade de processamento muito grande e pode transferir os

dados de volta à memória ou a periféricos numa velocidade de até 25 MB/s, ou seja, no mínimos duas vezes mais rápido que o melhor barramento é capaz de enviar aos dispositivos de I/O.

Page 2: Escalonamento de CPU - Introdução sobre algoritmo de multiplas filas

Resultado...

Processador fica aguardando os dados serem enviados, e enquanto isso tira um tempinho para ficar dormindo, desocupado, ocioso, sem fazer nada.

Assim surgiu o escalonamento de CPU...

Principais algoritmos

1. Algoritmo SJF (Shortest Job First)2. Algoritmo SRT (Shortest Remaining Time)3. Algoritmo RR (Round-Robin)4. Algoritmo Múltiplas Filas5. Algoritmo Fila com prioridade

Page 3: Escalonamento de CPU - Introdução sobre algoritmo de multiplas filas

Algoritmo de Múltiplas filas

Num sistema multiprogramável, um processo não deve alocar a CPU com exclusividade, de forma que possa existir um compartilhamento no uso do processador.

Neste tipo de algoritmo os processos são colocados em mais de uma fila.

Cada fila recebe seus processos que são classificados por grupos:

As filas passam a ter seu próprio algoritmo de escalonamento. Ex:

• Fila de processos em batch → algoritmo FIFO• Fila de processos de edição interativa → algoritmo RR

Após os grupos terem sido definidos em suas respectivas filas um escalonamento especial define as prioridades de cada fila. Com isso os processos são enviados à CPU de acordo com o algoritmo do escalonador de filas que gerencia os processos de acordo com as prioridades atribuídas e com o quantum de cada processo.

Os processos não migram de fila para fila.