在linux上跟踪进程的上下文切换

在linux上跟踪进程的上下文切换,linux,Linux,我需要监视进程的上下文切换,并找出上下文切换的原因,例如导致切换的特定内核守护进程。我看过相关的帖子,但没有找到满意的答案。我尝试了pidstat,但它只显示了上下文切换的数量。除非必要,否则我不想为某些评测工具重新编译内核。请帮助。我认为这没有什么意义;都发生在内核内部,而不是“进程内部”。它们正在影响某些进程。而且大多数都与内核任务无关。它们发生在调度程序的“几乎内部”。大多数上下文切换都与jiffie相关:运行的任务会在一小段时间(例如20毫秒)后重新调度 关于每个跟踪上下文切换的信息应该

我需要监视进程的上下文切换,并找出上下文切换的原因,例如导致切换的特定内核守护进程。我看过相关的帖子,但没有找到满意的答案。我尝试了pidstat,但它只显示了上下文切换的数量。除非必要,否则我不想为某些评测工具重新编译内核。请帮助。

我认为这没有什么意义;都发生在内核内部,而不是“进程内部”。它们正在影响某些进程。而且大多数都与内核任务无关。它们发生在调度程序的“几乎内部”。大多数上下文切换都与jiffie相关:运行的任务会在一小段时间(例如20毫秒)后重新调度


关于每个跟踪上下文切换的信息应该放在某个地方,即进入某个进程,该进程也会进行上下文切换

我知道当时间量过期时会发生上下文切换,但还有其他原因。我想监控所有这样的上下文切换,无论它们是由于jiffies还是某些更高优先级的进程被调度。