Doug Zwick wrote:
>a) will Java under Leopard be 64-bit?
>
>b) are there any implications for loading JNI libs (e.g. must their bitness
>match that of the loading process, must only use 64-bit system frameworks,
>etc.)?
>
>c) will there be a way to tell in a JNLP file whether a 32-bit or 64- bit
>binary for a JNI library is required (e.g. unique values for os.arch)?
I think most of the answers can be determined from current public
information. Here's what I surmise:
a) Probably both a 32-bit and a 64-bit version, for obvious compatibility
reasons.
b) The 64-bit architecture for both ppc and x86 will be just another binary
in a fat-binary Mach-O file. So this is probably no different than the
current Universal Binary requirements for JNI libs. There's already a
ppc64 arch, just not across-the-board support for it in all frameworks.
c) There is currently no such distinction visible for ppc vs i386, so I
would expect none for 64 vs 32 bit. That said, the "os.arch" system
property is readable by untrusted JNLP apps, and it often signals
architecture width. The reason I expect this is because of how the 'arch'
command works, and how architectures are signified in the sysctl values and
elsewhere. I think the ppc-64 value is "ppc64", but I don't know what the
x86-64 value is.
All the above are inferred from the public info about 64-bit archs and
libs. That is, a new arch or API width is just another binary in a mach-o
file. Apple could add support for Itanium or PDP-8's and it'd still be the
same thing: as long as there's a compiler to produce it, it's just another
binary in a mach-o file.
The main area for rework I see for myself is because a Java int will no
longer be wide enough to hold a pointer. I'll have to modify a couple
native functions in a couple of jnilibs, but other than those, I think I'll
be OK. I expect this transition to be easier than the i386 one, mainly
because I've already resolved the endian-ness issues. Of course, the
magnitude of any conversion task depends on how wedded one's code is to
jint's as wide enough for pointers.
Other questions, such as about the C QT API, are probably best answered by
waiting for the Leopard preview DVD to arrive.
-- GG
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Java-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/java-dev/email@hidden
This email sent to email@hidden