Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf ·...

53
Sistemas de Computação Processos e escalonamento

Transcript of Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf ·...

Page 1: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Processos e escalonamentoProcessos e escalonamento

Page 2: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Sistema operacional

• Programa que age como intermediário entre o usuário de um computador e o hardware

• Objetivos:– Executar programas do usuário e facilitar a resolução de

problemas– Tornar o sistema de computação mais conveniente para uso

• Utiliza o hardware de maneira eficiente

Page 3: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Visão abstrata dos componentes de um sistema de computação

Page 4: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Funções executadas pelo S.O

• Gerencia e aloca recursos

• Controla a execução de programas de usuário e operações de entrada e saída

• Núcleo do S.O fica executando todo o tempo

Page 5: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Esquema de memória para sistema simples de batch

Page 6: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Sistemas batch multiprogramados

• Vários jobs são colocados na memória principal ao mesmo tempo e a CPU é multiplexada entre eles.

Page 7: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Características necessárias para multiprogramação

• Rotinas de E/S fornecidas pelo S.O

• Memória deve ser alocada aos diversos jobs pelo S.O

• Sistema deve escolher entre os jobs prontos para serem executados, aquele que realmente seráexecutado

• Alocação de dispositivos

Page 8: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Sistemas time-sharing –computação interativa

• A CPU é multiplexada entre vários jobs que estão na memória e no disco ( a CPU é alocada para um job somente se ele estiver na memória)

• Um job fica sendo trocado de lugar entre memória e disco

• Comunicação on-line entre o usuário e o sistema éfornecida; quando o S.O finaliza a execução de um comando, ele procura pelo próximo comando digitado no teclado

• Sistemas on-line têm que estar disponíveis para acesso a dados e código

Page 9: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Processos

• Um sistema operacional executa uma variedade de programas:

– Sistemas batch – jobs– Sistemas time-shared – programas de usuário ou tarefas (tasks)

• Os termos job e processo são utilizados para designar a mesma coisa

• Processo é um programa em execução realizada de maneira seqüencial

• Um processo inclui:– contador de programa– pilha (stack)– seção de dados

Page 10: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Estado do processo

• À medida que o processo é executado, ele troca de estado

– novo: O processo está sendo criado– em execução (running): Instruções estão sendo executadas – suspenso (waiting): O processo está esperando pela ocorrência

de um evento– pronto (ready): O processo está pronto para ser designado para

a CPU– terminado (terminated): O processo acabou sua execução

Page 11: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Diagrama de estados do processo

Page 12: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Bloco de controle de processos

• Informação associada a cada processo

• Estado do processo

• Contador de processo

• Registradores de CPU

• Informações para escalonamento de CPU

• Informações para gerenciamento de memória

• Informações para tarifação

• Informações de estado de E/S

Page 13: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Bloco de controle de processo

Page 14: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Chaveamento da CPU

Page 15: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Processos concorrentes

• Os processos podem executar concorrentemente no sistema

• Compartilhamento de recursos físicos

• Compartilhamento de recursos lógicos

• Aceleração da computação

• Modularidade

• Conveniência

Page 16: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Criação de processos

• Um processo pai cria processos filhos, que por sua vez criam outros processos, formando uma árvore de processos

• Compartilhamento de recursos– Pais e filhos compartilham todos os recursos– Filhos compartilham um subconjunto dos recursos do pai– Pais e filhos não compartilham recursos

• Execução– Pai e filhos executam concorrentemente– Pai espera filhos acabarem

Page 17: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Criação de processos

• Espaço de endereçamento– Filho duplica espaço do pai– Filho tem um programa carregado neste espaço

• Exemplos em UNIX– fork chamada do sistema para criar processo novo– exec chamada do sistema utilizada após um fork para carregar um

novo programa no espaço de memória do processo

Page 18: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Árvore de processos em um sistema UNIX

Page 19: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Término de um processo

• Processo executa a última instrução e pede para o sistema operacional finalizá-lo (exit).

– Dados passam do filho para pai (via wait).– Recursos do processo são liberados pelo sistema operacional

• Pai pode terminar a execução de processos filhos (abort).

– Filho excedeu recursos alocados.– Tarefa designada para o filho não é mais necessária– Pai está finalizando sua execução

• S.O não permite que um filho continue executando se o pai terminou execução

• Terminação em cascata

Page 20: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Escalonamento

• Maior utilização da CPU com multiprogramação

• Ciclo de burst de CPU e E/S – Execução de um processo consiste de ciclo de execução de CPU e espera por E/S

• Sistema operacional passa o controle da CPU para outro programa quando o que está sendo executado tem que esperar

Page 21: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Filas para escalonamento de processos

• Filas de jobs – conjunto de todos os processos do sistema

• Fila de prontos – conjunto de todos os processos residentes na memória principal, prontos e esperando para serem executados pela CPU

