// 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);
        }