vmalloc - 更新页面错误的另一个进程的页表

时间:2016-05-11 00:06:29

标签: linux memory-management page-tables vmalloc

我正在阅读Mel Gorman的书“理解Linux虚拟内存管理器”,并且遇到了一个问题,为什么进程的页表因为访问了vmalloc()ed区域而得到更新。以下是他用来解释此过程的图表链接:

Vmalloc done by a process and another process accessing the vmalloc()ed area

在这种情况下更新的页表是主参考内核页表而不是进程A的页表。我的问题是为什么进程B甚至访问进程A编辑的区域vmalloc()。什么是进程何时访问另一个进程已分配的内存区域的真实场景?问题基本上归结为:如果进程A已经分配了虚拟内存,它将在某个时刻开始写入该虚拟内存支持的物理内存。为什么另一个进程想要访问那段内存?

0 个答案:

没有答案