gpt4 book ai didi

c - 如何在内核代码中获取子进程列表

转载 作者:太空狗 更新时间:2023-10-29 15:02:56 28 4
gpt4 key购买 nike

我想获取一个进程的子任务(进程)列表,代码如下:

void myFunc()
{
struct task_struct* current_task;
struct task_struct* child_task;
struct list_head children_list;

current_task = current;
children_list = current_task->children;
child_task = list_entry(&children_list,struct task_struct,tasks);
printk("KERN_INFO I am parent: %d, my child is: %d \n",
current_task->pid,child_task->pid);
}

当前pid正确,子pid不正确。我做错了什么?

最佳答案

child_task = list_entry(&children_list,struct task_struct,children);

注意,list_entry 的最后一个参数应该是 children

顺便说一句:如果你不是很熟悉 list_entry,下面的文章是一个很好的来源: http://isis.poly.edu/kulesh/stuff/src/klist/

关于c - 如何在内核代码中获取子进程列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5728592/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com