Sistemas Operacionais
Aula 12: Paginação
Referências
Paginação
Solução para fragmentação:
Endereçamento
Todo endereço é dividido em duas partes:
E o endereço real da variável é:
Endereçamento
Exemplo:
Fragmentação com Paginação
Fragmentação externa é eliminada.
Fragmentação interna ainda persiste:
Tipicamente páginas têm 2 a 8K de tamanho.
Paginação
Um aspecto importante de paginação é a separação:
Implementação
Translation Look-aside Buffer: TLB
Um conjunto de registradores especiais:
TLBs
Acesso à Memória usando TLBs
Tempo de Acesso
Suponha que se gaste 20ns para olhar o TLB e 100ns para ler da memória.
O hit rate diz a frequência com que achamos a página desejada no TLB. Com um hit rate de 80% o tempo de acesso será:
Hit rate depende de:
O 486 tem 32 posições no TLB e um hit rate de 98%.
Programa inimigo do TLB!
Como varrer a matriz ?
Paginação Multinível
Espaços de endereçamento são muito grandes.
Por exemplo: processador de 32 bits, página de 4K:
Solução: páginação de 2 níveis:
Tempo de acesso
Com um nível de paginação:
Com dois níveis de paginação:
Com três níveis de paginação:
Performance não sofre!
Localidade
Desde que se mantenha a localidade:
Localidade é um conceito extremamente importante para performance.