Gerência do Processador - IME-USPadao/GP.pdf · 2019-04-08 · Gerência do processador Gerência...
Transcript of Gerência do Processador - IME-USPadao/GP.pdf · 2019-04-08 · Gerência do processador Gerência...
1
Gerência do Processador
Adão de Melo Neto
2
3
4
SISTEMA OPERACIONAL(SO)DEFINIÇÃODEFINIÇÃO
É um conjunto de rotinas ou processos (executado pelo processador) que controla o funcionamento do computador como gerente dos diversos recursos do computador
(processadores, memórias e dispositivos de entrada e saída).
Facilita o acesso aos recursos do sistema
Permite o compartilhamento derecursos de forma organizada
PROCESSOTodo programa para ser executado gera um ou
processos que são colocados na memória para ser executado pelo processador .
Podemos definir processo como programa em execução.Exemplo: Firefox pode gerar vários processos
5
Sistema Operacional
• O Sistema Operacional é formado por um Conjunto de processos (denominado KERNEL) que oferece serviços aos usuários e suas aplicações
Listagem de alguns processos (rotinas)
IDT PROCESSO Tempo de utilização do processadorIDT USUÁRIO
PRÁTICA:Abra o terminal de comandos e digite ps –lA para identificar processos sendo executadas. Entre esses processos existem os do Kernel do Sistema Operacional.
7
Serviços Oferecidos pelo Kernel Tratamento de interrupções e exceções; Criação, eliminação, sicronização, escalonamento e controle de processos Gerência do processador Gerência da memória Gerência do sistema de arquivos. Gerências das operações de entrada e saída; Suporte a redes locais e distribuídas contabilização, auditoria e segurança do sistema
O KERNEL de um Sistema Operacional é um Conjunto de processos que oferece serviços
aos usuários e suas aplicações
8
Estados de um processoEstado de Execução
Quando está sendo executado pela CPU
Quando apenas aguarda oportunidade para ser
executado
Estado de Espera(bloqueado)
Quando aguardaalgum evento externo ou algum
recurso para prosseguir seuprocessamento
Após criação do processo o mesmo
vai para lista de processos em estado de
pronto
EXEMPLOAguardando o término de operação de E/S
Aguardando data/hora para continuar operação
preempção
Escalonamento
9
Sistemas Multiprogramáveis:– Múltiplos processos podem permanecer na memória principal
compartilhando o uso da CPU.– ESCALONAMENTO
Passagem de um processo (na memória) para o estado de execução.
PROCESSO
apenas um processoem execução pelo processador
10
POLÍTICA DE ESCALONAMENTO São um critérios que determinar qual processo em estado de pronto será
escolhido para fazer uso do processador
SISTEMA DE TEMPO COMPARTILHADO
11
O que deseja-se MAXIMIZAR/MINIMIZAÇÃO em uma POLITICA DE ESCALONAMENTO?
Utilização do ProcessadorUtilização do Processador– Quando o valor é de 30% (sistema com carga baixa)– Quando o valor é de 90% (sistema bastante carregado)
ThroughputThroughput
– Número de processos executados em determinado intervalo de tempo Tempo de esperaTempo de espera
• Tempo que um processo fica no estado de pronto aguardando ser executado Tempo de TurnaroundTempo de Turnaround
– Tempo que leva desde a criação do processo até seu término Tempo de RespostaTempo de Resposta
– Tempo decorrido desde a requisição ao sistema até o instante que a resposta é exibida
Busca-se maximizar Busca-se minimizar
12
Escalonamentos Preemptivos Não-Preemptivos
PREEMPÇÃOCapacidade do sistema operacional interromper um processo e
substituí-lo por um outro
ESCALONAMENTO PREEMPTIVOSESCALONAMENTO PREEMPTIVOS((o sistema operacional pode o sistema operacional pode interromper interromper um processo e passá-lo para o estado de um processo e passá-lo para o estado de
pronto, a fim de alocar outro processo na pronto, a fim de alocar outro processo na CPU)CPU)
ESCALONAMENTOS NÃO-ESCALONAMENTOS NÃO-PREEMPTIVOSPREEMPTIVOS
((nenhum evento pode nenhum evento pode ocasionar ocasionar a perda do uso do processador)a perda do uso do processador)
preempção
Escalonamento
13
Troca de Estados de um ProcessoTroca de Estados de um Processo
Quando um processo é criado ele Quando um processo é criado ele entra no final da fila de estados de entra no final da fila de estados de prontopronto
Saída do estado de execução: Saída do estado de execução: – termino do processamentotermino do processamento ou ou
– ida para ida para o o estado esperaestado espera Espera Espera ExecuçãoExecução: os processos entram : os processos entram no final da fila no final da fila de pronto.de pronto.
preempção
Escalonamento
14
TIPOS DE ESCALONAMENTOSTIPOS DE ESCALONAMENTOS
NOME PREEMPÇÃO
FIFO Não (sistema monoprogramado)
SJF Não (sistema monoprogramado)
Circular (Round Robin Schedule) Sim (preempção por tempo)
Prioridades Sim (preempção por prioridades)
15
ESCALONAMENTO FIRST-IN_FIRST-OUT (FIFO)ESCALONAMENTO FIRST-IN_FIRST-OUT (FIFO)
EscalonamentoEscalonamento: : o escalonamento ocorre quando o o escalonamento ocorre quando o processo alcança início da fila de estados de prontoprocesso alcança início da fila de estados de pronto. . Não Não há preempção, ou seja, o processo fica em execução até há preempção, ou seja, o processo fica em execução até terminarterminar..
F I
Escalonamento
16
ESCALONAMENTO FIRST-IN_FIRST-OUT (FIFO)ESCALONAMENTO FIRST-IN_FIRST-OUT (FIFO)
VantagensVantagens– SimplesSimples
DesvantagensDesvantagens– Não dá para prever quando um processo terá sua execução Não dá para prever quando um processo terá sua execução
iniciadainiciada
17
ESCALONAMENTO SHORSTEST-JOB-FIRST (SJF)ESCALONAMENTO SHORSTEST-JOB-FIRST (SJF)
EscalonamentoEscalonamento: : o escalonamento seleciona o processo em o escalonamento seleciona o processo em estado de pronto que tiver o estado de pronto que tiver o menor menor tempo de processador tempo de processador ainda por executarainda por executar. . Não há preempção, ou seja, o processo fica Não há preempção, ou seja, o processo fica em execução até terminarem execução até terminar..
O tempo de processadorO tempo de processador é estimado com base em análises estatísticas de é estimado com base em análises estatísticas de execuções passadas.execuções passadas.
A (10)B (4)C (3)
A (10) B (4) C (3)
Ordem na Fila (exemplo)
Ordem do Escalonamento
Escalonamento
18
ESCALONAMENTO SHORSTEST-JOB-FIRST (SJF)ESCALONAMENTO SHORSTEST-JOB-FIRST (SJF)
VantagemVantagem– Redução doRedução do tempo médio de turnaround tempo médio de turnaround dos processos.dos processos.
DesvantagensDesvantagens– Dificuldade de se estimar o Dificuldade de se estimar o tempo de processador.tempo de processador.
Tempo de TurnaroundTempo de TurnaroundTempo que leva desde a criação até seu términoTempo de processadorTempo de processadorTempo que um processo leva no estado de execução durante seu processamento
19
ESCALONAMENTO CIRCULAR (Round Robin Schedule)ESCALONAMENTO CIRCULAR (Round Robin Schedule)
Escalonamento preemptivo (preempção por tempo)Escalonamento preemptivo (preempção por tempo) Projetado para sistemas de tempo compartilhado.Projetado para sistemas de tempo compartilhado. É semelhante ao FIFO com preempção por tempo.É semelhante ao FIFO com preempção por tempo. Existe um tempo limite para o uso do processados (Existe um tempo limite para o uso do processados (time-slicetime-slice). No ). No
fim deste tempo, o sistema operacional interrompe o processo, e o fim deste tempo, o sistema operacional interrompe o processo, e o direciona direciona ao final da fila de prontoao final da fila de pronto..
F I
Preempção (por tempo)
Escalonamento
20
ESCALONAMENTO CIRCULAR (Round Robin Schedule)ESCALONAMENTO CIRCULAR (Round Robin Schedule)
VantagensVantagens– Não permitir que um processo monopolize a CPU (redução do Não permitir que um processo monopolize a CPU (redução do
tempo de espera). tempo de espera).
– Muito adequado para Muito adequado para sistemas interativossistemas interativos DesvantagensDesvantagens
– Processos ligados ao processador são mais beneficiados no Processos ligados ao processador são mais beneficiados no uso do processador do que os processos ligados à uso do processador do que os processos ligados à entrada/saída, pois tendem a utilizar por completo a fatia de entrada/saída, pois tendem a utilizar por completo a fatia de tempo.tempo.
21
ESCALONAMENTO POR PRIORIDADESESCALONAMENTO POR PRIORIDADES Escalonamento Preemptivo (preempção por prioridade)Escalonamento Preemptivo (preempção por prioridade) Existe filas com prioridades definidas. Os processos em estado de pronto Existe filas com prioridades definidas. Os processos em estado de pronto
estarão na fila correspondente à sua própria prioridade estarão na fila correspondente à sua própria prioridade (os processos (os processos possuem uma prioridade)possuem uma prioridade)..
Preempção por prioridadePreempção por prioridade: : – Caso haja um processo na fila de pronto com prioridade maior de que o processo Caso haja um processo na fila de pronto com prioridade maior de que o processo
em execução, o sistema operacional realiza a preempção deste processo e oem execução, o sistema operacional realiza a preempção deste processo e o processo com maior prioridade em estado de pronto é escolhido para execução processo com maior prioridade em estado de pronto é escolhido para execução (escalonado).(escalonado).
22
VantagensVantagens– Permite diferenciar processos de acordo com sua importância.Permite diferenciar processos de acordo com sua importância.
– Útil em Útil em sistemas de tempo realsistemas de tempo real
DesvantagensDesvantagens– Processos com baixa prioridade Processos com baixa prioridade podem ficar indefinidamente na fila de podem ficar indefinidamente na fila de
prontopronto
ESCALONAMENTO POR PRIORIDADESESCALONAMENTO POR PRIORIDADES
Exercício 01Exercício 01
24
Exercício 01Exercício 01
P1 P2 P3 P4 P1 P2 P3 P4 P1 P3 P4 P1 P4 P4