資訊,在應用程式使用 4GT RAM 微調

文章翻譯 文章翻譯
文章編號: 171793 - 檢視此文章適用的產品。
全部展開 | 全部摺疊

在此頁中

結論

本文將告訴您的 Windows NT Server 企業版 (Windows NT 伺服器/E) 4.0 版的 「 4GT RAM 微調功能。與標準的 Windows NT 伺服器每個處理程序位址限制為 2 GB 的隨機存取記憶體 (RAM)。4GT 功能的 Windows NT 伺服器/E 會增加此限制到 3 GB,且不引入新的 API。4GT 的運作方式是減少潛在從到 1 GB 的 2 GB 配置給 Windows NT 核心的 RAM。

大部分的本文中資訊已從產品的版本資訊擷取出來。

其他相關資訊

Windows NT Server 平台所開發的應用程式繼續成長這兩個大小和效能需求方面。對於會耗用像是資料庫管理系統 (DBMS) 的 I/O 的應用程式使用較大的處理序空間可以提供可觀的效能優點,如耗用大量時間的 I/O 存取媒體會降低。與目前的 Windows NT Server 產品每個處理程序位址限制為 2 GB。4GT 會增加此限制到 3 GB,且不引入新的 API。4GT 的運作方式是減少潛在從到 1 GB 的 2 GB 配置給 Windows NT 核心的 RAM。

應用此功能優點程式在具有 2 GB 以上的實體 RAM 功能強大的電腦上執行的和,可以利用較大的位址空間。對開發人員和應用程式影響摘要如下。

Windows NT 伺服器/E 支援 4GT 只 Intel 架構的伺服器上。

注意: 這樣不會增加超過它目前的限制為 4 GB 的 Windows NT Server 定址記憶體只在 32 位元處理器上運作的 4GT。

4GT 的寫入應用程式

使用者模式位址選取項目:

當啟用 4GT 虛擬位址的最高的位元無法用來區別使用者模式位址與核心模式位址。

記憶體配置問題:

某些動態連結程式庫 (DLL) 檔案載入接近 2 GB 界限 ; 因此,沒有在其中連續無法配置記憶體使用 VirtualAlloc 2 GB 的空間的區域。

在核心模式中可見的效果:

核心模式程式碼可以不再假設使用者/核心界限是 0x80000000,或任何其他數字。使用 ProbeForRead 或 ProbeForWrite 巨集的程式碼必須使用新的標頭不再包含關於 0x80000000 處開始的核心空間假設重建。

您應用程式中啟用 4GT 支援

變更支援 4GT 完系統和應用程式層級。

系統的變更:

一經安裝 Windows NT 伺服器/E 您必須修改 Boot.ini 檔以啟用 4GT。若要以便 4GT 只是,在啟動一行加入 / 3GB 參數。

注意: 此變更才有效,如果您使用的 Windows NT 伺服器/E。 在標準的 Windows NT 上這個旗標將會重新配置是核心,但應用程式將會無法存取 2 GB 以上。

例如:
[開機載入器]
逾時 = 30
預設值 = 多重 (0) 磁碟 (0) rdisk (0) 磁碟分割 (2) \WINNT
[作業系統] (0) 的多重磁碟 (0) rdisk (0) 磁碟分割 (2) \WINNT="Windows NT 伺服器版本 4.00"/ 3 GB
多重 (0) 磁碟 (0) rdisk (0) 磁碟分割 (2) \WINNT="Windows NT 伺服器版本 4.00 [VGA 模式]"/basevideo/sos
注意: 有些上述行已經加以換行的可讀性。

應用程式的變更:

沒有新的 API 所需的 4GT 支援。而是,記憶體配置維持相同,在中記下下列的例外情況 」 的起算 4GT 秘訣支援]。不過,會對每個應用程式來自動提供具有 3 GB 位址空間沒有效果。為了 4GT 的選擇性使用已實作下列機制:
  • 必須查看 3 GB 位址空間的可執行檔必須要有位元 IMAGE_FILE_LARGE_ADDRESS_AWARE 在他們的映像標頭中設定。這可以完成使用 Imagecfg 工具包含在 [支援 Windows NT 伺服器/E 光碟片上的資料夾。比方說修改目標檔案 DBMSApp.exe,在輸入下列命令提示字元:
    Imagecfg-l DBMSApp.exe
注意: 這個連結器也有新的參數 (/ LARGEADDRESSAWARE) 來與位元 IMAGE_FILE_LARGE_ADDRESS_AWARE 連結可執行檔。設定這個位元,然後在沒有 4GT 支援的系統上執行應用程式應該不會影響應用程式。

如需有效 4GT 支援的秘訣

下列方針被要做的變更摘要開發人員會想要檢閱它們考慮啟用他們的應用程式內的 4GT 支援:
  • 使用 GlobalMemoryStatus 取得的總使用者虛擬空間量。 避免使用 hard-wired 常數定義,例如"# define HIGHEST_USER_ADDRESS 0xC0000000 」。嘗試偵測在執行階段真正的價值。

  • 避免使用指標帶正負號的比較。某些應用程式可能會基於此原因毀損 4GT 啟用的系統上。例如條件 」 如果 (指標 > 40000000) 」 將會為 2 GB 以上的指標,則為 False。

  • 使用標記的項目 (與位址值的資料值) 最高的位元的程式碼將會失敗。比方說 32 位元字可能被視為是使用者模式位址如果下方 0x80000000 和錯誤代碼如果上方。這無法再運作。

設定分頁檔大小

如果使用 4GT 選項,並且有具有大於 3 GB 的實體記憶體的系統,您可能要考慮變更網頁檔案的預設大小。請注意這會變更使用 [控制台] 中的 [系統] 工具。在 Windows NT 3.51 預設分頁檔大小通常是 11 MB 大於實體記憶體。Windows NT 4.0 中預設的分頁檔大小等於系統上的實體記憶體數量。在 4 GB 的電腦上這會導致 4.01 GB 分頁檔。在這種情況下此分頁檔的效果可能是最少,根據總大小為 4 GB。據以,有 256 MB 的分頁檔可能會更有效率地使用磁碟空間。不過,擁有較小的分頁大小將會影響應用程式的總記憶體認可大小。您應該檢閱這些設定與獨立軟體廠商 (ISV) 為您正在執行與 4GT 選項的應用程式。

屬性

文章編號: 171793 - 上次校閱: 2006年10月31日 - 版次: 1.1
這篇文章中的資訊適用於:
  • Microsoft Windows NT Server 4.0 Enterprise Edition
關鍵字:?
kbmt kbhowto kbinfo KB171793 KbMtzh
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:171793
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com