Highmem e lowmem estão relacionados à extensão de endereço físico em processadores x86. Esse mecanismo permite ao processador endereçar 64 GB de memória, em vez dos tradicionais 4 GB. No entanto, como o conjunto de instruções não é alterado e os registros e ponteiros ainda têm 32 bits, o espaço de endereço virtual ainda é limitado a 4 GB. As instruções da máquina sempre usam endereços virtuais, não endereços físicos.
A conseqüência disso é que "highmem" não pode ser endereçado diretamente até que seja mapeado na região endereçável. É por isso que apenas o lowmem usa o mapeamento 1: 1; mapeamento para highmem não é possível.
Sua próxima pergunta foi: por que a lógica da MMU não pode ser simplificada para ignorar as tabelas de páginas e fazer uma subtração simples para obter o endereço físico? A MMU é implementada em hardware e é projetada para usar tabelas de páginas (e o TLB) para fazer seu trabalho. Existem páginas "enormes", que saltam um nível nas tabelas de páginas, fazendo com que o tamanho da página seja 4MB em vez de 4kB no x86.
Sua última pergunta: a divisão de memória em lowmem e highmem também está na arquitetura x64? Não. O mecanismo PAE é um pouco complicado para prolongar a vida útil do x86. O x64 com seus espaços de endereço muito maiores (físicos e virtuais) não precisa dele.