informática aplicada sistemas operacionais: processos, tarefas e algoritmos de escalonamento de...

10
Informática Aplicada Informática Aplicada Sistemas Operacionais: processos, tarefas e Sistemas Operacionais: processos, tarefas e Algoritmos de escalonamento de processo Algoritmos de escalonamento de processo Alunos: Marcelo Bonfim, Giovanni Faria, Alunos: Marcelo Bonfim, Giovanni Faria, Diego Gustavo, Willian Santos e Willian Diego Gustavo, Willian Santos e Willian Sureck Sureck Professor Carlos Gouvea Professor Carlos Gouvea 1

Upload: mateus-silveira-macedo

Post on 07-Apr-2016

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Informática Aplicada Sistemas Operacionais: processos, tarefas e Algoritmos de escalonamento de processo Alunos: Marcelo Bonfim, Giovanni Faria, Diego

Informática AplicadaInformática AplicadaSistemas Operacionais: processos, tarefas e Algoritmos de Sistemas Operacionais: processos, tarefas e Algoritmos de

escalonamento de processoescalonamento de processo

Alunos: Marcelo Bonfim, Giovanni Faria, Diego Alunos: Marcelo Bonfim, Giovanni Faria, Diego Gustavo, Willian Santos e Willian SureckGustavo, Willian Santos e Willian Sureck

Professor Carlos GouveaProfessor Carlos Gouvea

11

Page 2: Informática Aplicada Sistemas Operacionais: processos, tarefas e Algoritmos de escalonamento de processo Alunos: Marcelo Bonfim, Giovanni Faria, Diego

TarefasTarefas

O conceito de tarefa:O conceito de tarefa:Execução de um ProgramaExecução de um Programa. .

Sistemas mono-tarefa:Sistemas mono-tarefa:Executam apenas uma tarefa de cada vez. Executam apenas uma tarefa de cada vez.

Sistemas multi-tarefa:Sistemas multi-tarefa:Um sistema multitarefa executa várias tarefas simultaneamenteUm sistema multitarefa executa várias tarefas simultaneamente

22

Page 3: Informática Aplicada Sistemas Operacionais: processos, tarefas e Algoritmos de escalonamento de processo Alunos: Marcelo Bonfim, Giovanni Faria, Diego

ProcessosProcessos

O que são processos?O que são processos?

Componentes de um processoComponentes de um processo

Gerenciador de TarefasGerenciador de Tarefas

Estados do ProcessoEstados do Processo

33

Page 4: Informática Aplicada Sistemas Operacionais: processos, tarefas e Algoritmos de escalonamento de processo Alunos: Marcelo Bonfim, Giovanni Faria, Diego

ProcessosProcessos

Processo x Programas Processo x Programas Exemplo: preparação de bolo Exemplo: preparação de bolo

