コード例 #1
0
ファイル: CPU.cs プロジェクト: josehcls/OS_Simulation
 public void Reservar(Programa programa)
 {
     if (Ocupado)
     {
         throw new Exception("Acesso a CPU Ocupada!");
     }
     Ocupado = true;
 }
コード例 #2
0
ファイル: CPU.cs プロジェクト: josehcls/OS_Simulation
        public string Status()
        {
            Programa proximoPrograma = Fila.Any() ? Fila.Peek() : null;
            int      programasEmFila = Fila.Count;

            return(String.Format("CPU: {0} - Fila: {1} programa(s), proximo: {2}",
                                 Ocupado ? "Ocupada" : "Livre",
                                 programasEmFila,
                                 proximoPrograma != null ? proximoPrograma.Identificador : "-"
                                 ));
        }
コード例 #3
0
ファイル: CPU.cs プロジェクト: josehcls/OS_Simulation
 public int TempoDeOverhead(Programa programa)
 {
     return(1);
 }
コード例 #4
0
ファイル: CPU.cs プロジェクト: josehcls/OS_Simulation
 // TODO: Tempo de Processamento / Inter-request Time
 public int TempoDeProcessamento(Programa programa)
 {
     return(programa.TempoProcessamento);
 }
コード例 #5
0
ファイル: CPU.cs プロジェクト: josehcls/OS_Simulation
 public void Liberar(Programa programa)
 {
     Ocupado = false;
 }
コード例 #6
0
ファイル: CPU.cs プロジェクト: josehcls/OS_Simulation
 public void Inserir(Programa programa)
 {
     Fila.Enqueue(programa);
 }