// Evento 2 private bool RequestCM(Evento evento) { string resultado = ""; Programa programa = evento.Programa; if (evento.Programa.MemoriaNecessaria > CM.MemoriaDisponivel()) { resultado += "Memória Insuficiente. Job aguardará liberação. "; CM.Inserir(programa); } else { resultado += "Job Carregado na Memória. "; CM.Reservar(programa); int tempoRelocacao = CM.TempoDeRelocacao(programa); Evento proximoEvento = new Evento(evento.InstanteChegada + tempoRelocacao, TipoEvento.REQUEST_CPU, programa); AdicionarEvento(proximoEvento); } Log(evento, "RequestCM", resultado); return(true); }