Gerência de Recursos Processador

Slides:



Advertisements
Apresentações semelhantes
Sistemas Operacionais - Aula 6
Advertisements

Sistemas Operacionais
Escalonamento de Processos Uniprocessador
Sistemas Operacionais
Sistemas Operacionais Gerência de Processador
INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES E SISTEMAS OPERACIONAIS VIVIANE LUCY Sistemas Operacionais Gerência de Processador WebDesign Redes de Computadores.
Escalonamento de Processos
Arquitetura de Sistemas Operacionais
Processos.
Profa. Priscila Facciolli
Gerência do Processador
Gerência do Processador
Evolução Arquitetural e Microprogramação
Escalonamento Linux.
Arquitetura de Sistemas Operacionais
Capítulo 5: Escalonamento de CPU
SSC SISTEMAS OPERACIONAIS I Aulas 6 – Escalonamento de Processos
SSC SISTEMAS OPERACIONAIS I Aulas 5 – Escalonamento de Processos
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação SSC SISTEMAS OPERACIONAIS I Turmas.
Alessandro Nakamuta Bruno Guazzelli Batista
SSC SISTEMAS OPERACIONAIS I
Alessandro Nakamuta Bruno Guazzelli Batista
Sistemas Operacionais
Escalonamento de Processos
Processos Conceitos Básicos.
Estruturas de Controle
Escalonamento Aula 7.
Arquitetura de Sistemas Operacionais
Curso Técnico em Manutenção e Suporte em Informática
Claudio de Oliveira – Gerência do Processador 09/03/10 20:13 Claudio de Oliveira –
Threads.
Sistemas Operacionais I
Conceitos de sistema operacional com Java – 7 a edição, 15/11/2006 Silberschatz, Galvin e Gagne ©2007 Capítulo 5: Escalonamento de CPU.
Sistemas Operacionais
Sistemas Operacionais Aula 4
Unidade 1-1 Processos e Threads
Sistemas Operacionais
Sistemas Operacionais
Gerência do processador
Sistema Operacional Processos
Sistemas Operacionais Profª Adriana Vettorazzo
Unidade 2 - Parte 1 Programação Concorrente
Escalonamento de Processos
Conteúdo Processos e threads Partes do processo
Tornar mais eficiente o aproveitamento dos recursos do computador
Claudio de Oliveira – Processos 09/03/10 20:13 Claudio de Oliveira –
Processos.
Sistemas Operacionais
SISTEMAS OPERACIONAIS I
SISTEMAS OPERACIONAIS I
Escalonamento com prioridades
Prof. Alexandre Monteiro Recife
Sistemas Operacionais
Escalonamento de Processos e Threads
GERÊNCIA DE PROCESSOS Disciplina: Sistemas Operacionais II.
SISTEMAS OPERACIONAIS I
Sistemas Operacionais
Sistemas Operacionais
S ISTEMAS OPERACIONAIS PROCESSOS Horácio Ribeiro.
Escalonamento de Processos
SISTEMAS OPERACIONAIS
Engenharia de Sistemas Embarcados Aula 9: Salvo RTOS.
Bruno Affonso Diego Chiquito Ruan Berté.   O código de Escalonamento no Windows é implementado no Kernel.  A rotina que desempenha as tarefas do Escalonador.
Sistemas Operacionais
Informática Aplicada Sistemas Operacionais: processos, tarefas e Algoritmos de escalonamento de processo Alunos: Marcelo Bonfim, Giovanni Faria, Diego.
Sistemas Operacionais
Sistemas Operacionais
Sistemas Operacionais
Bruna Cavallero Martins Universidade Católica de Pelotas.
Transcrição da apresentação:

Gerência de Recursos Processador 27/05/08 Gerência de Recursos Processador Escalonamento e Algoritmos de Escalonamento Disciplina: Sistemas Operacionais Profº. Helvio Jeronimo Junior Notas de Aulas das Profªs Marília Silva / Etelvira Leite

GERÊNCIA DE PROCESSADOR 27/05/08 GERÊNCIA DE PROCESSADOR Com o surgimento dos sistemas multiprogramáveis, nos quais múltiplos processos poderiam permanecer na memória principal compartilhando o uso da UCP, a gerência de processador tornou-se importante. Política de escalonamento pode ser entendida como os critérios utilizados para seleção de qual processo (em estado de pronto) deve fazer a utilização do processador.

GERÊNCIA DE PROCESSADOR 27/05/08 GERÊNCIA DE PROCESSADOR Cada sistema operacional possui sua política de escalonamento adequada ao seu propósito e as suas características. Sistemas de tempo compartilhado por exemplo, possui requisitos de escalonamento distintos dos sistemas de tempo real. Função do escalonador (scheduler) – rotina responsável por implementar os critérios da política de escalonamento. Dispatcher – rotina responsável pela troca de contexto dos processos após o escalonador determinar qual processo deve fazer uso do processador.

