"Yair Lifshitz" <[EMAIL PROTECTED]> writes:
>
> Basically, as long as the application is in the 32G range (2^32*2^3),

Seems like a strange assumption. If the application can use 32GB
what stops it from using 40GB or 64GB? Systems with that much 
memory are readily available these days.

> Would be nice to get your opinions on it.

It's a common optimization in the JVM world where the Just in time
compilers do it based on the configured heap sizes and because
there's no fixed ABI.

But on the C compiler level the problem is that you'll have an
completely own ABI and won't be able to use any standard libraries
unless you recompile them. And no system calls without a translation
layer or some way to tag all system interfaces to the the standard
ABI.  Java avoids that by having clearly defined interfaces to the
outside world, but that's not the case in C.  Or you annotiate all
structures where this translation should happen.

It is essentially the same problem as the common "32bit ABI
in long mode" proposals have.

-Andi

Reply via email to