共用方式為


NX 集區 Opt-In 機制

若要將核心模式驅動程式程式代碼從舊版 Windows 移植至 Windows 8,您應該使用 NonPagedPoolNx 類型的記憶體集區作為最佳做法。 您可以使用數個移植輔助工具之一,輕鬆地「選擇加入」預設使用 NonPagedPoolNx 集區類型。

這些移植輔助工具會使用下列其中一種或兩種技術,讓驅動程式能夠使用 NX 非分頁集區:

  • 使用 #define 前置處理器陳述式來建立廣域定義的巨集名稱。

  • DriverEntry 常式呼叫內嵌函式。

針對大部分的核心模式驅動程式程式碼,這些移植輔助工具可讓開發人員以最少的努力更新其驅動程式。

本節中

主題 說明

單一二進位選擇加入:POOL_NX_OPTIN

若要建置同時在 Windows 8 和舊版 Windows 中執行的單一驅動程式二進位檔,請使用 POOL_NX_OPTIN 選擇加入機制。 這是第三方硬體廠商的移植輔助工具,這些廠商提供單一驅動程式二進位檔來支援多個 Windows 版本。

多重二進位自選加入:POOL_NX_OPTIN_AUTO

如果您是硬體廠商,為不同版本的 Windows 提供不同的驅動程式二進位檔,您可以使用POOL_NX_OPTIN_AUTO選擇加入機制。 此移植輔助工具會針對 Windows 8 和驅動程式支援的每個舊版 Windows 建置個別的驅動程式二進位檔。

選擇性選擇退出:POOL_NX_OPTOUT

您可以全域啟用一組驅動程式來源檔案的無執行 (NX) 集區選擇加入機制,然後使用 POOL_NX_OPTOUT 覆寫一或多個所選來源檔案的這個選擇加入機制。 這可讓選取的來源檔案繼續使用可執行的非分頁記憶體。 您可以使用POOL_NX_OPTOUT退出機制搭配POOL_NX_OPTIN或POOL_NX_OPTIN_AUTO選擇加入機制。