A receita – programa (algoritmoA receita – programa (algoritmoOs ingredientes – dados de entrada Os ingredientes – dados de entrada O cozinheiro – processador O cozinheiro – processador Atividade de preparar o bolo (processo)Atividade de preparar o bolo (processo)

44

Page 5: Informática Aplicada Sistemas Operacionais: processos, tarefas e Algoritmos de escalonamento de processo Alunos: Marcelo Bonfim, Giovanni Faria, Diego

Algoritmo de escalonamentoAlgoritmo de escalonamento

Um dos componentes mais importantes da gerência de tarefas é o Um dos componentes mais importantes da gerência de tarefas é o escalonador (task scheduler), que decide a ordem de execução das escalonador (task scheduler), que decide a ordem de execução das tarefas.tarefas.

O algoritmo utilizado no escalonador define o comportamento do O algoritmo utilizado no escalonador define o comportamento do sistema operacional, permitindo obter sistemas que tratem de forma sistema operacional, permitindo obter sistemas que tratem de forma mais eficiente e rápida as tarefas a executar, que podem ter mais eficiente e rápida as tarefas a executar, que podem ter características diversas: aplicações interativas, processamento de características diversas: aplicações interativas, processamento de grandes volumes de dados, programas de cálculo numérico, etc. grandes volumes de dados, programas de cálculo numérico, etc.

55

Page 6: Informática Aplicada Sistemas Operacionais: processos, tarefas e Algoritmos de escalonamento de processo Alunos: Marcelo Bonfim, Giovanni Faria, Diego

Algoritmo de escalonamentoAlgoritmo de escalonamento

Escalonamento FCFS (First-Come, First Served)Escalonamento FCFS (First-Come, First Served) Consiste em simplesmente atender as tarefas em sequência, à medida em Consiste em simplesmente atender as tarefas em sequência, à medida em

que elas se tornam prontas (ou seja, conforme sua ordem de chegada na que elas se tornam prontas (ou seja, conforme sua ordem de chegada na fila de tarefas prontas).fila de tarefas prontas).

66

Page 7: Informática Aplicada Sistemas Operacionais: processos, tarefas e Algoritmos de escalonamento de processo Alunos: Marcelo Bonfim, Giovanni Faria, Diego

Algoritmo de escalonamentoAlgoritmo de escalonamento

Escalonamento FCFS (First-Come, First Served)Escalonamento FCFS (First-Come, First Served)

TAREFASTAREFAS T1T1 T2T2 T3T3 T4T4

INGRESSOSINGRESSOS 00 00 11 33

DURAÇÃODURAÇÃO 55 22 44 33

77

Page 8: Informática Aplicada Sistemas Operacionais: processos, tarefas e Algoritmos de escalonamento de processo Alunos: Marcelo Bonfim, Giovanni Faria, Diego

Algoritmo de escalonamentoAlgoritmo de escalonamento

Escalonamento SJF (Shortest Job First)Escalonamento SJF (Shortest Job First) Proporciona os menores tempos médios de execução e de espera. Como o nome Proporciona os menores tempos médios de execução e de espera. Como o nome

indica, ele consiste em atribuir o processador à menor (mais curta) tarefa da fila indica, ele consiste em atribuir o processador à menor (mais curta) tarefa da fila de tarefas prontas.de tarefas prontas.

Reduz o numero de processos em espera;Reduz o numero de processos em espera; Não-Premptivo – processo jamais será interrompido, a execução só para quando Não-Premptivo – processo jamais será interrompido, a execução só para quando

o processo termina;o processo termina;

88

Page 9: Informática Aplicada Sistemas Operacionais: processos, tarefas e Algoritmos de escalonamento de processo Alunos: Marcelo Bonfim, Giovanni Faria, Diego

Algoritmo de escalonamentoAlgoritmo de escalonamento

Escalonamento Escalonamento por revezamento ou Round-Robinpor revezamento ou Round-Robin

- - Algoritmo típico de sistemas operacionais de tempo compartilhado;Algoritmo típico de sistemas operacionais de tempo compartilhado;

- Cada processo recebe uma pequena fatia de tempo de CPU (QUANTUM) ;- Cada processo recebe uma pequena fatia de tempo de CPU (QUANTUM) ;- Após o término de quantum o processo é interrompido e colocado no final da fila de tarefas Após o término de quantum o processo é interrompido e colocado no final da fila de tarefas

prontas. prontas.

EXEMPLO:EXEMPLO:Quantum de 2 unidades de tempoQuantum de 2 unidades de tempo

99

Page 10: Informática Aplicada Sistemas Operacionais: processos, tarefas e Algoritmos de escalonamento de processo Alunos: Marcelo Bonfim, Giovanni Faria, Diego

Questões:Questões:

O que são Tarefas?O que são Tarefas?a)a) Algoritmos de processos.Algoritmos de processos.b)b) Execução de um fluxo sequencial de instruções;Execução de um fluxo sequencial de instruções;c)c) Trabalho executado pelo Hardware;Trabalho executado pelo Hardware;d)d) Processos da memoria RAM.Processos da memoria RAM.

O que são os algoritmos de escalonamento?O que são os algoritmos de escalonamento?a)a) Programa que controla os trabalhos carregados na memória flash.Programa que controla os trabalhos carregados na memória flash.b)b) Programa que trabalho a nivel de kernel;Programa que trabalho a nivel de kernel;c)c) Gerenciador de carga do processador;Gerenciador de carga do processador;d)d) Gerenciador das tarefas, que decide a ordem de execução das Gerenciador das tarefas, que decide a ordem de execução das

tarefastarefas..

1010