我所能找到的关于 %gs 寄存器的信息是,它似乎是一个在 >32 位 x86 架构上免费使用的寄存器。似乎 gs_change 在任何系统调用之前执行。 有人可以向我指出如何使用该寄存器的文档吗?— 我假设它是用于内核/用户模式切换的寄存器。
我的问题的背景是,我试图了解内核堆栈跟踪以及到底发生了什么。
堆栈跟踪是从到达 的刷新过程生成的/proc/sys/kernel/hung_task_timeout_secs。
/proc/sys/kernel/hung_task_timeout_secs
x86 linux-kernel
linux-kernel ×1
x86 ×1