Chinaunix首页 | 论坛 | 博客
  • 博客访问: 69255
  • 博文数量: 9
  • 博客积分: 211
  • 博客等级: 入伍新兵
  • 技术积分: 105
  • 用 户 组: 普通用户
  • 注册时间: 2011-08-21 21:10
文章分类
文章存档

2012年(3)

2011年(6)

我的朋友

分类: LINUX

2011-08-26 19:42:57

注:本文来自:http://hi.baidu.com/danjiexu/blog/item/aa5b0cbd7217db0119d81fc3.html
   
从物理内存的观点来看,最开始的大概8M左右,是内核程序段和数据段占用的空间,是保留的,不能动态分配。那个地方的地址就是start_pfn,pfn的意思就是物理页框数,就是把地址转换右移12位。
  
  max_pfn指的是总共的物理内存数,是128M的,就是128M >> 12, 是3G, 就是3G >>12
  max_low_pfn牵涉物理内存数量和用户配置的系统启动参数。

  先说用户默认情况下,当物理内存大于896M的时候,max_low_pfn就等于896M >> 12,高端区(highmem)就从89M开始到max_pfn结束;当物理内存小于896M的时候,max_low_pfn = max_pfn = 物理内存, 高端内存区就没有页面。

  当用户指定高端内存区(在物理内存小于896M情况下),max_low_pfn就是用户指定的值,max_pfn仍然是实际内存大小。高端内存区就是从max_low_pfn到max_pfn。


阅读(2220) | 评论(0) | 转发(0) |
0

上一篇:转-LMA和VMA

下一篇:__builtin_constant_p()

给主人留下些什么吧!~~