顯示卡(尤其是搭配1G以上記憶體)
或是是同晶片組的不同廠牌主機板(BIOS的記憶體定址配置不同)
甚至PCI-E介面卡的數量(包含內建與外接)
這些都會影響32位元系統判讀4GB記憶體的結果
安裝4GB記憶體,WINXP 32位元系統之下,看到2.75G~3.75G都是正常的範圍
2.99G跟3.25G這兩個只是最常出現的容量
AMD的系統,舊的AM2~AM3系列,大多是看到3.25G
可是我經手的幾組APU系列,比較新的規格卻是只有2.99G,可能是新的UEFI BIOS有佔用
INTEL的系統比較混亂,我是比較常看到2.99G或是3.5G,反而很少看到3.25G的
我不收PM、我不看PM、有事不要PM我
愛在曖昧不明時最美 wrote:
晶片組
顯示卡(尤其是搭配1G以上記憶體)
或是是同晶片組的不同廠牌主機板(BIOS的記憶體定址配置不同)
甚至PCI-E介面卡的數量(包含內建與外接)
這些都會影響32位元系統判讀4GB記憶體的結果
安裝4GB記憶體,WINXP 32位元系統之下,看到2.75G~3.75G都是正常的範圍
2.99G跟3.25G這兩個只是最常出現的容量
AMD的系統,舊的AM2~AM3系列,大多是看到3.25G
可是我經手的幾組APU系列,比較新的規格卻是只有2.99G,可能是新的UEFI BIOS有佔用
INTEL的系統比較混亂,我是比較常看到2.99G或是3.5G,反而很少看到3.25G的
原來如此
不過看到3.25G的那台電腦是用Q9400,但是不清楚是用哪張主機板...
原來不同主機板會造成不同的差異
badchildx wrote:
你所說的 XP 應該是指 32bit 系統吧 ...
Win7 64Bit 可以完全吃到所有的記憶體 .
XP SP3 "32Bit" 大約能吃到 3.25G 上下 (4G實體記憶體)
XP SP3 "64Bit" 可以吃到完整的 4G
至於你說的 2.99GB 或許是你主機板內顯示功能沒有完全關閉
1.WINXP 32bit SP3 最高能抓到3.75G,3.25G只是比較常見的容量,不是最大值
2.WINXP 64bit 什麼時候出了SP3?這套是SERVER2003核心,嚴格說不算XP
3.很多主機板都只能抓到2.99G,跟有沒有內顯無關
內顯最少吃1MB,最多吃512MB,裝4G記憶體怎麼算也不會出現2.99G這種不搭的數字
「32bit系統只能抓到4GB記憶體」這是微軟故意對低階系統下的封印
同樣是32bit系統,比WINXP更古老的
Windows 2000 Server 支援 4GB RAM
Windows 2000 Advanced Server 支援 8GB RAM
Windows 2000 Datacenter Server 支援 32GB RAM
同樣是32bit系統,跟WINXP同時期的
SERVER 2003 標準版支援4GB RAM
SERVER 2003 企業版支援32GB RAM
SERVER 2003 Datacenter Edition 支援 64G RAM
我不收PM、我不看PM、有事不要PM我
愛在曖昧不明時最美 wrote:
晶片組顯示卡(尤其是...(恕刪)
同樣的xp32位元 灌在不同平台 有2.75~3.25g的結果
個人經驗是越舊的平台越能顯示3.25g 如775 AM2系列
越新的平台頂多只能到2.99G 如AM3 1155系列
以目前出的版子h61系列灌xp32位元似乎沒有一片能夠顯示3.25g的記憶體
這個問題我曾上ptt給人炮過 也爬過很多文
大部份回答都是定址問題 回答顯示2.75~2.99G都是正常
回答使用XP32位元來問問題就是不對
同樣的XP32位元在不同平台 比較舊的平台能極盡使用RAM的硬體資源3.25~3.75G到作業系統
比較新的平台卻只能2.75~2.99
很多人的說法是32位元就是只能這樣
既然同樣32位元在舊平台能到3.25G 在比較新的平台最多卻只能到2.99G
那還是XP32位元問題嗎?
大部份籠統的說法是pci要吃 bios要吃開機時這些部份已經瓜分掉
但定址問題又困惑了我 既然已經定址給MB各部份使用了256MB記憶體
為何又能拿來做RamDisk

如果是定址問題 假如某MB裝4G記憶體 MB廠商不能設計把其餘的0.75G先給MB定址嗎
為什麼是先3.25G再扣256MB給MB 剩2.99這樣的設計
個人自己搞半天的結論就是MB設計問題
要怪罪XP32位元 不如懷疑是微軟與MB廠商的約定更恰當
或是有高人是否能夠指導說明
梅涼新 wrote:
大部份籠統的說法是pci要吃 bios要吃開機時這些部份已經瓜分掉
但定址問題又困惑了我 既然已經定址給MB各部份使用了256MB記憶體
為何又能拿來做RamDisk
如果是定址問題 假如某MB裝4G記憶體 MB廠商不能設計把其餘的0.75G先給MB定址嗎
為什麼是先3.25G再扣256MB給MB 剩2.99這樣的設計
個人自己搞半天的結論就是MB設計問題
要怪罪XP32位元 不如懷疑是微軟與MB廠商的約定更恰當
...(恕刪)
提供一張圖希望能幫助了解:

MB上面的各種裝置,其實絕大部分都不是去"使用掉記憶體",而是佔去"位址空間",可以把它想成是電影院的座位,從編號4GB往前算的那些座位,MB上面的裝置有這些座位的優先使用權,需要佔去多少座位,視系統配備而定,某些系統只要~512MB,也有些安裝了多顯卡以及額外介面卡系統,佔去多達~2GB個座位也是可能的。
系統裝置選完座位後,剩下的位址,才能讓主機板上插的記憶體從前面第一張座位開始對號入座,但是在早期的主機板,跟系統裝置選定的座位重疊到的記憶體,就等於沒有座位,這些記憶體,就無法拿來利用。但是在有支援memory remapping功能的主機板上,座位重疊到的記憶體,會被重新導引到後面一點的無人座位去入座,這樣就可以被作業系統或是Ramdisk軟體拿來運用。
以圖中的例子,系統裝置佔去從編號4GB往前算的1GB個座位,但是插了總數4GB的記憶體,因此跟系統裝置座位重疊到的其中1GB記憶體,會被remapping功能重新畫位到編號4GB~5GB間的座位。但是以32位元WinXP/Vista/Win7來說,就算打開了PAE,作業系統能夠管理的座位,被微軟限制在只限於編號4GB以前的那些座位,因此在系統裝置佔去1GB座位的情況下,作業系統就只能管理到3GB的記憶體。在編號4GB座位後的1GB記憶體,雖然作業系統刻意不去管理,但是可以透過某些特殊的Ramdisk軟體抓來運用。
如果系統裝置只佔0.75GB個座位,那作業系統能管理的的記憶體就是3.25GB。坐到在編號4GB座位後面的記憶體,會有0.75GB,可以作成Ramdisk來利用。
如果像愛在曖昧不明時最美兄提到支援4GB RAM的32位元SERVER 2003標準版,乍看好像跟32位元WinXP/Vista/Win7一樣,但是32位元SERVER 2003標準版作業系統本身,連編號4GB座位之後記憶體,也可以部分直接納入管理,因此實際能管理到的座位總數,以上圖例子來說,是管理到總數5GB個座位,其中記憶體佔了3GB+1GB=4GB個座位,因此雖然同為32位元作業系統,能運用的記憶體,卻是貨真價實的4GB,不是3.25GB,也不是3GB這種數字。如果是32位元的SERVER 2003 Datacenter版,甚至可以支援到PAE上限的64GB記憶體。
梅涼新 wrote:
MB設計技術反而退步
...(恕刪)
倒也不能說是退步,umts兄也已提供說明,主機板上晶片整合度越來越高,被整合進去的裝置以及江山代有新標準的額外外加裝置,也呈增加趨勢,而且現在內顯獨顯一起並存各司其職的比率也不少,這些裝置多少都會增加4GB位址之前的定址空間的佔用。
以我現在用的筆電來說,ATI跟Intel顯示晶片透過Switchable Graphics並存,各自都得佔去定址空間以便跟顯示記憶體/顯示晶片本身進行MMIO,如下圖,如果我這台拿去裝32位元的Win7,將只能管理到2.5GB的記憶體,因為A、B、C、D、E、F區,每區256MB,總共256*6=~1.5GB的定址空間,都給各種裝置、特別是兩個顯示晶片佔去了。
