Buscar

Gerência do Processador

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 22 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 22 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 22 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

SISTEMAS OPERACIONAIS PARA REDES
Prof. Luiz di Marcello
Aula 3 – Gerência do Processador
OBJETIVOS DA AULA
Descrever o funcionamento do escalonador
 Diferenciar políticas preemptivas de não-preemptivas
 Identificar as políticas de escalonamento
GERÊNCIA DO PROCESSADOR
Escalonador e Escalonamento 
O processador (UCP) é o componente do computador que realiza (executa) as instruções dos programas
Com a possibilidade da UCP ser compartilhada entre diversos processos (multiprogramação), o SO possui critérios para realizar a seleção do(s) processo(s) que serão executados, ou seja, aquele(s) que irão transitar do estado de PRONTO para o estado de EXECUÇÃO
*Os novos sistemas computacionais são multicore
GERÊNCIA DO PROCESSADOR
A parte do código do SO responsável pelo escalonamento (scheduling) é o escalonador (scheduler)
Escalonador e Escalonamento 
GERÊNCIA DO PROCESSADOR
Portanto, para determinar a ordem com que os processos serão executados, o escalonador utiliza critérios definidos por um algoritmo ou política de escalonamento de processos
Isso consiste na Gerência do Processador
Escalonador e Escalonamento 
GERÊNCIA DO PROCESSADOR
Algoritmos de escalonamento consideram vários fatores:
A taxa de utilização de UCP: medição da ocupação da UCP
Throughput: quantidade de processos terminados por unidade de tempo
Turnaround: tempo transcorrido desde o momento em que o processo entra (criação/admissão) e o instante em que termina sua execução; digamos que seja o “tempo de vida”
Tempo de resposta: tempo decorrido entre o instante da submissão de um e a apresentação da resposta
Tempo de espera: tempo total gasto na fila de PRONTO
Política de Escalonamento: Objetivos
GERÊNCIA DO PROCESSADOR
É a capacidade que o SO tem de tirar de execução um processo em detrimento de outro
Capacidade de um SO interromper um processo em execução e substituí-lo por um outro, ocasionando troca de contexto
Preempção (ou Preemptividade): Definição
GERÊNCIA DO PROCESSADOR
Uma tarefa pode deixar a UCP (sair de EXECUÇÃO), caso termine sua fatia de tempo (preempção por tempo), execute uma chamada de sistema ou caso ocorra uma interrupção que acorde uma tarefa mais prioritária (preempção por prioridade), que estava suspensa aguardando um evento
A cada interrupção, exceção ou chamada de sistema, o escalonador pode reavaliar todas as tarefas da fila de PRONTO e decidir se mantém ou substitui a tarefa em EXECUÇÃO
Escalonamento Preemptivo
GERÊNCIA DO PROCESSADOR
A tarefa em execução permanece no processador tanto quanto possível, só abandonando-a caso termine de executar, solicite uma operação de entrada/saída ou libere explicitamente o processador, voltando à fila de tarefas prontas
Esses sistemas são ditos cooperativos quando há a cooperação das tarefas entre si, auxiliando na gestão do processador
Escalonamento Não-Preemptivo
GERÊNCIA DO PROCESSADOR
Trata-se do algoritmo de escalonamento de implementação mais simples: o primeiro processo que solicita a CPU é o primeiro a ser alocado
Os processos em estado de PRONTO são organizados com base na política FIFO (First In First Out)
O tempo médio de espera é um tanto longo e os processos importantes podem ser obrigados a esperar devido à execução de outros processos menos importantes dado que não há distinção entre processos
Escalonamento First Come First Served (FCFS)
Políticas de Escalonamento Não-Preemptivas
GERÊNCIA DO PROCESSADOR
O processo que tem o menor ciclo de processamento (tempo de execução) será selecionado para usar o processador
Esta política é considerada ótima, mas impossível de implementar na prática, já que não há modo de saber o tempo de duração do processo
Escalonamento Shortest Job First (SJF)
Políticas de Escalonamento Não-Preemptivas
GERÊNCIA DO PROCESSADOR
A cada processo é associada uma prioridade e a CPU é alocada para o processo com a mais alta prioridade
Processos com prioridades iguais são escalados segundo a política FCFS
O maior problema deste escalonamento é o starvation (processo de baixa prioridade indefinidamente postergado), que pode ser prevenido com aging: aumento gradual da prioridade de um processo, à medida que ele fica esperando
Escalonamento por Prioridade
Políticas de Escalonamento Preemptivas
GERÊNCIA DO PROCESSADOR
A prioridade de um processo pode ser de dois tipos:
Prioridade estática: não muda durante a vida do processo
Prioridade dinâmica: prioridade ajustada de acordo com o tipo de processamento e/ou carga do sistema
A preempção por prioridade ocorre quando o SO retira um processo em EXECUÇÃO para dar lugar a outro processo de maior prioridade
Escalonamento por Prioridade
Políticas de Escalonamento Preemptivas
GERÊNCIA DO PROCESSADOR
Os processos entram na fila de PRONTO na ordem de chegada e sai o primeiro que chegou (FIFO), sendo que cada processo ganha um tempo limite (fatia de tempo, time-slice ou quantum) para EXECUÇÃO
Após esse tempo ele é interrompido (preempção por tempo) e colocado no final da fila de PRONTO
Se o quantum for suficiente para o processo finalizar ou se o processo solicitar uma operação de E/S, outro processo do início da fila é selecionado para executar
Escalonamento Round Robin ou Circular
Políticas de Escalonamento Preemptivas
GERÊNCIA DO PROCESSADOR
O tempo médio de espera é geralmente longo
O desempenho do algoritmo depende bastante da escolha do quantum, já que a troca de contexto (alternar entre um processo e outro) gasta tempo: quantum muito pequeno ocasiona grande quantidade de trocas de processos e a eficiência da CPU é reduzida; quantum muito grande pode tornar a política Round Robin numa FCFS comum
Escalonamento Round Robin ou Circular
Políticas de Escalonamento Preemptivas
GERÊNCIA DO PROCESSADOR
Implementa diversas filas de processos em estado de PRONTO, uma para cada prioridade; a prioridade é da fila e não do processo
Cada fila separada tem algoritmo de escalonamento próprio (ex.: foreground (interativos) usam escalonamento Round Robin, enquanto background (batch) usam algoritmo FCFS
Os processos devem ser classificados previamente em função do tipo de escalonamento para poderem ser corretamente alocados nas filas; não permite mudança de fila
Escalonamento por Múltiplas Filas (sem Realimentação)
Políticas de Escalonamento Preemptivas
GERÊNCIA DO PROCESSADOR
O sistema tenta identificar dinamicamente o comportamento de cada processo, ajustando suas prioridades de execução e mecanismos de escalonamento (mecanismo adaptativo)
Também há prioridade entre as filas; o sistema só pode escalonar processos de uma das filas quando todas as outras de maior prioridade estiverem vazias
Escalonamento por Múltiplas Filas com Realimentação
Políticas de Escalonamento Preemptivas
GERÊNCIA DO PROCESSADOR
O processo é criado e entra no final da fila de maior prioridade; quando deixa a CPU por preempção por tempo, o processo é redirecionado para uma fila de menor prioridade, onde a fatia de tempo é maior
Quanto maior for a prioridade de uma fila, menor será a fatia de tempo associada a esta fila
Escalonamento por Múltiplas Filas com Realimentação
Políticas de Escalonamento Preemptivas
GERÊNCIA DO PROCESSADOR
É usado quando existem vários processadores, havendo compartilhamento da carga de processamento
Implementa-se uma só fila de PRONTO, que pode ser atendida de diferentes formas:
Cada processador vai à fila e seleciona um processo; não se pode permitir que um processo seja escolhido por mais de um processador e/ou que um processo não seja escolhido por nenhum processador
Escalonamento com Múltiplos Processadores
Políticas de Escalonamento Preemptivas
GERÊNCIA DO PROCESSADOR
Implementa-se uma só fila de PRONTO, que pode ser atendida de diferentes formas:
Usar um processador como escalonador de processos para os outros processadores, criando uma estrutura mestre-escravo (master-slave)
Um processador é responsável por todas as decisões de escalonamento, processamento de E/S, etc. (multiprocessamento assimétrico); osdemais processadores só executam código do usuário
Escalonamento com Múltiplos Processadores
Políticas de Escalonamento Preemptivas
GERÊNCIA DO PROCESSADOR
Tempo real HARD: as tarefas têm que terminar em tempos definidos, o SO tem que admitir o processo somente quando ele poderá terminar na hora certa; normalmente, este tipo de sistema possui hardware específico
Tempo real SOFT: neste tipo de sistema, os processos de tempo real devem ter a mais alta prioridade; nesse caso não deve haver time sharing; o tempo de latência deve ser pequeno para que o processo possa começar a executar o mais rapidamente possível
Escalonamento de Tempo Real
Políticas de Escalonamento Preemptivas
GERÊNCIA DO PROCESSADOR
Engenheiro de Sistemas e Computação pela UERJ, Especialista em Sistemas Abertos e Mestre em Educação. Atualmente, é Coordenador (Graduação e Pós-Graduação), Professor adjunto e Tutor da Universidade Estácio de Sá. Tem experiência na área de Ciência da Computação, com ênfase em Arquitetura de Sistemas de Computação e Tecnologias da Informação e Computação, e também na área de Educação, com ênfase em Tecnologias de Informação e Comunicação nos Processos Educacionais
http://lattes.cnpq.br/6477530917342363
Prof. Luiz di Marcello Senra Santiago
GERÊNCIA DO PROCESSADOR

Outros materiais