如何检查我的内核抢占配置?

dae*_*hee 12 linux kernel

我想检查我的 Linux 内核是抢占式还是非抢占式。我如何使用命令来检查这一点,例如uname -a

Chr*_*own 11

内核是否可抢占取决于您想要抢占的内容,如在 Linux 内核中,有多种可以分别启用/禁用抢占的东西。

如果您的内核已启用CONFIG_IKCONFIGCONFIG_IKCONFIG_PROC启用,您可以通过以下方式找到您的抢占配置/proc/config.gz(如果您没有此配置,某些发行版会提供内核配置/boot):

$ gzip -cd /proc/config.gz | grep PREEMPT
CONFIG_TREE_PREEMPT_RCU=y
CONFIG_PREEMPT_RCU=y
CONFIG_PREEMPT_NOTIFIERS=y
# CONFIG_PREEMPT_NONE is not set
# CONFIG_PREEMPT_VOLUNTARY is not set
CONFIG_PREEMPT=y
CONFIG_PREEMPT_COUNT=y
# CONFIG_DEBUG_PREEMPT is not set
# CONFIG_PREEMPT_TRACER is not set
Run Code Online (Sandbox Code Playgroud)

如果有CONFIG_IKCONFIG,但没有CONFIG_IKCONFIG_PROC,您仍然可以使用extract-ikconfig.