CRITÉRIOS DE ESCALONAMENTO 27/05/08 CRITÉRIOS DE ESCALONAMENTO UTILIZAÇÃO DO PROCESSADOR - corresponde a uma taxa de utilização, que na maioria dos sistemas varia entre 30 e 90%. Uma utilização abaixo dos 30% indicaria um sistema ocioso, com carga de processamento baixa, enquanto uma taxa de utilização acima dos 90% pode indicar um sistema bastante carregado, próximo da sua capacidade máxima (em alguns casos tal situação pode levar a um crash – travamento do sistema). THROUGHPUT – nº de processos executados em um determinado intervalo de tempo. Quanto maior for este, maior o nº de tarefas executadas em função do tempo.

CRITÉRIOS DE ESCALONAMENTO 27/05/08 CRITÉRIOS DE ESCALONAMENTO TEMPO DE PROCESSADOR – tempo que o processador leva em estado de execução durante seu processamento.. TEMPO DE ESPERA – é o tempo total que um processo permanece na fila de pronto durante seu processamento, aguardando para ser executado. TEMPO DE TURNAROUD – tempo que um processo leva desde sua criação até seu término, levando em consideração todo o tempo gasto na espera para alocação de memória, espera na fila de pronto, processamento na UCP e na fila de espera.

CRITÉRIOS DE ESCALONAMENTO 27/05/08 CRITÉRIOS DE ESCALONAMENTO TEMPO DE RESPOSTA – é o tempo decorrido entre a requisição ao sistema ou à aplicação e o instante em que a resposta é exibida. OBSERVAÇÃO Políticas de escalonamento em geral, buscam: Otimizar a utilização do processador e throughput; Diminuir tempos de turnaround, espera e resposta.

27/05/08 PREEMPÇÃO Possibilidade de um sistema operacional interromper um processo em execução e substituí-lo por um outro. Sistemas operacionais que implementam escalonamento com preempção são mais complexos, contudo possibilitam políticas de escalonamento mais flexíveis.

ESCALONAMENTO NÃO PREEMPTIVO 27/05/08 ESCALONAMENTO NÃO PREEMPTIVO Predominava o processamento em batch. Quando um processo está em execução, nenhum evento externo pode ocasionar a perda do uso do processador. O processo somente sai do estado de execução caso termine seu processamento ou execute instruções do próprio código que ocasione uma mudança para o estado de espera.

ESCALONAMENTO PREEMPTIVO 27/05/08 ESCALONAMENTO PREEMPTIVO O sistema operacional pode interromper um processo em execução e passá-lo para o estado de pronto, com o objetivo de alocar outro processo na UCP. É possível priorizar a execução de processos, como no caso de aplicações de tempo real, onde o fator tempo é crítico. Atualmente, a maioria dos sistemas operacionais implementam políticas de escalonamento preemptivas que, apesar de tornarem os sistemas mais complexos, possibilitam a implementação dos diversos critérios de escalonamentos.

ALGORITMOS DE ESCALONAMENTO 27/05/08 ALGORITMOS DE ESCALONAMENTO Existem vários algoritmos que são utilizados para a realização do escalonamento, em todos eles, o principal objetivo é designar o processador para um certo processo dentre vários processos existentes, otimizando um ou mais aspectos do comportamento geral do sistema. Algoritmos de escalonamento: First In First Out (FIFO) Shortest Job First (SJF) Circular Por Prioridades Circular com Prioridades etc.

ESCALONAMENTO FIRST-IN-FIRST-OUT (FIFO) 27/05/08 ESCALONAMENTO FIRST-IN-FIRST-OUT (FIFO) O processo que chegar primeiro ao estado de pronto é selecionado para a execução. O escalonador FIFO é do tipo não preemptivo.

ESCALONAMENTO FIRST-IN-FIRST-OUT (FIFO) 27/05/08 ESCALONAMENTO FIRST-IN-FIRST-OUT (FIFO) Não garante um tempo de resposta rápido, pois é extremamente sensível a ordem de chegada de cada processo e dos antecessores (se existirem). Se processos que tendem a demorar mais tempo chegarem primeiro, o tempo médio de espera e o turnaround acabam sendo aumentados. Processos CPU-bound levam vantagem no uso do processador sobre os processos I/O-bound.

ESCALONAMENTO FIRST-IN-FIRST-OUT (FIFO) 27/05/08 ESCALONAMENTO FIRST-IN-FIRST-OUT (FIFO) O tempo médio de espera dos três processos seria igual a (0+10+14)/3 = 8 u.t O tempo médio de espera dos três processos seria igual a (0+4+7)/3 = 3,66 u.t

