在Linux 6.7中,现在有支持在引导时启用/禁用32位程序支持。“ia32_emulation=”参数可用于启用/禁用32位用户空间程序支持和支持32位系统调用的能力。现在,当强制取消x86 32位支持时,如果用户不知道,因为当前没有提供任何警告,这可能会令人困惑,但这种情况即将改变。
排在Linux 6.8合并窗口前面的Tip/tip.git的x86/misc分支中一块补丁为了更清楚地说明何时禁用了x86 32位支持。
在禁用支持的情况下尝试在Linux x86_64系统上运行32位二进制文件时,不会只收到“Exec Format Error”,而是会在内核日志中添加一条警告。在禁用支持的情况下首次尝试运行32位程序时,此消息将在日志中显示为通知:
32-位仿真被禁用。可以使用ia32_emulation=on重新启用
A small but useful addition as more Linux distribution vendors begin eyeing paths for disabling x86 32-bit support potentially by default in the not too distant future. But for those still wanting x86 32-bit user-space support, via "ia32_emulation=on" as a boot argument is enough to restore the support.