Недавно я узнал, что процессоры AMD-64 (x86_64) теоретически способны адресовать 64-битное адресное пространство, фактически только адрес 48-битные. Очевидно, AMD не думала, что полное 64-битное адресное пространство будет необходимо или практично в ближайшее время.
Из статьи Википедии:
Архитектура AMD64 определяет 64-битный формат виртуальных адресов, из которых младшие 48 бит используются в текущих реализациях. Это позволяет использовать до 256 ТБ (2 48 байт) виртуального адресного пространства.
Фактически, это ограниченное адресное пространство иногда фактически "используется" программистами, которые наполняют старшие 16-битные указатели дополнительной информацией. (См., Например, tagged_ptr в библиотеках Boost C++).
Я пытаюсь выяснить, подходит ли эта же практика для других 64-разрядных архитектур, таких как IA64 и PowerPC. Я уже некоторое время гуглю, но не могу найти никакой информации по этому поводу.
Имеет ли (малоиспользуемая) архитектура IA64 или архитектура PowerPC также только 48-битное адресное пространство на практике?