Escalonamento
Métodos de escalonamento de processos em Sistemas Operacionais
Parte I - Fundamentos
Tipos de SO
Interrupção
Tipos de Processos
Filas de Escalonamento
Tipos de Escalonamento
O que é um Sistema
Operacional?
• É uma máquina estendida
– Oculta os detalhes complicados que têm quer ser executados
– Apresenta ao usuário uma máquina virtual, mais fácil de usar
• É um gerenciador de recurso (ex. CPU)
– Cada programa tem um tempo com o recurso
– Cada programa tem um espaço no recurso
Conceitos Básicos
Tipos de S.O.
Monotarefa
• Multitarefa
• Monousuário
• Multiusuário
Como evitar que um processo monopolize o sistema?
Sistemas de tempo compartilhado (Time Sharing Systems)
• Permite sistemas interativos (entrada/saída)
• Requer temporizadores (timers)
• Interrupções
Conceitos Básicos: Tipos de S.O.
Multiprocessamento
• O índice do processo contém o apontador para a lista de processos
• PC (Program Counter) = contador de programas
• Uma troca de processos consiste em trocar o valor dos registradores de contexto da CPU
Memória
Regs da CPU
Índ. Processo
...
Lista de proc.
...
...
Contexto
Proc. A.
Dados
Código
Contexto
Dados
Proc. B.
Código
PC
Base
Limite
Outros regs
Conceitos Básicos: Tipos de S.O.
O que é necessário para haver multiprocessamento?
• Suporte do Hardware
– Temporizadores (timers)
– Interrupções
– Proteção de memória
• Suporte do S.O.
– Escalonamento dos processos
– Alocação de memória
– Gerenciamento dos periféricos
Conceitos Básicos:
A importância da Interrupção
• Num sistema simples, CPU deve esperar a execução do comando de E/S
– A cada chamada do comando write a CPU fica esperando o dispositivo executar o comando. Ex: escrita em disco
Conceitos Básicos:
A importância da Interrupção
• Um sistema com interrupção não fica esperando
– A CPU solicita o write e fica executando outras tarefas até ser interrompida pelo disco.
Ex: escrita em disco
Conceitos Básicos
Operação Básica da CPU
Busca