Насколько я понимаю, при 4-уровневом пейджинге используются только 48 младших битов.
Значит, независимо от других битов, адрес будет указывать на один и тот же физический адрес, верно?
Например:
0xffffffff80101000
0x7fffffff80101000
Они всегда будут указывать на один и тот же физический адрес, предполагая, что конфигурация подкачки не меняется, верно?
Я отлаживаю ядро Linux, использую QEMU с GDB, могу получить доступ к 0xffffffff80101000, но 0x7fffffff80101000 всегда терпит неудачу.
(gdb) x/1gx 0xffffffff80101000
0xffffffff80101000 : 0x0000000000102027
(gdb) x/1gx 0x7fffffff80101000
0x7ffffff80101000: Невозможно получить доступ к памяти по адресу 0x7ffffff80101000
(gdb)
Подробнее здесь: https://stackoverflow.com/questions/791 ... vel-paging