PSSAV - Simulação de Escalonamento de Processos

Este artigo tem por objetivo apresentar o escalonamento de processos utilizando a ferramenta "Process Scheduling Simulation, Analyzer and Visualization" (PSSAV). Esta ferramenta é útil para demonstrar de forma didática o comportamento de diferentes escalonamentos, enriquecendo a aprendizagem de estudos introdutórios sobre sistemas operacionais.

[ Hits: 48.844 ]

Por: João Cristiano Monteiro da Silva em 22/01/2013


Introdução ao escalonamento de processos



No sistema operacional, cada programa em execução constitui um processo. Este processo é definido como um conjunto necessário de informações para que o sistema operacional implemente a concorrência dos programas, ou seja, é constituído por:
  • Contexto de hardware → Armazena o conteúdo dos registradores gerais da CPU e registradores de uso específico;
  • Contexto de software → Especifica os limites e características dos recursos que podem ser alocados pelo processo;
  • Espaço de endereçamento → Determina a área de memória pertencente ao processo onde instruções e dados serão armazenados para execução.

Um processo é classificado como CPU-bound ou I/0-bound, de acordo com a utilização do processador e dos dispositivos de E/S. Portanto:
  • Processo CPU-bound →: Passa a maior parte do tempo no estado de execução, utilizando o processador, ou no estado pronto;
  • Processo I/O-bound → Passa a maior parte do tempo no estado de espera, pois realiza um elevado número de operações de E/S.

Nos sistemas multi programáveis os processos são executados concorrentemente, compartilhando o uso do processador, memória principal e dispositivos de E/S, dentre outros recursos. A partir do momento em que diversos processos podem estar no estado de pronto, deve-se adotar uma política de escalonamento, ou seja, deve-se estabelecer critérios que determinarão qual processo será escolhido para fazer o uso do processador.

Sendo assim, a gerência de processos é uma das principais funções de um sistema operacional, possibilitando aos programas alocar recursos, compartilhar dados, trocar informações e sincronizar suas execuções.

A política de escalonamento é implementada por uma rotina do sistema operacional (denominada escalonador) e deve possuir as seguintes funções:
  • Manter o processador ocupado a maior parte do tempo;
  • Balancear o uso da CPU entre os processos;
  • Privilegiar a execução de aplicações críticas;
  • Maximizar a produtividade do sistema;
  • Oferecer tempos de resposta razoáveis para usuários interativos.

Uma política de escalonamento pode ser classificada de acordo com a sua preempção, ou seja, se o sistema operacional pode interromper o processo em execução e substituí-lo por outro:
  • Escalonamento não-preemptivo → Quando um processo está em execução nenhum evento externo pode ocasionar a perda do uso do processador;
  • Escalonamento preemptivo → O sistema operacional pode interromper um processo em execução e passá-lo para o estado de pronto, para poder alocar outro processo na CPU. Este modelo permite que o sistema priorize a execução certos de processos além de balancear o uso da CPU entre os processos.

    Próxima página

Páginas do artigo
   1. Introdução ao escalonamento de processos
   2. Escalonamentos: FCFS e Round-Robin
   3. Escalonamentos: Shortest Job Next e Shortest Remaining Time
   4. Sobre o programa de simulação e execução
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Compilador Clipper open-source, compile sem problemas os sistemas .PRG no Linux!

Instalar programas no Linux é mais fácil?

Minha experiência com o Cacic de jun2005/fev2005 e jan2006

IBM Omni Find Yahoo: Um mecanismo de busca corporativa em seu servidor

Gravando seus DVD's com o TkDVD

  
Comentários
[1] Comentário enviado por geekaia em 23/01/2013 - 07:27h

Legal, eu não sabia que este programa existia. Na época que fiz a disciplina de sistemas operacionais o professor utilizava o SOsim "emulado" com o wine.

http://www.training.com.br/sosim/

[2] Comentário enviado por jcristiano em 23/01/2013 - 10:09h

Obrigado pelo comentário, geekaia.

Também usavamos o SOsim, com base no livro Arquiteturas de Sistemas Operacionais.
Depois começamos a usar o EPSOsim ( https://sites.google.com/site/EPSOsim/ ).

Eu acho que o PSSAV possui duas características principais: é multiplaforma e bem mais coerente didaticamente.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts