task_struct何时使用?

时间:2012-08-16 12:14:02

标签: c linux kernel task

我在linux内核2.6中编写了一个简单的LKM 遍历task_struct和的链表 操纵指针。像这样。

printk("original p->tasks.prev->next : %p\n", p->tasks.prev->next);
p->tasks.prev->next = p->tasks.next;
printk("manipulated p->tasks.prev->next : %p\n", p->tasks.prev->next);

printk("original p->tasks.next->prev : %p\n", p->tasks.next->prev);
p->tasks.next->prev = p->tasks.prev;
printk("manipulated p->tasks.next->prev : %p\n", p->tasks.next->prev);

但这对系统没有影响。 我知道进程列表(ps)使用/ proc文件系统。所以我知道这与内核中的实际task_struct链表无关。 但我认为linux调度程序会使用此列表。但似乎错了。

为什么即使我在内核中更改task_struct也没有效果? 何时此系统引用的链表?

0 个答案:

没有答案