• Fila de dispositivos – conjunto de processos esperando por um dispositivo de E/S

• Os processos migram entre as diversas filas

Page 22: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Fila de prontos e várias filas de dispositivos de E/S

Page 23: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Representação do escalonamento de processos

Page 24: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Escalonadores

• Long-term scheduler (ou job scheduler) –seleciona os processos que devem ser trazidos para a fila de prontos

• Short-term scheduler (ou CPU scheduler) –seleciona o processo que deverá ser o próximo a ser executado pela CPU e aloca a CPU para ele

Page 25: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Escalonador de médio prazo

Page 26: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Escalonadores

• Short-term scheduler é acionado muito freqüentemente (milisegundos) (tem que ser rápido).

• Long-term scheduler é acionado mais raramente (segundos, minutos) (pode ser lento).

• O long-term scheduler controla o grau de multiprogramação

• Processos podem ser descritos como:– Processo I/O-bound – gasta a maior parte do tempo executando

E/S que computação, vários bursts de CPU curtos.– Processo CPU-bound – gasta a maior parte do tempo realizando

computação, poucos bursts de CPU de longa duração

Page 27: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Chaveamento de contexto

• Quando a CPU chaveia para outro processo, o sistema tem que salvar o estado do processo que estava sendo executado e carregar o estado guardado do novo processo

• Tempo de chaveamento de processo introduz overhead; o sistema não realiza trabalho útil neste tempo

• Tempo depende do suporte de hardware existente

Page 28: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Seqüência de bursts de CPU e E/S

Page 29: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Escalonamento da CPU

• Seleciona um entre os processos prontos que estão na memória para ser executado e aloca a CPU para ele

• As decisões de escalonamento da CPU podem ocorrer quando um processo:

1. Troca do estado executando para suspenso2. Troca do estado executando para pronto3. Troca do estado suspenso para pronto 4. Termina

• Escalonamento realizado nos casos 1 e 4 é não preemptivo.

• Os outros são preemptivos.

Page 30: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Chaveamento de contexto

• Quando a CPU chaveia para outro processo, o sistema tem que salvar o estado do processo que estava sendo executado e carregar o estado guardado do novo processo

• Tempo de chaveamento de processo introduz overhead; o sistema não realiza trabalho útil neste tempo

• Tempo depende do suporte de hardware existente

Page 31: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Dispatcher

• O módulo dispatcher dá o controle da CPU para o processo selecionado pelo short-term scheduler; que envolve:

– trocar o contexto– mudar o modo para modo usuário– desviar para o endereço apropriado do programa do usuário

• Latência de despacho – tempo gasto pelo dispatcher para parar um processo e iniciar a execução de outro

Page 32: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Critérios para escalonamento

• Utilização de CPU – mantém a CPU ocupada o maior tempo possível

• Throughput – número de processos que completam sua execução por unidade de tempo

• Turnaround time – quantidade de tempo para executar um determinado processo

• Waiting time – tempo que o processo fica na fila de prontos

• Tempo de resposta – tempo para produzir a primeira resposta a um pedido em sistemas de tempo compartilhado

Page 33: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Critérios de otimização

• Max utilização de CPU

• Max throughput

• Min turnaround time

• Min waiting time

• Min tempo de resposta

Page 34: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

P1 P2 P3

24 27 300

First-Come, First-Served (FCFS)

Processo Tempo de burstP1 24P2 3P3 3

• Suponha que os processos chegam na ordem : P1 , P2, P3 A carta de Gantt ilustra a situação:

Tempo de espera para P1 = 0; P2 = 24; P3 = 27Tempo médio de espera: (0 + 24 + 27)/3 = 17

Page 35: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

P1P3P2

63 300

FCFS (Cont.)

• Suponha que os processos cheguem na ordem P2 , P3 , P1 .

• A carta de Gantt para esta situação:

Tempo de espera para P1 = 6; P2 = 0; P3 = 3Tempo médio de espera: (6 + 0 + 3)/3 = 3Melhor que caso anterior

Page 36: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Shortest-Job-First (SJF)

• Associa a cada processo a duração do seu próximo CPU burst e escalona o processo com o menor tempo:

• Dois esquemas: – não preemptivo – a partir do momento que um processo adquiriu a

CPU, ela fica associada a ele até que o seu CPU burst acabe– preemptivo – se um novo processo chega com um CPU burst

menor que o tempo que ainda resta para que o processo corrente termine a sua execução, o novo processo toma o lugar do corrente (SRTF - Shortest-Remaining-Time-First ).

• SJF é ótimo – fornece o menor tempo de espera médio para um dado conjunto de processos

Page 37: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Processo Tempo de chegada Tempo de burstP1 0.0 7P2 2.0 4P3 4.0 1P4 5.0 4

