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: 43.418 ]

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

Usando o gerenciador de arquivos XFE para administrar as tarefas no Linux

Programas equivalentes Linux vs Windows

Acessando desktop remotamente com noMachine

Configurando Subversion

Falha de planejamento no uso de softwares livres nas escolas públicas

  
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
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts