为了账号安全,请及时绑定邮箱和手机立即绑定

Java 32位与64位兼容性

Java 32位与64位兼容性

蝴蝶刀刀 2019-08-12 18:15:52
Java 32位与64位兼容性Java代码是否可以在32位JDK中构建和编译成32位字节代码,在64位JVM中工作?或者64位JVM是否需要64位字节代码?为了提供更多细节,我的代码在运行32位JVM的Solaris环境中工作,但现在我在将JDK和Weblogic Server升级到64位后遇到问题。
查看完整描述

3 回答

?
慕容3067478

TA贡献1773条经验 获得超3个赞

第一个问题是,第二个问题不是; 它是一个虚拟机。您的问题可能与版本之间的库实现中未指定的更改有关。虽然可能是比赛条件。

VM必须经历一些箍。值得注意的是,引用在类文件中被视为int与堆栈中的s 占用相同的空间。doublelong占用两个参考位置。例如字段,VM通常会经历一些重新排列。这一切都是(相对)透明地完成的。

一些64位JVM也使用“压缩oops”。因为数据大约每8或16个字节对齐,所以地址的3或4位是无用的(尽管某些算法可能会窃取“标记”位)。这允许32位地址数据(因此使用一半的带宽,因此更快)在64位平台上使用35或36位的堆大小。


查看完整回答
反对 回复 2019-08-12
  • 3 回答
  • 0 关注
  • 882 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信