Вы находитесь на странице: 1из 39

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos

do Escalonador Consideraes co

Escalonamento de Processos
Marcelo C. Mussel marcelo.mussel@gmail.com

27 de maro de 2012 c

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Sumrio a
1 2 3 4 5 6 7

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Marcelo C. Mussel marcelo.mussel@gmail.com
Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Introduo ca

Processos O conceito de processo , certamente, o conceito mais e importante no estudo de sistemas operacionais. Para facilitar o entendimento deste conceito, considere-se um computador funcionando em multiprogramao (isto , tendo vrios programas ca e a simultaneamente ativos na memria). o

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Alm das instrues e dados, cada programa em execuo possui e co ca uma rea de memria correspondente para armazenar os valores a o dos registradores da CPU, quando o programa, por algum motivo, no estiver sendo executado. Essa rea de memria conhecida a a o e como registro descritor.

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Assim, em um determinado sistema, cada programa em execuo ca constitui um processo. Portanto, podemos denir processo como sendo um programa em execuo, o qual constitu por uma ca e do seqncia de instrues, um conjunto de dados e um registro ue co descritor.

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Num ambiente de multiprogramao, quando existe apenas um ca processador na instalao, cada processo executado um pouco de ca e cada vez, de forma intercalada. Um processo aps receber a CPU, o s perde o controle da execuo quando ocorre uma interrupo ou o ca ca quando ele executa um trap, requerendo algum servio do sistema c operacional.

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

As interrupes so transparentes aos processos, pois o efeitos das co a mesmas apenas parar, temporariamente, a execuo de um e ca processo, o qual continuar sendo executado, mais tarde, como se a nada tivesse acontecido.

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Quando um processo est realmente usando a CPU, diz-se que o a mesmo est no estado executando (running). Quando est a a esperando pelo trmino de um servio que requereu, diz-se que e c est no estado bloqueado (blocked). Quando o processo tem todas a as condies para ser executado e s no est em execuao porque co o a a c a CPU est alocada para outro processo, diz-se que o mesmo est a a no estado pronto (ready). O sistema operacional mantm uma e lista (la) dos processos que esto prontos, a chamada lista de a processos prontos (ready list ou ready queue). O diagrama da gura 2.1 mostra como os estados de um processo podem mudar durante a execuo. ca

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

O componente do sistema operacional que, aps o atendimento de o uma interrupo ou trap, escolhe o prximo processo a ser ca o executado denominado escalonador de processos (scheduler) ou e despachador de processos (dispatcher). Quando dois ou mais processos tm condies de rodar, o escalonador que decide qual e co e ser o prximo a receber tempo de CPU. Esta deciso baseada a o a e em um algoritmo de escalonamento.

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Sumrio a
1 2 3 4 5 6 7

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Marcelo C. Mussel marcelo.mussel@gmail.com
Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

O escalonador o componente do sistema operacional que e determina qual processo vai rodar num dado tempo e quanto tempo vai rodar. Dois aspectos do escalonador: Pol tica As regras usadas para decidir qual processo vai rodar e quando ele ser trocado por a outro. Implementao As estruturas de dados e algoritmos ca usados para cumprir tais pol ticas.

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Objetivos da pol tica de escalonamento: Tempo de resposta rpido a para aplicaes interativas. co Throughput elevado para trabalhos rodando em background. Execuo da pol ca tica ecientemente e com despesas gerais m nimas. Obs: Throughput (ou taxa de transferncia) a quantidade de e e dados transferidos de um lugar a outro, ou a quantidade de dados processados em um determinado espao de tempo. c

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Sumrio a
1 2 3 4 5 6 7

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Marcelo C. Mussel marcelo.mussel@gmail.com
Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

H trs categorias de algoritmos de escalonamento: a e Em lote: sistemas no-interativos. Preemptivo ou no preemptivo a a com longos intervalos de tempo para cada processo. Interativo: preempo essencial. ca e Em tempo-real: executam somente processos que visam o progresso da aplicao (e no, genericamente, qualquer processo, ca a como no caso interativo). Eis alguns algoritmos:

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Round Robin: Cada processo executado por um intervalo de e tempo (quantum). No nal desse tempo, se o processo estiver executando, ser suspenso e a CPU, alocada a outro processo. Se a o processo terminar, ou for bloqueado, antes do nal do quantum, a CPU tambm passada para outro processo. e e

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Com Prioridades: Uma prioridade associada a cada processo, e e processos com prioridade superior devem ser executados primeiro. O escalonador pode diminuir a prioridade dos processos, para prevenir que os de maior prioridade executem indenidamente, com o aumento do seu respectivo tempo de execuo. ca

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Mltiplas Filas: Dene classes com prioridades, permitindo que u processos que esto na classe de menor prioridade executem por 1 a quantum; na classe seguinte, por 2 quanta; na prxima , por 4 o quanta; e assim por diante. Quando um processo interrompido e por exceder esse tempo, a prioridade de sua classe diminu e da.

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Tarefas Pequenas Primeiro: Designado para aplicaes no co a interativas, em que o tempo mdio de execuo conhecido a e ca e priori. Como o prprio nome diz, esse algoritmo dene que tarefas o menores devem ser executadas primeiro.

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Policy-Driven: Particiona a CPU de forma equnime entre os a usurios (no entre processos) e dene que, para n usurios ligados a a a ao sistema, cada usurio dever receber 1/n do poder da CPU. a a

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Sumrio a
1 2 3 4 5 6 7

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Marcelo C. Mussel marcelo.mussel@gmail.com
Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

