GERENCIAMENTO DO PROCESSADOR. Prof. Maicon A. Sartin

Tamanho: px
Começar a partir da página:

Download "GERENCIAMENTO DO PROCESSADOR. Prof. Maicon A. Sartin"

Transcrição

1 GERENCIAMENTO DO PROCESSADOR Prof. Maicon A. Sartin

2 Introdução Em sistema multiprogramáveis a UCP é compartilhada entre diversos processos Existem critérios para determinar a ordem de escolha para a execução dos processos O escalonamento é o procedimento de seleção dos processos para execução Execução Escalonamento O escalonador é o responsável pelo escalonamento O escalonamento evita o starvation nos processos Espera Pronto

3 Introdução O escalonador deve escolher entre os processos prontos, qual irá ser alocado na UCP Algoritmo de escalonamento faz essa seleção baseado em alguns critérios Critérios Utilização da UCP Deseja-se que a UCP permaneça a maior parte do tempo ocupada 30% (carga baixa) 90% (Carga Alta) Throughput É o número de processos executados em um determinado intervalo de tempo

4 Critérios de Escalonamento Critérios Tempo de tunaround Tempo que um processo leva desde a sua admissão no sistema até o seu término Tempo de resposta É o tempo decorrido do momento da submissão de um pedido ao sistema até a primeira resposta produzida

5 Escalonamento Não-preemptivo Quando um processo ganha o direito de usar a CPU, nenhum outro processo pode lhe tirar esse recurso Escalonamento FIFO (First-In-First-Out) O processo que chegar primeiro é o primeiro a ser selecionado para execução É necessária apenas uma fila Os processos que estão sendo executados não podem ser interrompidos Criação Fila dos processos no estado de Pronto UCP Término Espera

6 Escalonamento Não-preemptivo Escalonamento SJF (Shortest-Job-First) É selecionado para execução o processo: Em estado de pronto, que precisar de menos tempo de UCP para terminar seu processamento O SJF e o FIFO não são aplicados em sistemas de tempo compartilhado

7 Escalonamento Não-preemptivo Processo A Processo B SJF Processo C u.t. Processo A Tempo de processador (u.t.) 10 Processo A B C 4 3 Processo B Processo C Processo A u.t. Processo B FIFO Processo C u.t.

8 Escalonamento Preemptivo Quando o sistema pode interromper um processo em execução para que outro processo utilize o processador Escalonamento Circular (Round Robin) Algoritmo projetado para sistemas de tempo compartilhado Semelhante ao FIFO Quando expira o tempo (time-slice ou quantum) Preempção por tempo Criação Fila dos processos no estado de Pronto UCP Término Preempção por tempo Espera

9 Escalonamento Preemptivo Escalonamento por Prioridades O RR trata os processos de maneira igual (CPU e I/O Bound) Processos de maior prioridade são escalonados primeiro A preempção é por prioridade (Contexto de Software) - Prioridade Estática não é modificada durante a existência do processo - Prioridade Dinâmica pode ser ajustada de acordo com o tipo de processamento e/ou a carga do sistema Todos os sistemas de tempo compartilhado implementam algum esquema de prioridade

10 Escalonamento Preemptivo Escalonamento por Prioridades Filas dos processos no estado de Pronto Prioridade P1 Prioridade P2 Criação UCP Término Prioridade Pn Preempção por prioridade Espera

11 Escalonamento Preemptivo Escalonamento por Múltiplas Filas Pela diversidade dos tipos de processos do sistema Geralmente são vários mecanismos de escalonamento Classifica os processos quanto ao tipo de processamento : Implementar diversas filas de processo no estado de pronto Cada fila possui uma prioridade associada Maior prioridade Fila de processos do sistema Fila de processos interativos UCP Menor prioridade Fila de processos batch

12 Escalonamento Preemptivo Escalonamento por Múltiplas Filas com Realimentação Maior Prioridade Fila 1 (FIFO Adaptado) Preempção por tempo Menor fatia de tempo Os processos alteram o seu comportamento no decorrer do tempo Fila 2 (FIFO Adaptado) Preempção por tempo Redireciona-se para uma fila adequada Fila 3 (FIFO Adaptado) UCP Identifica dinamicamente o comportamento de cada processo Preempção por tempo Esse ajuste é denominado mecanismo adaptativo Menor Prioridade Fila n (Circular) Preempção por tempo Maior fatia de tempo

13 Escalonamento Preemptivo Escalonamento de Sistemas de Tempo Real É realizado o escalonamento baseado no esquema de prioridades de forma estática Não devem ser alteradas as prioridades

14 Referências TANEMBAUN, A. S.; WOODHULL, A. S. Sistemas Operacionais Projeto e Implementação". Bookman, MACHADO, F. B. "Arquitetura de sistemas operacionais". LTC, GUALEVE, J. A. F. Sistemas Operacionais. Brasília: Universidade GUALEVE, J. A. F. Sistemas Operacionais. Brasília: Universidade Católica de Brasília, 2006.