public void swapPage(pagina swapped, pagina needed) { swapped.deactivate(); needed.activate(); paginas.AddAfter(paginas.Find(needed), swapped); paginas.Remove(needed); }
public pagina storeAndGetNew(pagina swapped) { pagina nova = hd.storeAndGetNew(swapped); nova.activate(); paginas.AddLast(nova); return(nova); }
public memoriaPrincipal(int tamanho, int pagesize, Scheduller escalonador) { tamanho_total = tamanho; paginas = new LinkedList <pagina>(); tamanho_ocupado = 0; this.pagesize = pagesize; this.escalonador = escalonador; int quantPag = tamanho / pagesize; while (quantPag-- > 0) { pagina nova = new pagina(Convert.ToString(++escalonador.identificadorProxPagina), this, hd, escalonador, pagesize); nova.activate(); paginas.AddLast(nova); } }