Escalonador de Processos
O objetivo deste Exercício Programa é implementar um escalonador de processos baseado na política de Time Sharing (algoritmo de Round Robin) em uma máquina com um único processador, permitindo assim um ambiente de multiprogramação.
Estrutura das Classes
-
Escalonador
- Classe que contem o método
main
e valida se existem argumentos para se rodar uma simulação completa ou executar o processo com base nas instruções do arquivoquantum.txt
, dentro da pastaprogramas
.
- Classe que contem o método
-
BlocoDeControleDeProcessos
- O BCP (Bloco de Controle de Processos) representa unitariamente o processo que está na tabela de processos e serve para armazenar informações como o estado do processo, o nome do processo, etc. A tabela de processos será um ArrayList que guardará esses objetos/blocos.
-
GerenciadorEscalonador
- Classe responsável por "orquestrar" toda a dinâmica da política de escalonamento Round Robin.
-
Instrucoes
- Nesta classe, estão as instruções que serão executadas pelo processo, além do gerenciamento de tempo e controle do estado dos registradores.
-
LeituraPrograma
- Esta classe é responsável por ler os arquivos "txt" e instanciar os objetos que representam os processos (ou seja, os BCPs). Ela retorna um ArrayList de objetos do tipo
BlocoDeControleDeProcessos
conforme informado anteriormente.
- Esta classe é responsável por ler os arquivos "txt" e instanciar os objetos que representam os processos (ou seja, os BCPs). Ela retorna um ArrayList de objetos do tipo
-
Log
- Classe que armazena os resultados das simulações nos arquivos invididuas de log, conforme o quantum.
-
Simulacao
- Responsável por executar a simulação com diferentes quantuns (1 à 21) e armazenar os resultados para analise posterior.
Compilação e Execução
Para compilar o código, basta executar o comando: javac Escalonador.java
Para execucar o programa, basta executar o comando: java Escalonador
[args]
Créditos
Professor: Norton Trevisan Roman
Aluna: Camila Felinto Suriao
Aluno: José Rafael R. Nascimento
Aluno: Luiz Fernando Conceição dos Santos