Os primeiros sistemas operacionais utilizavam um esquema de alocação de memória conhecido como contíguo.

No modelo contíguo, a memória era dividida em duas partições, uma onde se mantém residente o próprio sistema operacional e outra para prover armazenamento para os processos em execução.

Além disso, os aplicativos que rodavam sobre o SO utilizavam apontamentos diretos para o endereço físico da memória, ou seja, era fornecido acesso a localização exata do armazenamento provido pela unidade de memória principal.

Entretanto, este esquema de gerenciamento de memória apresentava algumas desvantagens, sobretudo porque a utilização do endereço físico permitia a ocorrência de uma série de problemas, como a possibilidade, em ambientes multiprogramáveis, de determinados processos acessarem a área de memória alocada para outros. Estas deficiências foram um dos fatores que motivaram o surgimento dos esquemas de endereçamento lógico de memória.

O endereçamento lógico é um identificador gerado pela CPU que direciona para um endereço físico na memória, impedindo aos processos o acesso direto a este componente de hardware.

A utilização do endereçamento lógico foi o que permitiu, na prática, a criação dos espaços de endereçamento de cada processo, criando áreas de memória de acesso exclusivo.

A unidade de gerenciamento de memória (MMU) é o dispositivo de hardware responsável por realizar o mapeamento entre os endereços lógico e físico.

Copyright © 2014 AIEC.