+ -
当前位置:首页 → 问答吧 → 【紧急求助】内核态 current->pid 与 用户空间线程的 pid

【紧急求助】内核态 current->pid 与 用户空间线程的 pid

时间:2010-08-24

来源:互联网

问题如下:
在内核态劫持 sys_mkdir  其中打印出  current->pid

在用户空间在main进程中创建一个线程,执行创建目录的动作,设该被创建的新线程中使 pid = getpid()。

现在的问题是  为什么内核空间的 current->pid 和 用户空间线程中  pid  不一样呢?


是因为linux 现有的内核版本并不支持真正意义上的内核态中的线程?
用户空间中的每一个 进程  和  每一个 线程  在内核空间中 都对应着 不同的独立的  struct task_struck  结构吗?

作者: tanggula2007   发布时间: 2010-08-24

回复 tanggula2007
你对current->pid调用while_each_thread看看,是不是在跟某一个线程的id相同啊。

作者: 瀚海书香   发布时间: 2010-08-24

回复 瀚海书香


    现在就是想在内核空间得到那个线程所在的进程的进程pid号

作者: tanggula2007   发布时间: 2010-08-24

你应该打印current->tgid

作者: 帅绝人寰   发布时间: 2010-08-24