xp sp3關閉PAE 物理記憶體擴充套件

2021-07-26 12:39:15 字數 2296 閱讀 1015

這幾天除錯系統pte區域,在獲取nt!mmfirstfreesystempte指向的元素時,總無法獲得正確的空閒pte值。反彙編nt!miinitializesystemptes函式時發現這樣的**:

80544e35 8d3cf5c0975580  lea     edi,nt!mmfirstfreesystempte (805597c0)[esi*8]

80544e3c 8b5704 mov edx,dword ptr [edi+4]

80544e3f 8845ff mov byte ptr [ebp-1],al

80544e42 8b07 mov eax,dword ptr [edi]

80544e44 b120 mov cl,20h

80544e46 897df8 mov dword ptr [ebp-8],edi

80544e49 e8121fffff call nt!_aullshr (80536d60)

80544e4e 83f8ff cmp eax,0ffffffffh

80544e51 7530 jne nt!mireservealignedsystemptes+0x7d (80544e83)

nt!mmfirstfreesystempte是個mmpte陣列,sizeof(mmpte)==4才對,怎麼**中會用到:

80544e35 8d3cf5c0975580  lea     edi,nt!mmfirstfreesystempte (805597c0)[esi*8] ;每個元素占用8位元組
檢視了wrk1.2的原始碼,發現在開啟pae的情況下mmpte會占用8b:

#if !defined (_x86pae_) //未開啟pae

typedef hardware_pte_x86 hardware_pte;

typedef phardware_pte_x86 phardware_pte;

#else //開啟pae

typedef hardware_pte_x86pae hardware_pte;

typedef phardware_pte_x86pae phardware_pte;

#endif

typedef struct _hardware_pte_x86pae ;

struct ;

}; //union結構中定義了2個ulong,整個結構至少8位元組

} hardware_pte_x86pae, *phardware_pte_x86pae;

由此,我猜測我除錯用的xp sp3開啟了pae模式,來找找系統資訊作為佐證:

系統屬性和windbg的資訊無不證明這個xp系統執行在pae模式下。

那麼接下來要做的就是關閉pae模式,網上搜尋了一圈(容我吐槽一下baidu,真是什麼都沒找到,最後實在bing上找到的解決辦法)發現只要修改c:\boot.ini屬性並新增以下引數:  /noexecute=alwaysoff /nopae即可(這麼做同時會關閉系統dep功能,反正我是除錯用,無所謂)

[boot loader]

timeout=30

default=multi(0)disk(0)rdisk(0)partition(1)\windows

[operating systems]

multi(0)disk(0)rdisk(0)partition(1)\windows="microsoft windows xp professional" /noexecute=optin /fastdetect

multi(0)disk(0)rdisk(0)partition(1)\windows="debug" /noexecute=alwaysoff /nopae /debug /debugport=com1: /baudrate=115200

儲存並重啟後成功關閉了pae模式:

此時,系統屬性中已經沒有"物理記憶體擴充套件"這樣的字眼,另外windbg也顯示當前用的nt模組指向ntoskrnl.exe。pae成功關閉~

你在使用XP SP3嗎?

某次無意中執行瑞星的 漏洞掃瞄工具 發現提示我安裝ms的xp sp3。我說ms出sp3了啊。火星來的 oops 隨著在網上搜尋了下,介紹sp3的不是很多,還有堆是sp3 beta介紹的,而且d版本的還沒有幾個。總的來說,sp3主要是把之前的補丁集中處理一下,增加安全性,據說還有是像vista 沒用過...

微軟下週將發布XP SP3 開機僅需35秒

訊息,據國外 報道,最新測試結果顯示,windows xp sp3的開機速度比vista sp1快23秒。最新測試結果顯示,在不安裝防毒軟體等任何程式的情況下,windows xp sp3 rc2 開機所需時間為35秒,而vista sp1為58秒。如果安裝其他應用程式,那麼該時間將有所增加。眾所周...

讓XPSP3遠端桌面連線支援網路級身份驗證

如果在windows 2008遠端桌面裡啟用了 帶網路級別的身份驗證 預設在xpsp3裡是沒有辦法用 遠端桌面連線 連線到2008的,需要手工的修改二項登錄檔,預設xpsp3是 不支援網路級別的身份驗證 如何使它支援網路級別的身份驗證呢?需要手工的改兩個登錄檔鍵值,具體操作如下 單擊開始,單擊執行,...