示例#1
0
        public void addProcess(clsProceso P, int Estado)
        {
            if (!canAccess(P.Tamano))
            {
                return;
            }

            int Tamano = P.Tamano;
            int count  = 0;

            while (Tamano > 0)
            {
                if (Marcos[count].Estatus == (int)Estatus.Disponible)
                {
                    Marcos[count].Proceso = P.Numero;
                    Marcos[count].Estatus = Estado;

                    for (int i = 0; i < SizeMarco; i++)
                    {
                        Marcos[count].Memoria[i] = true;
                        Tamano--;

                        if (Tamano == 0)
                        {
                            break;
                        }
                    }
                }

                count++;
            }
        }
示例#2
0
        public clsProceso(clsProceso p)
        {
            this.Operacion = p.Operacion;
            this.Resultado = p.Resultado;
            this.TME       = p.TME;
            this.TR        = p.TR;
            this.Numero    = p.Numero;
            this.Concluido = p.Concluido;

            this.Llegada      = p.Llegada;
            this.Finalizacion = p.Finalizacion;
            this.Respuesta    = p.Respuesta;
            this.Servicio     = p.Servicio;
            this.Bloqueado    = p.Bloqueado;
            this.Estado       = p.Estado;
            this.Tamano       = p.Tamano;
        }
示例#3
0
 public void addProcess(clsProceso P)
 {
     this.addProcess(P, (int)Estatus.Listo);
 }