/*
*Author : DavidLin
*Date : 2014-11-22pm
*Email : linpeng1577@163.com or linpeng1577@gmail.com
*world : the city of SZ, in China
*Ver : 000.000.001
*history : editor time do
* 1)LinPeng 2014-11-22 created this file!
* 2)
*/
<pre name="code" class="plain">/*
* try_to_share()检查进程P中地址”address"是否存在
* 如果存在且是没有被污染的页面,将该页面与当前进程共享
*
* 注意,前提条件是进程p不是当前进程,而且它们共享同样的执行文件
*/
/*
* try_to_share() checks the page at address "address" in the task "p",
* to see if it exists, and if it is clean. If so, share it with the current
* task.
*
* NOTE! This assumes we have checked that p != current, and that they
* share the same executable.
*/
static int try_to_share(unsigned long address, struct task_struct * p)
{
unsigned long from; //管理源页表
unsigned long to; //管理
Linux-0.11内核源码分析系列:内存管理try_to_share()与share_page()函数分析
最新推荐文章于 2021-04-30 11:24:28 发布
本文是Linux-0.11内核源码分析的一部分,主要聚焦于内存管理的try_to_share()和share_page()函数。这两个函数用于检查并尝试将进程中的页面进行共享,确保页面是干净且存在的,并处理页表项。文章详细解释了函数的实现逻辑,包括页目录项、页表项的管理和物理地址的检查。
摘要由CSDN通过智能技术生成