32位操作系統最多支持4G內存,若用4G,那么在32位XP下,最多只能認出并使用3G多,自Vista SP1后雖然能認出4G,但是實際使用的還是3G多。對于32位機器,4G是標準支持,也就是32位的最大尋址,PAE標準擴展支持可以到64G,其實就是把高四位拿來做索引。PAE(AWE)物理地址擴展,這個不是專門對某一系統的,32位的Windows、Unix、linux都可用,它的擴展需要存儲適配器支持,操作系統支持,另外應用程序也必須支持才可以使用超過4G的內存。
PAE 提高了 IA32 處理器處理大于 4 GB 的物理內存的能力。微軟下列操作系統可以通過 PAE 來利用大于 4 GB 的物理內存,也許你能明白為何32位的服務器系統可以支持超過4GB的內存:
Microsoft Windows 2000 Advanced Server
Microsoft Windows 2000 Datacenter Server
Microsoft Windows Server 2003 EnterPRise Edition
Microsoft Windows Server 2003 Datacenter Edition
若要啟用 PAE,需要在 Boot.ini 文件中使用 /PAE 參數。
注意:在 Windows Server 2003 中,僅當服務器使用熱插拔內存設備時,才會自動啟用 PAE。在這種情況下,不需要在配置為使用熱插拔內存設備的系統上使用 /PAE 開關。在其他情況下,必須在 Boot.ini 文件中使用 /PAE 開關來利用大于 4GB 的內存。
典型情況是,在 Windows 2000 或 Windows Server 2003 下運行的進程最多可以訪問 2 GB 的內存地址空間(假設未使用 /3GB 參數),其中一些內存是物理內存,另一些是虛擬內存。運行的程序越多(因而進程也越多),占用的內存地址空間也就越接近 2 GB 這一最大值。
當出現這種情況時,分頁進程將顯著增加并且會對性能產生負面影響。Windows 2000 和 Windows Server 2003 內存管理器使用 PAE 向程序提供更多的物理內存。這會降低對交換頁面文件內存的需要,從而提高了性能。程序本身并不知道實際的內存大小。所有的內存管理和 PAE 內存分配都由內存管理器處理,與運行的程序無關。
當使用 /3GB 參數時,上述信息對于運行的程序有效。要求 3 GB 內存的程序更有可能讓其所需的內存有更多部分在物理內存中,而不是在分頁的虛擬內存中。這將增強那些能夠使用 /3GB 參數的程序的性能。但例外情況是當 /3GB 參數與 /PAE 參數一起使用時。在這種情況下,操作系統將不使用任何超過 16 GB 的內存。此行為是由內核虛擬內存空間考慮導致的。因此,如果系統使用 Boot.ini 文件中的 /3GB 項重新啟動,并且系統的物理內存超過 16 GB,則操作系統不使用額外的物理隨機存取內存 (RAM)。重新啟動計算機時如果不使用 /3GB 開關,將能夠使用所有的物理內存。
AWE 是內存管理器功能的一套應用程序編程接口 (API),它使程序能夠尋址更多內存 — 超過標準 32 位尋址的 4 GB 內存空間。AWE 使程序能夠將物理內存保留為非分頁內存,然后將非分頁內存部分動態映射到程序的內存工作集。此過程使內存密集型程序(如大型數據庫系統)能夠為數據保留大量的物理內存,而不必交換分頁文件以供使用。相反,數據在工作集中進行交換,并且保留的內存超過 4 GB 范圍。此外,超出 4 GB 的內存范圍對內存管理器是公開的,并且 AWE 通過 PAE 發揮作用。沒有 PAE,AWE 就無法保留超出 4 GB 的內存。
以下是一個 Boot.ini 文件的示例,其中已添加了 PAE 開關:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(2)/WINDOWS
[Operating systems]
multi(0)disk(0)rdisk(0)partition(2)/WINDOWS="Windows Server 2003, Enterprise" /fastdetect /PAE
警告:Boot.ini 文件的內容根據您的配置而異。
總之,PAE 是 Windows 2000 和 Windows Server 2003 內存管理器的一項功能,它為請求內存的程序提供了更多物理內存。程序并不知道它正使用的內存中有些在大于 4 GB 的范圍內,正如程序不知道它請求的內存實際上是在頁面文件中一樣。
AWE 是一個 API 集,它使程序能夠保留大內存塊。保留的內存是非分頁的,并且只可以由該程序來使用。如果向系統添加更多內存,BIOS 可能會認出安裝在服務器中的全部物理 RAM,而 Windows 將只能認出部分 RAM。如果服務器具有啟用的冗余內存功能或內存鏡像功能,則全部剩余內存可能對 Windows 都不可見。冗余內存在某個內存塊故障時為系統提供一個故障轉移的內存塊。內存鏡像將內存塊拆分為一個鏡像集。兩種功能都在 BIOS 中啟用或禁用,而無法通過 Windows 訪問。要修改這些功能的設置,您可能必須參考系統用戶手冊或 OEM 網站。另外,您可能必須聯系硬件供應商。
例如,如果正在運行的系統安裝了 4GB 的 RAM,隨后又添加了另外 4GB 的 RAM,Windows 可能只識別出 4GB 或 6GB 的物理內存,而不是全部的 8GB。冗余內存功能或內存鏡像功能可能在您未知的情況下就在新內存塊上啟用。這些癥狀類似于未將 /PAE 開關添加到 Boot.ini 文件時的癥狀。
新聞熱點
疑難解答