Vou colar aqui a resposta do Guilherme em caso da página sair do ar ou ser inacessível em algum local.
"Amigos, essa é para quem esta estudando a disciplina de "sistemas operacionais", ou então esta ligado em questões de concursos... essa questão caiu na prova para analista de sistemas júnior da TransPetro 2011, realizada neste fim-de-semana (10/7/11):
Questão 24: Um processo referencia 5 páginas identificadas por p1, p2, p3, p4 e p5, na seguinte ordem:
p1, p2, p3, p1, p4, p2, p5, p1, p2, p5, p2, p1
Considerando-se que o algoritmo de substituição de página seja LRU e que a memória principal encontra-se inicialmente vazia, qual é o número de transferências de páginas em um sistema com 3 quadros em memória principal?
(A) 6
(B) 7
(C) 8
(D) 9
(E) 10
clique no link "leia mais..." e veja a resposta!
Explicação: O programa esta fragmentado em diversas páginas, para executar cada instrução do programa, o sistema operacional precisa carregar a página que contém a instrução que ele precisa executar num determinado momento. No caso deste tipo de exercício, a sequencia de páginas necessárias já esta definida, na sequencia determinada....
Passo 1: O SO carrega a página P1 para a memória principal (MP). Número de transferências (NT) = 1;
Passo 2: O SO carrega a página P2 para a MP; NT = 2
Passo 3: O SO carrega a página P3 para a MP; NT = 3
Passo 4: O SO precisa carrega a página P1 para a MP, mas.... ela já esta lá! Então... não ocorre nenhuma transferência de página para a memória principal. NT = 3
Passo 5: O SO precisa carrega a página P4 para a MP, mas não temos mais espaço, pois os 3 quadros de MP estão sendo usados. Então.... como estamos usando o algoritimo LRU (Least Recently Used) para fazer a páginação, o SO descarta os itens (páginas) menos usado recentemente. As últimas páginas mais usadas foram P1 e P3, então essas ficam e o SO descarta da MP o P2, liberando espaço para o P4. NT = 4 (não perca a conta!! rsrs)
Passo 6: O SO precisa carrega a página P2, portanto, usando o LRU, as páginas mais usadas recentemente foram P4 e P1, então P3 sai, liberando o quadro para P2. NT = 5;
Passo 7: O SO carrega a página P5 no lugar de P1. NT = 6;
Passo 8: O SO carrega a página P1 no lugar de P4. NT = 7;
Passo 9: O SO precisa carrega a página P2 para a MP, mas ela já esta lá! NT = 7;
Passo 10: O SO precisa carrega a página P5 para a MP, mas ela já esta lá! NT = 7;
Passo 11: O SO precisa carrega a página P2 para a MP, mas ela já esta lá! NT = 7;
Passo 12: O SO precisa carrega a página P1 para a MP, mas ela já esta lá! NT = 7;
Resultado: Número total de transferências de páginas para a memória principal (NT) = 7;
As trocas estão marcadas em vermelho com fundo amarelo:"