在中断时获取current-> pid

时间:2012-05-13 09:54:48

标签: linux linux-kernel kernel scheduling interrupt-handling

我在linux调度程序上写了一些东西,我需要知道在我的中断进来之前哪个进程正在运行..当前结构是否可用?如果我在中断处理程序中执行current-> pid,我是否得到了我中断的进程的pid?

2 个答案:

答案 0 :(得分:3)

你可以,current->pid存在并且是被中断的进程(可能是空闲线程,或任何)。

如果你在Linux调度程序内写,你应该非常小心。调度程序在选择要运行的新进程时更改current,因此其值取决于您何时读取它。

答案 1 :(得分:0)

我不希望当前在进程上下文之外有效。如果您正在使用调度程序,那么您可以抓住它存储指向运行任务的指针的位置,例如struct cfs_rq。