【发布时间】:2018-07-16 21:23:56
【问题描述】:
我刚刚检查了我的 linux 机器的配置文件 /boot/config_$(uname -r),我发现这两个标志都已定义:
CONFIG_X86_64=y
CONFIG_X86=y
这两个标志不应该是互斥的吗?
另外,我想知道这两个标志是否应该只在内核中使用,因为我看到了很多
#ifdef CONFIG_X86_64
在内核源代码中。用户空间应用程序也可以使用这个标志吗?
此外,由于处理器可以从 64 位模式更改为兼容模式。如果发生这种变化,依赖于 CONFIG_X86_64 的代码在运行时都会失败,对吧?应用程序(内核或用户空间)如何检测机器是64位还是兼容模式?
谢谢。
【问题讨论】:
标签: linux-kernel x86-64