64位数据模式

在看到一个网页介绍HotSpot JVM的Compressed oop(压缩的对象引用)的设置时,看到LP64和ILP32系统的术语,在wikipedia查了下,发现正常了点知识,记录一下。首先,L是Long integer的缩写,P是Pointer的缩写,I是integer的缩写,LL是Long Long的缩写。其次,在64位系统中,Unix/Linux等是LP64数据模式,而Windows是LLP64模式.

Data model short (integer) int long (integer) long long pointers/size_t Sample operating systems LLP64/IL32P64

1632326464Microsoft Windows (x86-64 and IA-64)

LP64/I32LP64

1632646464Most Unix and Unix-like systems, e.g. Solaris, Linux, BSD, and OS X; z/OS

ILP64

1664646464HAL Computer Systems port of Solaris to SPARC64

SILP64

6464646464“Classic” UNICOS (as opposed to UNICOS/mp, etc.)

LP64系统中,long和pointer是64字节,而int是32字节。当然,在任何的32或64位系统上,long long 类型都是64字节。多数的32位系统多数都是ILP32模式的(我没细查了),int, long, pointer都是32字节的。

参考资料:

http://en.wikipedia.org/wiki/64-bit_computing

http://en.wikipedia.org/wiki/32-bit

https://wikis.oracle.com/display/HotSpotInternals/CompressedOops

Original article: 64位数据模式

©2014 笑遍世界. All Rights Reserved.

敢于奋斗的人,心中不怕困难。

64位数据模式

相关文章:

你感兴趣的文章:

标签云: