[Sistemas Operacionais, Assembly, C] Dando a um processo acesso a memória real

De fato a MMU gerencia a questão da conversão de endereços lógicos em endereços físicos, mas estou interessado em desenvolver um programa de dump de memória
Como posso fazer a MMU conceder endereçamento lógico total e compatível para o acesso a toda memória real (RAM, principal) para meu processo?

No caso do Linux, basta abrir o dispositivo /dev/mem. Você precisa ser superusuário

No caso do Windows, .\Device\PhysicalMemory. Você precisa escrever um device driver para poder acessar esse dispositivo.
http://technet.microsoft.com/en-us/library/cc787565(v=ws.10).aspx