Prática de Implementação: Simulação de Substituição de Páginas em Memória Virtual
26 de dezembro de 2024 (última atualização)
Objetivos
Esta prática tem por objetivo permitir ao aluno exercitar seus conhecimentos de memória virtual de forma prática. Os objetivos específicos são: exercitar a escrita e leitura em sistemas de arquivos por meio de linguagem de programação; exercitar a programação de algoritmos e estruturas de dados relevantes à implementação de módulos do sistema operacional.
O que deve ser feito
Foram estudados algoritmos de substituição de páginas em memória virtual (FIFO, LRU, LFU, OPT, MFU). Neste trabalho, deve-se implementar um programa em linguagem C/C++ que faz a simulação e a execução desses algoritmos de substituição. O programa deve realizar a simulação da substituição de páginas de acordo com a seguinte especificação:
- ler como entrada o arquivo entrada.txt contendo a sequência de referência e o tamanho da memória em quadros. Por exemplo, para a sequência: 2, 3, 4, 6, 6, 7 e o tamanho da memória de 5 quadros o arquivo seria conforme a Figura 1.
- gerar como saída o arquivo saida.txt contendo a evolução da memória, as páginas que deram acerto, o total de erros, o total de requisições e a taxa de erro. Por exemplo, para a entrada referente à Figura 1, a saída correta, para uma política X é a mostrada na Figura 2.
2, 3, 4, 6, 6, 7 5Exemplo de arquivo saida.txt
EVOLUCAO 2 2 2 2 _ 2 3 3 3 _ 3 4 4 _ 4 6 _ 6 7 ACERTOS 1 ERROS 5 TOTAL REQUISICOES 6 TAXA DE ERRO 0.83
Material de Apoio
- "Memória Virtual: Algoritmos de Substituição de Páginas"
- "BitTorrent traffic from a caching perspective" mostra as políticas de substituição sendo aplicadas no contexto mais amplo de Caching Web e BitTorrent