保留的页框池
来源:互联网 发布:声音训练教程软件 编辑:程序博客网 时间:2024/04/29 02:07
Motivation:有两种方法来满足内存分配请求:
- 当有足够的空闲内存可用时,请求会被立刻满足
- 否则,内核会回收一些内存,并将发出请求的内核控制路径阻塞,直到有内存被释放
但是当请求内存时,一些内核控制路径不能被阻塞。比如在处理中断或执行临界区的代码时的原子请求。原子请求从来不会被阻塞:如果没有足够的空闲页,则仅仅是分配失败而已。
尽管内核无法保证一个原子内存分配请求绝不失败,但是内核会采取一些措施尽量减少这种不幸事件的发生。为此,内核为原子内存分配请求引入了保留页框池,保留页框池只在内存不足的时候才使用(具体的使用方式请参见__alloc_pages_internel
中的restart
段的分析)。
保留内存的数量(以KB为单位)存放在min_free_kbytes变量中。它的初始值在内核初始化时设置,并取决于直接映射到内核线性地址空间的第4个GB的物理内存的数量---也就是说,取决于包含在ZONE_DMA和ZONE_NORMAL内存管理区内的页框数目:
保留池的大小 = [sqrt(16*直接映射内存)](KB) (下取整)
但是:128 <= min_free_kbytes <= 65536
ZONE_DMA和ZONE_NORMAL内存管理区将一定数量的页框贡献给保留内存,这个数目与两个管理区的相对大小成比例。
0 0
- 保留的页框池
- DOS下的保留
- Javascript的保留字
- 保留号码的方案
- sqlserver的保留关键字
- WINDOWS的保留字
- 的保留关键字一览
- smarty的保留变量
- JavaScript 的保留关键字
- smarty的保留变量
- ECMAScript的保留字
- Mysql保留的关键字
- Javascript的保留字
- MySQL的保留字
- $smarty的保留变量
- 保留地址的分配
- EF 小数位的保留
- 保留我的
- Java中的CopyOnWrite容器
- hdu 1850 Being a Good Boy in Spring Festival
- jspSmartUpload插件实现图片上传
- 数据存储(二)
- CodeCombat-命令下属
- 保留的页框池
- 80X86指令集
- 醉追诅酌纵仔住嘴锥追组族卒篆赚篆amszmk
- 看遍炎凉薄寡,听惯蜚短流长
- UserNamePasswrodAuthenticationFilter验证过程
- checkio (Numbers Factory)
- hdu 2012 素数判定(打表)(备战LQB)
- .NET平台下websocket协议的实现!
- cocos2dx视频教程进阶篇--第2天--打砖块游戏-box2d物理引擎--续