====> a system pointer to a usrspc
(actually to any) object is constructed like this (each
character=4-bits):
KAAAA000 00000000 SSSSSSSS
SS00TTAA
Roughly K is the type of the pointer, the As
are authority bits, the 0s are zeroes, the Ss are a
'segment'
address, and the Ts are the object type. The
object starts at address SSSSSSSSSS000000. Note,
that
the low-order 24 bits are zero. When you
create a spacepointer from the system pointer, these
low-order
24 bits contains an offset within the space,
hence the 26Mb limitation.
So, could a
teraspace pointer have a diff "k" value and shift the
segment value over a byte or two?
KAAAA000 0000SSSS SSSSSS00
0000TTAA
Then use the addr xlate tables or
whatever built into the cpu to provide a contiguous looking
group of segments? The intel 386 architecture solved the
segment problem with paging and addr xlate support built into
the cpu. no? I am not sure.
Steve