我正在编写一个内核模块,它试图获取给定cpu的当前任务,例如,
for_each_possible_cpu(cpu)
{
p = curr_task(cpu);
printk("current task on cpu %d is %d\n", cpu, p->pid);
}
在我们的内核模块中,我们只能使用导出的函数符号,或者我们可以从模块中的系统映射硬编码内核函数地址然后使用它。
现在我只找到了IA64的curr_task函数,在X86_32的给定cpu上获取当前任务的方法是什么?谢谢。
答案 0 :(得分:0)
You can do like:
struct task_struct *task;
task=per_cpu(current_task, cpu_id);
This one could get the “per_cpu##current_task” which represent the cur_task in specified cpu. This may fulfill your requirement.