O objetivo deste projeto é escrever um programa para simular os principais algoritmos de substituição de páginas usados no gerenciamento da memória virtual. O programa deverá simular os seguintes algoritmos: Show
O programa deverá receber como parâmetro o número de quadros disponíveis na RAM e ler da entrada padrão (stdin) a sequência de referências às páginas (uma referência por linha), conforme o exemplo a seguir: simula-vm 4 < referencias.txt ou cat referencias.txt | simula-vm 4 Neste exemplo, a memória RAM tem 4 quadros disponíveis e o arquivo O programa deve gerar como saída o número de falta de páginas verificado para cada algoritmo, de acordo com o exemplo a seguir: 4 quadros, 30 refs: FIFO: 17 PFs, LRU: 15 PFs, OPT: 11 PFs Atenção: deve ser usada a string de formato abaixo para a impressão do resultado na tela. Não imprima mais nada além disso. printf ("%5d quadros, %7d refs: FIFO: %5d PFs, LRU: %5d PFs, OPT: %5d PFs\n", ...) ; Para testar seu código, use os seguintes arquivos, que correspondem às strings de referências usadas no livro do professor (capítulo V - Gerência de Memória):
QuadrosFIFOLRUOPT6438496304161837725698596270310710241450127312604096126012601260 Deve ser entregue ao professor o código-fonte em C do simulador (arquivo Em um sistema operacional que usa paginação para gerenciamento de memória, um algoritmo de substituição de página é necessário para decidir qual página deve ser substituída quando uma nova página chega. Falha de página - Uma falha de página ocorre quando um programa em execução acessa uma página da memória mapeada no espaço de endereço virtual, mas não carregada na memória física. Como a memória física real é muito menor do que a memória virtual, ocorrem falhas de página. Em caso de falha de página, o sistema operacional pode ter que substituir uma das páginas existentes pela página recém-necessária. Diferentes algoritmos de substituição de página sugerem maneiras diferentes de decidir qual página substituir. O objetivo de todos os algoritmos é reduzir o número de falhas de página. Algoritmos de substituição de página: 1. Primeiro a entrar, primeiro a sair (FIFO) - Inicialmente, todos os slots estão vazios, então quando 1, 3, 0 veio, eles são alocados para os slots vazios -> 3 falhas de página. Belady é anomalia - Belady é anomalia prova que é possível ter mais falhas de página quando se aumenta o número de quadros da página enquanto estiver usando o First In First Out algoritmo de substituição (FIFO) página. Por exemplo, se considerarmos a sequência de referência 3, 2, 1, 0, 3, 2, 4, 3, 2, 1, 0, 4 e 3 slots, obteremos 9 falhas de página no total, mas se aumentarmos os slots para 4, temos 10 falhas de página. 2. Substituição de página ideal - Inicialmente, todos os slots estão vazios, então quando 7 0 1 2 são alocados para os slots vazios -> 4 falhas de página Agora, para a sequência de referência de página adicional -> 0 Falha de página porque eles já estão disponíveis na memória. 3. Menos usado recentemente - Inicialmente, todos os slots estão vazios, então quando 7 0 1 2 são alocados para os slots vazios -> 4 falhas de página, Perguntas do GATE CS Corner Praticar as perguntas a seguir o ajudará a testar seus conhecimentos. Todas as perguntas foram feitas no GATE em anos anteriores ou nos testes de simulação GATE. É altamente recomendável que você os pratique. Qual é a finalidade dos algoritmos de substituição?Em um sistema operacional que usa paginação para gerenciamento de memória, um algoritmo de substituição de página é necessário para decidir qual página deve ser substituída quando uma nova página chega.
Qual é a utilidade dos algoritmos de substituição de páginas o que é o algoritmo ótimo?Em sistemas operacionais de computador que usam paginação para o gerenciamento da memória virtual, os algoritmos de troca de página decidem que páginas da memória serão gravadas no disco quando uma nova página precisa ser alocada.
Quais são os algoritmos de substituição de páginas?Algoritmos de substituição de páginas. FIFO (First In, First Out). OPT (Algoritmo ótimo). LRU (Least Recently Used). Como é o funcionamento do algoritmo FIFO de substituição de páginas?17.3.2 Algoritmo FIFO
Um critério simples e factível a considerar para a escolha das páginas a substituir poderia ser sua “idade”, ou seja, o tempo em que estão na memória. Assim, páginas mais antigas podem ser removidas para dar lugar a novas páginas.
|