Chinaunix首页 | 论坛 | 博客
  • 博客访问: 51622
  • 博文数量: 9
  • 博客积分: 68
  • 博客等级: 民兵
  • 技术积分: 75
  • 用 户 组: 普通用户
  • 注册时间: 2011-12-05 16:26
文章分类
文章存档

2012年(3)

2011年(6)

我的朋友

分类: LINUX

2011-12-12 02:28:30

计数器为1
    对应的页表项没有映射任何高端内存页框,pkmap_page_table页表中表项是空闲的,但是它不能使用,因为自从它最后一次使用以来,其相应的TLB表项还未被刷新。
----------------------------------------------------------------------------------

我的问题是:

计数器肯定是因为kunmap(struct page *page)函数减为1的。
但是这个函数并没有删除page_address_htable散列表中与该page对应的元素?
同时,也没说pkmap_page_table页表中page对应的表项被谁给删了啊?
既然这样,那不就是说该page跟虚拟地址间的映射关系还存在,那为什么不能继续使用呢??

非得到需要的时候把这个1清0,删除散列表中对应元素,并在pkmap_page_table的所有项上进行TLB刷新。
然后,再调用map_new_virtual()来重新映射吗?
阅读(1099) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:伙伴系统 有个问题求人解答

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