内核线程有独立的mm页表和 cr3么
内核线程有独立的mm cr3么switch时要切换CR3
内核线程调用do_exit
似乎应该有 是,必须有,其实内核的观点来说只有 task, 每个可以调度的实体都是一个 task_struct 的实例。 captivated 发表于 2016-07-14 13:23 static/image/common/back.gif
是,必须有,其实内核的观点来说只有 task, 每个可以调度的实体都是一个 task_struct 的实例。
主要是因为内核线程没有用户内存区页表,只有内核内存区页表,而内核内存区页表所有线程进程都是一样的
所以这里可能不止一种选择? 发散一下,有没有可能kernel thread借用某个普通进程(例如当前被它preempt掉的进程)的页表?
当然它需要独立的kernel stack。 nswcfd 发表于 2016-07-15 09:44 static/image/common/back.gif
发散一下,有没有可能kernel thread借用某个普通进程(例如当前被它preempt掉的进程)的页表?
当然它需要 ...
从已有的资料看,kernel thread就是借用某个普通进程的页表。似乎就是当前CPU上运行的前一个进程的页表 回复 5# zhanglong71
对,LKD上有讲这个问题。
我翻翻书,撸撸代码,然后贴相关的代码上来。
页:
[1]