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); } }
public pagina storeAndGetNew(pagina swapped) { swapped.deactivate(); paginas.AddLast(swapped); return(new pagina(Convert.ToString(++escalonador.identificadorProxPagina), ram, this, escalonador, pagesize)); }
public void swapPage(pagina swapped, pagina needed) { paginas.AddAfter(paginas.Find(swapped), needed); paginas.Remove(swapped); hd.swapPage(swapped, needed); }