5

需要創建一個腳本來檢查內核是否處於PAE模式。當然,僅僅檢查/ proc/cpuinfo標誌是否有'pae'設置是不夠的。如何以編程方式確定Linux處於PAE模式還是非PAE模式?

我們必須知道PAE機制是否實際上不僅實現了,而且還被激活。

由於PAE內核現在是新的默認設置,並且如果您需要非PAE內核,現在必須創建另一個內核。

  1. 換句話說,我們如何判斷一個內核是否具有PAE的非PAE(是測試的兩種可能條件之一)。

  2. 另外就是,如何判斷一個內核是否是沒有PAE支持的CPU的PAE。

並且無法判斷在典型的安全內核中是否使用了CONFIG_HIGHMEM或CONFIG_PAE內核配置選項。

$ cat /boot/config-$(uname -r) | grep PAE 
    CONFIG_X86_PAE=y 

你沒有訪問該文件:

+2

'/ proc/cpuinfo'是確定給定處理器是否以PAE模式運行的可靠方法。這對你來說還不夠,似乎意味着你想通過你的Linux平臺測試BIOS設置。你能詳細說明你想達到的目標嗎? –

+0

由於PAE內核現在是默認的,並且如果您需要非PAE內核,現在必須使其成爲現在。 換句話說,如何判斷內核是否具有PAE的非PAE(是測試的兩種可能條件之一)。 另外,如何判斷一個內核是否在沒有PAE支持的CPU上是PAE。 而且無法判斷在安全的內核設置中是否使用了「CONFIG_HIGHMEM」或「CONFIG_PAE」。 –

+0

更新了問題以反映這一點。 –

回答

1

通常,CONFIG_PAE可以在你的/ boot/config- *,這樣被發現的?

0

一種方法是讀取CR4寄存器並查看第5位。它對於PAE將爲1,對於無PAE將爲0。您可以在內核中運行的某些代碼(例如內核驅動程序)中讀取該寄存器。您可以爲此寫一個小驅動程序。它不應該很複雜。

相關問題