Você está na página 1de 45

Sistemas Operacionais:

Gerenciamento de Memória

Ramon Nepomuceno
ramon@gmail.com

Instituto Federal do Maranhão (IFMA-Caxias)

aula • 15/junho/2021
Todo programador gostaria de uma memória
privada, infinitamente grande e rápida, que
fosse não volátil e barata.
Infelizmente isso (ainda) não é possível. Por
esse motivo, usamos hierarquia de memória.
A parte do sistema operacional que gerencia
essa hierarquia é o Gerenciador de Memória.
Sem Abstração de Memória 8

● Programador lida com endereços explícitos


● mov register1, 1000
Um espaço de endereçamento é o conjunto
de endereços que um processo pode usar
para endereçar a memória.
Troca de processos (swapping) 13
Troca de processos (swapping)
Memória Virtual
Paginação

MMU (Memory Management Unit)


mapeia os endereços virtuais em
endereços de memória física
Tabela de páginas

Pode ocorrer falta de página (page


fault)
Paginação
Acelerando a paginação

1. O mapeamento do endereço
virtual para o endereço físico
precisa ser rápido.
2. Se o espaço do endereço
virtual for grande, a tabela de
páginas será grande.
3. Ausencia leve: quando não
está na TLB, mas está na
memória
4. ausência completa: não está
na memória
Algoritmos de substituição de página
O algoritmo ótimo de substituição de página

● Cada página pode ser rotulada com o número de instruções que


serão executadas antes de aquela página ser referenciada pela
primeira vez.
● O algoritmo ótimo diz que a página com o maior rótulo deve ser
removida.
● O único problema com esse algoritmo é que ele é irrealizável.
Páginas não usadas recentemente (NRU)

● Classe 0: não referenciada, não modificada.


● Classe 1: não referenciada, modificada.
● Classe 2: referenciada, não modificada.
● Classe 3: referenciada, modificada.

Exemplo: considere os acessos reads:

A, E, E, C, A, D, E, C;
Primeiro a entrar, primeiro a sair

● primeiro a entrar, primeiro a sair (first in,


first out — FIFO).
● Análogo a prateleira de supermercado
● Mas uma página antiga ainda pode ser
útil
● Por isso, essa política raramente é
utilizada
Segunda Chance

● Análogo ao FIFO
● Mas com a checagem do bit R (referenciado)
Algoritmo do Relógio

● Análogo ao segunda chance


● Mas evita mover as páginas na lista
Menos usado recentemente (LRU)

● Considerada cara, pois é necessário manter uma lista sempre


atualizada e ordenada
● Alternativa é ter um contador ‘C’ em hardware que é copiado para
a tabela de página a cada referência
● A página com o menor contador é a menos usada recentemente
Obrigado!

Você também pode gostar