Sistemas operacionais escalonamento de processos

32.497 visualizações

Publicada em

0 comentários
7 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
32.497
No SlideShare
0
A partir de incorporações
0
Número de incorporações
7
Ações
Compartilhamentos
0
Downloads
644
Comentários
0
Gostaram
7
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Sistemas operacionais escalonamento de processos

  1. 1. SISTEMAS OPERACIONAISESCALONAMENTO DE PROCESSOS Jardel Ribeiro Raymundo Saraiva Talles Nascimento
  2. 2. PROCESSOS Um processo pode ser definido como "um programa em execução". O conceito de processo é bastante abstrato, mas é essencial no estudo de sistemas operacionais
  3. 3. ESCALONADORES Qualquer sistema operacional que implemente multiprogramação deve dividir o tempo do processador entre os processos do sistema.
  4. 4. ESCALONAMENTO FIRST-IN-FIRST-OUT(FIFO) O processo que chegar primeiro, é o primeiro a ser selecionado para a execução. Necessário apenas uma fila de processos prontos, esperando pelo uso do processador. O processo utiliza a CPU sem ser interrompido. Problemas:  Impossibilidade de prever quando um processo entrará em execução.  Possibilidade de processos CPU-bound de menor importância prejudicarem processos de I/O-bound mais prioritários.
  5. 5. ESCALONAMENTO SHORTEST-JOB-FIRST(SJF) Associa cada processo (JOB) ao seu tempo de execução. Quando o processador está livre, o processamento que ocupar menos tempo da CPU para terminar seu processamento é selecionado. Favorece os programas menores. Reduz o tempo médio de espera em relação ao FIFO. Problemas:  Determinar, exatamente, quanto tempo de CPU o processo vai utilizar para terminar seu processamento.
  6. 6. ESCALONAMENTO PREEMPTIVO O Sistema pode interromper um processo em execução para que outro processo utilize o processador. Permite que o sistema dê atenção imediata a processos mais prioritários, como no caso de sistemas em tempo real. Proporciona melhores tempos de resposta em sistemas de tempo compartilhado Compartilhamento do processador de uma maneira mais uniforme entre os processos. A troca de um processo pelo outro na CPU (mudança de contexto), causado pela preempção, gera um overhead no sistema. Critérios de preempção devem ser definidos para o overhead não se tornar crítico.
  7. 7. ESCALONAMENTO CIRCULAR (ROUNDROBIN) OU PREEMPÇÃO POR TEMPO Implementado por um algoritmo semelhante ao FIFO, porém, quando um processo passa para o estado de execução, existe um tempo-limite (quantum ou time-slice) para sua utilização de forma contínua. Se o processo não terminou a execução, volta ao estado de pronto. Em geral, o valor do quantum de tempo está entre 100 e 300 ms. Nenhum processo poderá monopolizar a CPU. Algoritmo bastante adequado para sistemas multiusuários de tempo compartilhado. No caso, o processo CPU-bound tem mais chances de ser executado do que o processo IO-bound
  8. 8. ESCALONAMENTO POR PRIORIDADES OUPREEMPÇÃO POR PRIORIDADE Processos possuem diferentes prioridades de execução. Processos de maior prioridade são escalonados preferencialmente. Algoritmo Implementado mediante um clock, que interrompe o processador em determinados intervalos de tempo, reavaliando prioridades e, possivelmente, escalonando outro processo. Todos os sistemas de tempo compartilhado implementam algum tipo de prioridade, sendo esta uma característica do contexto de software.
  9. 9. ESCALONAMENTO POR PRIORIDADES OUPREEMPÇÃO POR PRIORIDADE Prioridade estática:  Não é modificada durante a existência do processo.  De simples de implementação.  Pode ocasionar tempos de resposta elevados. Prioridade dinâmica:  Pode ser modificada durante a execução do processo.  O processo recebe um acréscimo à sua prioridade ao sair do estado de espera.  Processos I/O-Bound terão mais chances de serem escalonados, compensando o tempo que passam no estado de espera.  Os processos CPU-Bound podem ser executados enquanto os processos I/O -Bound esperam por algum evento. O tempo de resposta compensa o maior overhead e complexidade algorítmica.
  10. 10. DESCRIÇÃO DOS SIMULADORES SOsim  um simulador com recursos visuais que tem como principal objetivo emular os principais subsistemas de um sistema operacional multiprogramável, como gerência de processos, escalonamento e memória virtual por paginação.
  11. 11. DESCRIÇÃO DOS SIMULADORES SOsimAs principais funcionalidades e características dosimulador são: Implementar o conceito de processo  Criar processos CPU-bound e IO-bound;  Visualizar o Process Control Block (PCB) dos processos;  Suspender/resumir e eliminar processos;  Visualizar as mudanças de estado dos processos; Permitir visualizar estruturas internas do sistema  Process Control Block (PCB);  Process Page Table;  Page Table Entry;
  12. 12. DESCRIÇÃO DOS SIMULADORES SOsimBugs do SOsim: Quando é aumentado o ciclo de clock a visualização das transições dos processos não correspondem com o esperado. É necessário reiniciar o simulador sempre que for fazer uma simulação diferente, pois a visualização gráfica continua sendo a da simulação anterior.
  13. 13. DESCRIÇÃO DOS SIMULADORES SimulaRSO  Aplicação web utilizado como ferramenta de apoio para a disciplina de sistemas operacionais. O foco principal é simular graficamente e de forma intuitiva como funcionam os principais algoritmos de escalonadores de processos: (FCFS, SJF, SRT, Round Robin) que são utilizados no gerenciamento de processos concorrentes presentes.
  14. 14. DESCRIÇÃO DOS SIMULADORES SimulaRSOAs principais funcionalidades e características do simulador são:  Simular os principais algoritmos de escalonamento de processos com até 20 processos.  Simular os principais algoritmos de escalonamento de disco com até 30 requisições de (I/O) em disco.  Simular os principais algoritmos de substituição de página de memória virtual com até 30 palavras de bytes na escrita.  Realizar simulação comparativa para analisar o comportamento de dois algoritmos distintos.  Exibição comportamental dos algoritmos através de gráficos intuitivos.  Projeto internacionalizado com suporte aos idiomas inglês e português.Desvantagens:  Constatamos que o simulador coloca todos os tempos de chegada iguais a zero, mesmo que sejam introduzidos outros valores, o que acarreta em uma discrepância nos cálculos dos tempos de espera.  No algoritmo SJF o simulador não analisa os processos corretamente quando estes tem tempo de ordem de chegada diferente.
  15. 15. COMPARAÇÃO ENTRE OS ALGORITMOS Comparação entre os algoritmos FIFO SJF100 100 Referente à questão 6. Não sei se é pra deixar. Diga aí. 23 22.33 14.67 14 0.12 0.12 Utilização Produtividade Tempo Médio de Espera Tempo Retorno Médio
  16. 16. CENÁRIO 1Processo Instante de Chegada Tempo de Execução PrioridadeP1 0 3 1P2 0 5 1P3 0 6 1P4 0 2 1 Algoritmos FCFS SJF Prioridades RRUtilização da CPU(%) 100 100 100 100Produtividade da CPU(%) 25 25 25 25Tempo Médio de Espera 6,25 4,25 6,25 7,75Tempo Médio de Retorno 10,25 8,25 10,25 11,75
  17. 17. Cenário 112010080 FCFS60 SJF Prioridades40 RR20 0 Utilização Produtividade Tempo Médio de Tempo Retorno Espera Médio
  18. 18. CENÁRIO 2Processo Instante de Chegada Tempo de Execução PrioridadeP1 5 6 2P2 3 3 2P3 1 2 2P4 2 1 2P5 7 10 2P6 8 12 2 Algoritmos FCFS SJF Prioridades RRUtilização da CPU(%) 97,14 97,14 97,14 97,14Produtividade da CPU(%) 17,14 17,14 17,14 17,14Tempo Médio de Espera 4,17 4,17 7,17 12Tempo Médio de Retorno 9,83 9,83 17,67 12,83
  19. 19. Cenário 2120100 80 FIFO SJF 60 RR Prioridade 40 20 0 Produtividade Utilização Tempo Médio de Espera Tempo Retorno Médio
  20. 20. CENÁRIO 3Processo Instante de Chegada Tempo de Execução PrioridadeP1 0 3 3P2 0 5 2P3 0 6 1P4 0 2 4 Algoritmos FCFS SJF Prioridades RR RR( Q 3)Utilização da 100 100 100 100 100CPU(%)Produtividade da 25 25 25 25 25CPU(%)Tempo Médio de 6,25 4,25 7,75 7,75 6,75EsperaTempo Médio de 10,25 8,25 11,75 11,75 10,75Retorno
  21. 21. Cenário 3120100 80 FCFS 60 SJF Prioridades 40 RR 20 RR (Quantum 3) 0 Utilização Produtividade Tempo Médio de Tempo Retorno Espera Médio
  22. 22. CENÁRIO 4Processo Instante de Chegada Tempo de Execução PrioridadeP1 0 3 3P2 2 5 2P3 3 6 1P4 1 2 4 Algoritmos FCFS SJF Prioridades RRUtilização da CPU(%) 100 100 100 100Produtividade da CPU(%) 25 25 25 25Tempo Médio de Espera 3 3 7,5 4,5Tempo Médio de Retorno 7 7 11,5 8,5
  23. 23. Cenário 4120100 80 FCFS 60 SJF 40 Prioridades RR 20 0 Utilização Produtividade Tempo Médio de Tempo Retorno Médio Espera

×