2012-11-16 122 views
0

內存分爲兩部分
1)某些內存部分爲操作系統系統進程保留
2)用戶進程的剩餘內存。
32位操作系統爲OS進程分配4GB內存。像這樣爲64位操作系統分配了多少內存空間(僅用於系統進程的內存空間,即操作系統進程)。這個問題在採訪中問我64位操作系統內存分配

回答

2

我不清楚這個問題對Windows有多特別。從一般的角度來看,你可以得到40億美元,即4GB。所以2 會給你16 exabytes(!)

查看here瞭解更多信息。

一個64位寄存器可以存儲264(超過18位)不同 值。因此,具有64位存儲器地址的處理器可以直接訪問字節可尋址存儲器的264字節(= 16 exbibytes)。

請注意附帶條件。外部巴士。僅僅因爲CPU寄存器是64位寬,它並不是必然意味着外部總線將是相同的寬度。因此,CPU和機器架構一起將決定實際的限制。請注意標記爲Limitations of Practical Processors的部分。

0

真的不是真的畢竟。

Windows帶有不止一個內核或變體。

例如,市場上有Windows操作系統,內核支持PAE,這足以證明您的陳述並非如此。

此外,Windows的32位桌面版本無法提供4Gb的可尋址內存,但只有〜3.5。

編輯 參考this link瞭解詳細信息。

+0

這並不完全回答這個問題。 –

+0

@Cthulhu當OP將完成編輯我將再次回覆 – user1802174

0

最大內存地址空間取決於您擁有的操作系​​統版本。

Physical Memory Limits: Windows 7

一些更多的閱讀關於這方面Pushing the Limits of Windows: Physical MemoryPushing the Limits of Windows: Processes and Threads

+0

你可以在32位Windows 7上安裝4GB,但是你將永遠無法使用4GB與32位Windows下的任何進程。這個表格指的是物理限制,而不是限制每個進程的限制。 – user1802174

+0

@ user1802174我認爲OP在採訪中的問題沒有得到很好的表述。我想他應該回答「更多,但完全取決於操作系統和CPU架構」 –

相關問題