Please enable JavaScript.
Coggle requires JavaScript to display documents.
Algoritmos de Gerenciamento de Páginas (NRU (Páginas não usadas…
Algoritmos de Gerenciamento de Páginas
Ótimo
Toda vez que ocorrer uma falha de página, carregue na tabela de páginas todas as páginas que serão usadas nas próximas N instruções e remova aquelas que não serão usadas
Vantagens: É a melhor forma de adiar a próxima falha de página, melhorando o tempo de processamento
Desvantagens: É impossível, no momento da falha de página, o processador saber quais possível endereços serão visitados pelas próximas N instruções.
Solução que mais reduz o tempo da falha de páginas, porém é impossível de implementar
NRU
Páginas não usadas recentementes
A tabela mantém dois bits a mais: R e M. O bit R é modificado para 0 de tempos em tempos pelo hardware.
Quando ocorre uma falha de página, a classe 0 tem prioridade para ser substituída e logo após a classe 1, 2 e 3
Classificados em 4 grupos: Classe 0 (0/0); Classe 1 (0/1); Classe 2 (1/0); Classe 3 (1/1)
Ideia boa, mas pode descartar páginas úteis
FIFO/ Second Chance FIFO
FIFO: Páginas mais velhas são removidas primeiro
FIFO Segunda chance: Páginas mais velhas, porém não referenciadas são removidas primeiro.
Caso o bit seja 0, a página é substituída; Caso seja 1, o valor vira 0 e a página é colocada no final da fila
Fácil de implementar, mas pode descartar páginas úteis. O second chance melhora essa desvantagem.
Clock
Páginas mais velhas são removidas primeiro, porém a lista é circular.
Otimiza o acesso aos elementos da fila usando uma lista circular; não precisa modificar a posição do elemento na fila
Fácil de implementar, melhora o FIFO pois não precisa de operações complexas em listas
LRU
Página menos usada recentemente
Quando uma página é referenciada, existe grande probabilidade dela ser referenciada novamente nas próximas instruções; da mesma forma quando não é referenciada
Versão generaliza do NRU, mantém um contador que marca quando uma determinada página foi referenciada. O contador é atualizado a cada referência a tabela de páginas.
Quando ocorre a falha de página, o SO percorre a tabela e substitui a página que foi usada menos recentemente
Muito bom, mas não há como implementar um contador de idade justo
Working Set
O SO precisa descobrir o working set durante a execução
Ótimo para sistemas multiprocessados, mas a implementação não leva em conta as páginas que foram escritas
WS Clock
Usa a ideia do Clock somada a ideia do Working Set
Melhor que o working set pela simplicidade de implementação, incorpora a característica de escrita ao Working Set, bem como usa listas circulas para páginas