A maioria dos sistemas com memória virtual utiliza uma técnica denominada paginação. Os endereços gerados pelo programa são denominados endereços virtuais e constituem o espaço de endereçamento virtual. Em computadores sem memória virtual, o endereço virtual é idêntico ao endereço físico e, assim, para ler ou escrever uma posição de memória, ele é colocado diretamente no barramento da memória. Quando a memória virtual é usada, o endereço virtual não é colocado diretamente no barramento da memória. Em vez disso, ele vai a uma MMU (memory management unit – unidade de gerenciamento de memória), que mapeai endereços virtuais em endereços físicos.
O espaço de endereçamento virtual é dividido em unidades denominadas páginas (pages). As unidades correspondentes na memória física são denominadas molduras de páginas (page frames). As páginas e as molduras de página são sempre do mesmo tamanho.
A memória desconhece a existência da MMU e somente enxerga uma solicitação de leitura ou escrita no endereço a qual ela executa. A MMU mapeia todos os endereços virtuais em endereços físicos.
No hardware real, um bit presente/ausente em cada entrada da tabela de páginas informa se a página está fisicamente presente ou não na memória.
Caso o programa tente usar uma página virtual não mapeada, a MMU verifica isso e força o desvio da CPU ara o sistema operacional. Essa interrupção é denomida falta de página (page fault). O sistema operacional, então, escolhe uma moldura de página (page frame) pouco usada e a salva em disco. Em seguida, ele carrega a página virtual referenciada pela instrução na moldura de página recém-liberada, atualiza o mapeamento da tabela de páginas e reinicializa a instrução causadora da interrupção.