ESCALONAMENTO SHORTEST-JOB-FIRST (SJF) 27/05/08 ESCALONAMENTO SHORTEST-JOB-FIRST (SJF) O algoritmo seleciona o processo que tiver menor tempo de processador ainda por executar. Desta forma, o processo em estado de pronto que necessitar de menos tempo de UCP para terminar seu processamento é selecionado para a execução. O escalonamento SJF é do tipo não preemptivo. O tempo médio de espera dos três processos seria igual a (7+3+0)/3 = 3,3 u.t, e é inferior ao apresentado no escalonador FIFO.

ESCALONAMENTO CIRCULAR 27/05/08 ESCALONAMENTO CIRCULAR É um escalonamento do tipo preemptivo. Quando um processo passa o estado de execução existe um tempo-limite para o uso contínuo do processador denominado fatia de tempo (time-slice) ou quantum. Toda vez que um processo é escalonado para execução uma nova fatia de tempo é concedida. Caso a fatia de tempo expire, o sistema operacional interrompe o processo em execução, salva seu contexto e direciona-o para o final da fila de pronto. Esse mecanismo é conhecido como preempção por tempo.

ESCALONAMENTO CIRCULAR 27/05/08 ESCALONAMENTO CIRCULAR

ESCALONAMENTO CIRCULAR 27/05/08 ESCALONAMENTO CIRCULAR

ESCALONAMENTO POR PRIORIDADES 27/05/08 ESCALONAMENTO POR PRIORIDADES É um escalonamento do tipo preemptivo realizado com base em um valor associado a cada processo denominado prioridade de execução. O processo com maior prioridade no estado de pronto é sempre escolhido para execução, e processos com valores iguais são escalonados seguindo o critério FIFO. Se durante a execução de um processo, aparecer um outro na fila de pronto com prioridade maior, o SO deverá interromper o processo corrente, salvar seu contexto e colocá-lo no estado de pronto. Este mecanismo é conhecido como preempção por prioridade.

ESCALONAMENTO POR PRIORIDADES 27/05/08 ESCALONAMENTO POR PRIORIDADES

ESCALONAMENTO POR PRIORIDADES 27/05/08 ESCALONAMENTO POR PRIORIDADES

ESCALONAMENTO CIRCULAR COM PRIORIDADES 27/05/08 ESCALONAMENTO CIRCULAR COM PRIORIDADES Implementa o conceito de fatia de tempo e de prioridade de execução associada a cada processo. Neste escalonamento, um processo permanece no estado de execução até que termine seu processamento, ou voluntariamente passe para o estado de espera (interrupção por E/S), ou sofra uma preempção por tempo ou prioridade. A principal vantagem deste escalonamento é permitir um melhor balanceamento no uso do processador, com a possibilidade de diferenciar o grau de importância dos processos através da prioridade (o Windows e o UNIX utilizam este escalonamento).

ESCALONAMENTO CIRCULAR COM PRIORIDADES 27/05/08 ESCALONAMENTO CIRCULAR COM PRIORIDADES

ESCALONAMENTO CIRCULAR COM PRIORIDADES 27/05/08 ESCALONAMENTO CIRCULAR COM PRIORIDADES No escalonamento circular com prioridades estáticas , a prioridade definida no contexto de software de cada processo permanece inalterada ao longo da sua existência. No escalonamento circular com prioridades dinâmicas, é possível que a prioridade de um processo seja alterada dinamicamente pelo administrador do sistema ou, em algumas políticas, pelo sistema operacional.

01/04/2017 EXERCÍCIOS Considere que cinco processos sejam criados no instante de tempo 0 (P1, P2, P3, P4 e P5) e possuam as características descritas na tabela a seguir: PROCESSO TEMPO DE UCP PRIORIDADE P1 10 3 P2 14 4 P3 5 1 P4 7 2 P5 20

01/04/2017 EXERCÍCIOS Desenhe um diagrama ilustrando o escalonamento dos processos e seus respectivos tempos de turnaround, segundo as políticas especificadas a seguir. O tempo de troca de contexto deve ser desconsiderado. a) FIFO b) SJF c) Prioridade (número menor implica prioridade maior) d) Circular com fatia de tempo igual a 4 u.t.

01/04/2017 EXERCÍCIOS Existem quatro processos (P1, P2, P3, P4) na fila de pronto, com tempos de UCP estimados em 9, 6, 3 e 5 respectivamente. Em que ordem os processos devem ser executados para minimizar o tempo de turnaround dos processos? O que é política de escalonamento de um sistema operacional? Quais as funções do escalonador? Quais os principais critérios utilizados em uma política de escalonamento? Diferencie os tempos de processador, espera, turnaround e resposta. Diferencie os escalonamentos preemptivos e não preempitivos.

Bibliografia Machado, F. B., Maia, L. P. Arquitetura de Sistemas Operacionais. 4ª edição. Rio de Janeiro: LTC, 2011. Notas de Aulas das Profª. Etelvira Leite e Marília.