hello,
there's a "trick"

)
first , consider a 32 bit adress : eg 0x2FFF FFFF.
This kind of address is used by applications, and an application can not adress more thn 4GB of memory (2^32).
The kernel has a broader range of adress space. Before to go on, keep in mind, that AIX kernel organizes memory in segments (max of more than 16 M segments, ie 2^24, in 32 bit mode), and each segment is made of 65536 pages of 4 kb (ie 256 MB).
A process will own 16 segments of 256 MB), therefore 4 GB.
So from the kernel point of view, this adress is made of several components :
The first 4 bits (ie "2") in fact point to a register which has a lenght of 24 bits, and point to a segment number.
The following 16 bits of the adress point to the page in the segment which contain the information.
And the remaining 12 bits of the adress point to the byte in the page which has the information.
Therefore The effective adress (32 bits as 0x2FFF FFFF) is translated to a 52 bits adres because the frst 4 bits of the effective adress point to a 24 bit register).
Honestly, I don't see the link with the 96 GB RAM limit, there are still mechanisms after this to translate the 52 bits virtuals adress to a physical adress, and at this step I lost the trail

(
regards