Ok, primeiro de tudo, prazer todo mundo, é minha primeira vez pedindo ajuda online com códigos de Java rsrs
Bom, vamos ao problema… Preciso construir um código que simule um Escalonador de curto prazo. Os parâmetros do programa são os seguintes:
-Atende até 5 processos
-Opera com Timeslice (round-robin)
-Trabalha com prioridade (Pre-emptivo): 0=Baixa, 1=Alta
-Opera com dispositivo I/O (Disco)
-Os processos são lidos de um arquivo em disco “proc.txt”
-O timeslice é informada pelo teclado (opcionalmente, o tempo de disco também é informado pelo teclado)
-O resultado do processamento é gravado em um arquivo no disco “res.txt”
-Cada processo pode ter até 10 instruções
-O tamanho máximo de tempo de disco é 5
-O processo só pode chamar o disco 2 vezes
o formato pelo qual as instruções são passadas é esse:
I
I
I
D
3
I
I
T
0
onde I = Instrução, D = Disco (onde o número seguinte é o tempo de disco), T = Terminou. O número após o T representa a prioridade do processo.
o formato de saída deve ser o seguinte:
1 2 3
I 00
I 01
I 02
I 03
I 04
D 05
I 1 06
D 2 07
D 3 08
e por aí vai. Como deu pra ver, se uma instrução I é executada, somente o tempo em disco pode executar simultaneamente (como qualquer bom aluno de sistemas operacionais aprendeu). Os números de dois dígitos (00, 01, 02, etc) é o tempo da CPU.
Alguém consegue achar um código válido para responder esse problema? Se não conseguir do modo requisitado, pode ser também sem utilizar prioridade.