• SJF (não preemptivo)

• Tempo médio de espera = (0 + 6 + 3 + 7)/4 - 4

Exemplo de SJF não preemptivo

P1 P3 P2

73 160

P4

8 12

Page 38: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Exemplo de SJF preemptivo

Processo Tempo de chegada Burst TimeP1 0.0 7P2 2.0 4P3 4.0 1P4 5.0 4

• SJF (preemptivo)

• Tempo médio de espera = (9 + 1 + 0 +2)/4 - 3

P1 P3P2

42 110

P4

5 7

P2 P1

16

Page 39: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

:Define 4.10 , 3.

burst CPU next the for value predicted 2.burst CPU of lenght actual 1.

1n

thn nt

.t nnn 11

Como determinar duração de próximo CPU burst ?

• Só pode ser estimado

• Pode ser estimado realizando-se uma média exponencial dos valores de duração de bursts de CPU prévios

Page 40: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Predição da duração do próximo CPU burst

Page 41: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Exemplos

• =0– n+1 = n

– História recente não conta

• =1– n+1 = tn

– Somente os últimos bursts são levados em conta

Page 42: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Escalonamento de prioridades

• Um número inteiro de prioridade é associado a cada processo

• A CPU é alocada ao processo de maior prioridade (menor inteiro = maior prioridade)

– Preemptivo– não preemptivo

• SJF é um escalonamento de prioridades onde a prioridade é o próximo tempo previsto de burst de CPU

• Problema Starvation – processos de baixa prioridade nunca são executados

• Solução Aging – à medida que o tempo passa a prioridade do processo aumenta

Page 43: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Round Robin (RR)

• Cada processo recebe uma pequena unidade de tempo da CPU (time quantum), geralmente 10-100 milisegundos . Quando este tempo se esgota, o processo para de ser executado e vai para o final da fila de prontos

• Se existem n processos na fila de prontos e o time quantum é q, então cada processo recebe de cada vez no máximo q unidades de tempo. Nenhum processo espera mais que (n-1)q unidades de tempo para ser executado pela CPU.

• Desempenho– q grande FIFO– q pequeno q deve ser grande em relação ao tempo de troca de

contexto, senão overhead é muito grande

Page 44: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

P1 P2 P3 P4 P1 P3 P4 P1 P3 P3

0 20 37 57 77 97 117 121 134 154 162

Exemplo de RR com time quantum = 20

Processo Tempo de burstP1 53P2 17P3 68P4 24

Carta de Gantt:

• Maior média para turnaround time que SJF, mas melhor tempo de resposta

Page 45: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Time quantum e tempo de troca de contexto

Page 46: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Turnaround time varia com o time quantum

Page 47: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Múltiplas filas

• A fila de prontos é particionada em filas separadas que possuem seu próprio algoritmo de escalonamento

– foreground (interativas) - RR– background (batch) - FCFS

• Escalonamento tem que ser realizado entre as filas– Escalonamento de prioridades fixas ( serve todos da fila

foreground depois da background). Possibilidade de starvation.– Fatia de tempo – cada fila recebe uma certa quantidade de tempo

da CPU que é escalonada entre os processos da fila( 80% paraforeground em RR, 20% para background em FCFS)

Page 48: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Múltiplas filas

Page 49: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Múltiplas filas com realimentação

• Um processo pode mudar de fila

• Definido pelos seguintes parâmetros:– número de filas– algoritmos de escalonamento de cada fila– método utilizado para determinar quando um processo deve ir para

fila de maior prioridade – método utilizado para determinar quando um processo deve ir para

fila de menor prioridade– método utilizado para determinar em qual fila o processo deve

entrar quando precisa de serviço

Page 50: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Exemplo de múltiplas filas com realimentação

• Três filas: – Q0 – time quantum 8 milisegundos– Q1 – time quantum 16 milisegundos– Q2 – FCFS

• Escalonamento– Um processo novo entra na fila Q0 que é servida por FCFS.

Quando ele ganha a CPU, ele recebe 8 millisegundos. Se ele não acaba em 8 milisegundos, ele é movido para fila Q1.

– Na fila Q1, o processo é servido por FCFS e recebe 16 milisegundos adicionais. Caso ele ainda não tenha acabado, ele émovido para a fila Q2.

Page 51: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Múltiplas filas com realimentação

Page 52: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Avaliação dos algoritmos

• Modelagem determinística – obtém uma carga de trabalho pré determinada e específica e define o desempenho de cada algoritmo para esta carga

• Modelos de filas

• Implementação

Page 53: Processos e escalonamentoProcessos e escalonamentosimone/scminter/contaulas/10_PROCS.pdf · Escalonamento da CPU • Seleciona um entre os processos prontos que estão na mem ó ria

Sistemas de Computação

Avaliação por simulação