A diferena entre uma operao de escalonamento esttico e c ca a dinmico que, no primeiro, todos os jobs so conhecidos de a e a antemo e o objetivo escalonar estes jobs apenas uma vez, sendo a e este escalonamento xo, j que no necessrio mud-lo. J em a a e a a a um escalonamento dinmico, jobs chegam ao sistema em pontos a ass ncronos de tempo, enquanto outros esto executando. A cada a chegada ou sa de um job no/do sistema, o conjunto de jobs da conhecidos muda.

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Sumrio a
1 2 3 4 5 6 7

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Marcelo C. Mussel marcelo.mussel@gmail.com
Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Problemas determin sticos so aqueles onde os valores das variveis a a (como tempos de execuo dos jobs em cada mquina, release ca a dates e due dates, entre outros) so previamente conhecidos e a exatos.

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Porm, muitas vezes as informaes dispon e co veis, para ponderar sobre escalonamento, so poucas, e sujeitas a variaes dos mais a co diversos tipos. Por exemplo, na maioria das situaes reais no se co a pode prever, com exatido, quando alguma mquina vai ter a a problemas e acarretar perdas no processo. Para lidar, de maneira probabil stica, com essas incertezas, h uma vertente de a escalonamento, o modelo estocstico de escalonamento. a

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Nos modelos estocsticos, no se sabe os valores exatos dos a a tempos de processamento, release dates e prazos dos jobs, mas sim suas distribuies de probabilidade. Seus reais valores s sero co o a conhecidos depois do processamento ter sido realizado. Toda a anlise feita com base nas probabilidades. a e

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Sumrio a
1 2 3 4 5 6 7

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Marcelo C. Mussel marcelo.mussel@gmail.com
Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Escalonamento no-preemptivo: o processo que obtiver direito de a rodar, rodar at que seja bloqueado para E/S ou para esperar por a e outro processo (semforo, por exemplo), ou at terminar. a e

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Escalonamento preemptivo: h uma interrupo e suspenso a ca a temporria da execuo de processos no bloqueados aps um a ca a o tempo mximo xado. a

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Um escalonador justo-divisor aloca uma fatia xa dos recursos da CPU para cada grupo de processos. Um grupo de processos pode consistir em um processo simples, todos os processos de um unico usurio, todos os processos de uma seo de login e assim por a ca diante. O kernel monitora o uso da CPU para impor a frmula o escolhida de alocao. Se algum grupo no usa sua parte alocada, ca a o restante geralmente dividido entre os outros grupos na taxa de e suas fatias originais. Pode ser usado para garantir recursos para aplicaes cr co ticas em um sistema tempo dividido.

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Sumrio a
1 2 3 4 5 6 7

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Marcelo C. Mussel marcelo.mussel@gmail.com
Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

O escalonador deve distribuir o tempo da CPU a todos os processos no sistema. Conforme a carga no sistema aumenta, cada processo recebe uma parte menor do tempo da CPU.

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Um sistema t pico roda vrias aplicaes concorrentemente. Estas a co aplicaes podem ser largamente categorizadas nas seguintes co classes, baseadas em seus requisitos de escalonamento e expectativas de performance:

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Interativo - As aplicaes com interface de usurio, que co a constantemente interagem com usurios, gastam muito tempo a esperando por entrada do usurio. O sistema necessita reduzir o a tempo e a variao mdios entre a ao do usurio e a resposta da ca e ca a aplicao (atraso aceitvel de aproximadamente 50-150 ca a e milissegundos).

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Grupo - No requer a interao do usurio; a medida de ecincia a ca a e de escalonamento o tempo de concluso da tarefa na presena de e a c outra atividade, quando comparada ao tempo requerido em um sistema inativo.

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Tempo Real - Geralmente aplicaes de tempo cr co tico; Precisam predizer o comportamento do escalonador com limites garantidos no tempo de resposta.

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Uma estao de trabalho t ca pica roda todos os trs tipos de e aplicaes. O escalonador deve balanar suas exigncias, e co c e assegurar-se de que as funes do kernel executem tambm co e prontamente (por exemplo, paginao, tratamentos de interrupo, ca ca gerenciamento de processos).

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

Sumrio a
1 2 3 4 5 6 7

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Marcelo C. Mussel marcelo.mussel@gmail.com
Adm.Ger.Estaes e Servidores co

Introduo ca Escalonamento de Processos Algoritmos de Escalonamento Escalonamento Esttico e Dinmico a a Escalonamento Determin stico e Estocstico a Tipos de Escalonamento Objetivos do Escalonador Consideraes co

O comportamento desejado pelo escalonador depende da necessidade das aplicaes que ele roda. Alguns sistemas rodam co aplicaes de tempo cr co tico, de tempo real, a maioria tempo dividido e alguns tem um misto de ambos.

Marcelo C. Mussel marcelo.mussel@gmail.com

Adm.Ger.Estaes e Servidores co

Вам также может понравиться