找人一些研究linux内核,呵呵
2012-05-25 18:23
127 查看
自己建了一个QQ群,群号215614748。主要讨论linux0.11内核学习,目前自己在学习中,愿跟有兴趣、喜欢讨论的童鞋共同学习提高
get_empty_page和get_free_page函数的区别:
get_free_page函数仅仅是在主内存区找到一页空闲物理内存,分析get_free_page内部代码可知,get_free_page实际上是通过遍历mem_map数组,从最后一项开始找到引用次数为0的第一个mem_map项目,然后返回其物理地址。注意,返回的是物理地址。
get_empty_page函数在主内存区注册一页空闲物理内存,并将这块物理内存与参数address线性地址页面挂接起来。分析代码可知,实际上get_empty_page函数在内部是通过调用get_free_page函数和put_page函数来实现的(并且考虑了oom的情况)。
对于一个进程来说,get_empty_page可以帮他的一个线性地址address挂接一个空闲物理内存页面,是很有用的。但是get_free_page对于进程并没有直接的作用,所以get_free_page和put_page函数实际上都是一些底层函数。
get_empty_page和get_free_page函数的区别:
get_free_page函数仅仅是在主内存区找到一页空闲物理内存,分析get_free_page内部代码可知,get_free_page实际上是通过遍历mem_map数组,从最后一项开始找到引用次数为0的第一个mem_map项目,然后返回其物理地址。注意,返回的是物理地址。
get_empty_page函数在主内存区注册一页空闲物理内存,并将这块物理内存与参数address线性地址页面挂接起来。分析代码可知,实际上get_empty_page函数在内部是通过调用get_free_page函数和put_page函数来实现的(并且考虑了oom的情况)。
对于一个进程来说,get_empty_page可以帮他的一个线性地址address挂接一个空闲物理内存页面,是很有用的。但是get_free_page对于进程并没有直接的作用,所以get_free_page和put_page函数实际上都是一些底层函数。
相关文章推荐
- Linux内核生成版本号的一些研究
- Android 移动开发 关于LBS的一些认知 经纬度纠偏问题的研究
- [Perl] 关于 Bugzilla 的一些问题与研究
- [置顶] 计算机视觉领域的一些牛人博客,超有实力的研究机构等的网站链接
- Unity3D 将 Unity 嵌入WPF中的一些研究笔记
- 有关在Win32ASM中写不定参函数的一些研究
- 模拟鼠标/键盘,(机器人,远程控制开发初步)大家一些研究!
- 【HEVC学习与研究】关于GOP与RAP术语的一些解释
- 谈下html5里面p标签的一些见解,呵呵,不是很深奥的东西
- 一些关于新材料研究的想法
- 目前正研究NHibernate,收集了一些文章连接,供大家参考
- 研究HANA的一些笔记记录
- 【转载】checkbox复选框的一些深入研究与理解
- android的jni使用方法的一些探索和研究
- 计算机视觉领域的一些牛人博客,超有实力的研究机构等的网站链接
- 计算机视觉领域的一些牛人博客,超有实力的研究机构等的网站链接
- 对于SVN的一些研究
- I/O中的一些问题的研究
- J2EE学习中一些值得研究的开源项目
- 计算机视觉领域的一些牛人博客,超有实力的研究机构等的网站链接