Escolar Documentos
Profissional Documentos
Cultura Documentos
• Introdução
• Modelo do Processo
• Bloco de Controle do Processo (PCB)
• Contextos
• Estado do Processo
• Escalonamento
• Filas de Escalonamento
• Escalonadores
• Questões
Processos
Introdução
• Primeiros Sistemas
• Apenas um programa podia ser executado de cada vez (esse programa
tinha controle completo do sistema e acesso a todos os recursos do sist.)
• O computador possuía controle completo do programa
• Sistemas Multiprogramáveis
• Compartilhar diversos programas
• Conceito de Processo se tornou importante
1
Processos
Introdução
• Um sistema portanto, consiste de uma coleção de processos (processos
do S.O e processos de usuário).Todos esses processos podem executar
ao mesmo tempo sendo a CPU (ou CPU´s) multiplexadas entre eles.
Processos
2
Modelo de Processo
Modelo de Processo
Número do Processo
Contador do Programa
Indica o endereço da próxima instrução
Lista de arquivos
Abertos
...
3
PCB
Tabela de Processos
• Tabela que o SO mantém com ponteiros para cada PCB
• Permite acesso rápido aos PCBs
• Processo é retirado da tabela quando finalizado
PID PCB
1 .
2 . PCB #
Estado do
... ... PCB # Ponteiro
Processo
n . PCB # Ponteiro
Estado do
Processo Número do Processo
Estado do
Ponteiro Número do Processo Contador do Programa
Processo
Contador do Programa
Registradores
Limites da Memória
Registradores
Limites da Memória Lista de arquivos
Abertos
Limites da Memória Lista de arquivos
Abertos ...
Lista de arquivos
Abertos ...
...
Estado do Processo
Mudança de Estado
• O processo muda de estado diversas vezes
• Eventos Voluntários – Originados pelo Processo
• Eventos Involuntários – Originados pelo S.O.
Encerrado
• Mudanças Possíveis (terminated)
• Novo – Pronto
• Pronto – em Execução Conclusão de saída
• Em Execução – Pronto
I/O ou evento em Espera
(waiting)
• Em Execução – em Espera
• Em Execução – Encerrado espera por
• Em Espera – Pronto interrupção I/O ou evento
em
Novo Pronto
Execução
(new) aceito (ready) Escolha do (running)
escalonador
4
Escalonamento de Processos
• Multiprogramação
• Processos em execução o tempo todo
• Tempo Compartilhado
• Alternar CPU entre Processos de forma freqüente
• Vários Processos
• Um processador – Apenas um Processo em execução
• Demais Processos – Aguardando
Escalonamento
Filas de Escalonamento
• Fila de Tarefas (Jobs Queue) ou Processos Novos
• Processos são colocados na Fila a medida que entram no sistema
5
Escalonamento
Filas de Escalonamento
Cabeçalho da Fila
Fila de Início PCB # 003 PCB # 005
processos
Fim Registradores Registradores
Prontos . .
. .
. .
Início
Dispositivo
1 Fim
Escalonamento
Escalonadores (Scheduler)
• Um processo migra entre várias filas de escalonamento ao longo de sua vida. O
S.O deve selecionar, para fins de escalonamento, os processos dessas filas de
alguma forma.
6
Escalonamento
• Referência
• Se demorar 10 ms
• Desperdício de ~9 % do tempo da CPU
Escalonamento