private static void tahin() { Fcfs lq = new Fcfs(); lq.Enqueue(new ProcessControlBlock { ArrivalTime = 1, Name = "A", BurstTime = 5 }); lq.Enqueue(new ProcessControlBlock { ArrivalTime = 6, Name = "B", BurstTime = 6 }); lq.Enqueue(new ProcessControlBlock { ArrivalTime = 3, Name = "C", BurstTime = 2 }); lq.Enqueue(new ProcessControlBlock { ArrivalTime = 4, Name = "D", BurstTime = 3 }); lq.Enqueue(new ProcessControlBlock { ArrivalTime = 8, Name = "E", BurstTime = 1 }); lq.Enqueue(new ProcessControlBlock { ArrivalTime = 2, Name = "F", BurstTime = 4 }); Console.WriteLine(lq.Display()); lq.OrderByArrivelTime(); Console.WriteLine(lq.Display()); lq.Go(); Console.WriteLine($" Total Burst Time : {lq.TotalBurstTime}"); Console.WriteLine($" Average Burst Time : {lq.AverageBurstTime()}"); Console.WriteLine($"Average Waiting Time : {lq.AverageWaitingTime()}"); End(); }
static void Main(string[] args) { //var lines = File.ReadAllLines("teste1.txt").Select(x => int.Parse(x)).ToList(); //var disc = new Disk(); //disc.SetQueue(lines.Skip(2).ToList()); //disc.HeadPosition = lines[1]; //disc.Size = lines[0]; ////var fcfs = new Fcfs(disc); ////fcfs.Resolve(); ////fcfs.Print(); ////var sstf = new Sstf(disc); ////sstf.Resolve(); ////sstf.Print(); //var scan = new Scan(disc); //scan.Resolve(); //scan.Print(); inicio: string path = ""; while (true) { Console.WriteLine("Digite o nome do arquivo:"); path = Console.ReadLine(); if (path.Equals("SAIR", StringComparison.InvariantCultureIgnoreCase)) { Environment.Exit(0); } if (!File.Exists(path)) { Console.WriteLine($"Arquivo não encontrado em: {path}"); continue; } break; } var lines = File.ReadAllLines(path).Select(x => int.Parse(x)).ToList(); var disc = new Disk(); disc.SetQueue(lines.Skip(2).ToList()); disc.HeadPosition = lines[1]; disc.Size = lines[0]; var fcfs = new Fcfs(disc); var scan = new Scan(disc); var sstf = new Sstf(disc); string outputText = ""; fcfs.Resolve(); outputText += fcfs.Print() + Environment.NewLine; disc.Free(); sstf.Resolve(); outputText += sstf.Print() + Environment.NewLine; disc.Free(); scan.Resolve(); outputText += scan.Print() + Environment.NewLine; var output = path.Replace(".txt", "_resolved.txt"); File.WriteAllText(output, outputText); Console.WriteLine(); Console.WriteLine(); Console.WriteLine($"ARQUIVO GERADO: {output}"); Console.WriteLine(); Console.WriteLine(); Console.WriteLine("Digite SAIR para sair."); Console.WriteLine(); goto inicio; }