2013-11-25 57 views
1

this IBM article來自:Java進程大小的32位和64位

一個32位Java進程可以由Java堆,本機堆和操作系統共享的4 GB進程地址空間。

...

64位進程沒有這個限制,地址能力在TB級。許多企業應用程序都有大量Java堆(我們已經看到Java堆需求超過100 GB的應用程序)。 64位Java允許大規模的Java堆(基準測試堆發佈至200GB)。

什麼是64位處理器背後的解釋有相當大(基本上非常大)的地址空間和32位沒有。基本上64位內部發生的事情不在32位機器內部。

回答

3

什麼64位處理器背後的解釋有相當大的(基本上非常大的)地址空間和32位沒有。基本上64位內部發生的事情不在32位機器內部。

很簡單,有兩倍的空間來存儲地址,所以你可以存儲在這個空間正方形的值。

對於較小的值可能會更容易看到;例如,如果我有一個4位地址空間,我可以存儲高達1111,給我最多15位的內存。使用8位地址空間,我可以存儲高達11111111,給我255(15^2)位的內存。

請注意,此值只是表示您可以使用的最大內存量,實際上並不是給您這個內存 - 但是如果您擁有的內存超過了您的內存,則無法訪問它。

0

用32位的單詞,可以製作大約40億個不同的值。

這是40億字節的內存地址價值。

與64位,您可以表示更多的值。大約(4,000,000,000^2),其結果是大約16,000,000,000,000,000,000,