Linux

CONFIG_IA32_AOUT 實際上做了什麼?

  • May 11, 2012

我執行的是 64 位核心,已經CONFIG_IA32_EMULATION設置好了,還需要CONFIG_IA32_AOUT啟用嗎?

從 中的幫助menuconfig,我不太明白。

簡短的回答:

如果您的系統是普通的台式機/筆記型電腦,並且您沒有執行任何真正過時的軟體,您應該可以安全地禁用CONFIG_IA32_AOUT. 保留CONFIG_IA32_EMULATION,因為您的某些二進製文件可能仍然是 32 位的。


解釋:

這裡涉及兩個問題:執行檔格式在 64 位系統上執行 32 位程式碼

  • 您可以在 wikipedia 上閱讀有關文件格式的資訊查看它們的比較,但對您來說最重要的資訊是ELF是目前標準,而a.out是其前身。您不太可能以a.out二進製文件的形式找到任何最近的程序(不要將文件格式誤認為編譯器為二進製文件提供的預設輸出名稱- 儘管後者通常仍然是a.out出於歷史原因的二進製文件是ELF格式)。
  • 如果您有一個 64 位系統,那麼您的某些程序很可能仍然是 32 位的。這遇到a.out二進製文件更有可能。

為了清楚起見:ELFa.out格式的二進製文件都可以是 32 位和 64 位的。這些區別是分開的(從比較中可以看出)。

引用自:https://unix.stackexchange.com/questions/38385