[发明专利]一种快速扫描全虚拟化虚拟机脏页位图的方法有效
申请号: | 201210417868.2 | 申请日: | 2012-10-26 |
公开(公告)号: | CN102981962A | 公开(公告)日: | 2013-03-20 |
发明(设计)人: | 吴松;石宜化;金海;杜云杰 | 申请(专利权)人: | 华中科技大学 |
主分类号: | G06F12/02 | 分类号: | G06F12/02 |
代理公司: | 华中科技大学专利中心 42201 | 代理人: | 朱仁玲 |
地址: | 430074 湖北*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种快速扫描全虚拟化虚拟机脏页位图的方法,包括以下步骤:标志位初始化阶段:在Xen的地址空间中为全虚拟化虚拟机的4GB内存空间分配一级标志位和二级标志位,同时将一级标志位和二级标志位初始化为零,一级标志位的数量为4GB/128MB=32个,二级标志位的数量为1个,标志位设置阶段:读取Xen第二级页表项中的地址,并根据地址来设置一级标志位和二级标志位的值,标志位扫描阶段:根据设置的一级标志位和二级标志位的值来扫描全虚拟化虚拟机的脏页位图,从而得到变脏页面号。本发明在虚拟机动态迁移或者Remus HA系统中减少因扫描脏页位图而暂停虚拟机的时间,从而提高虚拟机的计算性能和服务质量。 | ||
搜索关键词: | 一种 快速 扫描 虚拟 虚拟机 位图 方法 | ||
【主权项】:
一种快速扫描全虚拟化虚拟机脏页位图的方法,其特征在于,包括以下步骤:(1)标志位初始化阶段:在Xen的地址空间中为全虚拟化虚拟机的4GB内存空间分配一级标志位和二级标志位,同时将一级标志位和二级标志位初始化为零,一级标志位的数量为4GB/128MB=32个,二级标志位的数量为1个;(2)标志位设置阶段:读取Xen第二级页表项中的地址,并根据地址来设置一级标志位和二级标志位的值,具体包括以下子步骤:(2‑1)读取Xen第二级页表的第0个页表项;(2‑2)判断已读取页表项中的地址是否有效,若地址有效,则转入步骤(2‑3),否则转入步骤(2‑4);(2‑3)设置该地址相应的一级标志位为1,并根据地址获取相应的脏页位图页面,然后转入步骤(2‑5);(2‑4)获取全零的脏页位图页面,然后转入步骤(2‑7);(2‑5)判断该页表项是否为第4~31号页表项,如果是,则转入步骤(2‑6),否则转入步骤(2‑7);(2‑6)设置二级标志位为1;(2‑7)判断该页表项是否为第31个页表项,如果是,则转入步骤(2‑8),否则转入步骤(2‑9);(2‑8)结束设置,将脏页位图和一级标志位及二级标志位返回给用户空间的应用;(2‑9)读取下一个页表项,并返回步骤(2‑2);(2‑10)重复步骤(2‑2)至(2‑9),直到所有页表项都处理完毕为止;(3)标志位扫描阶段:根据设置的一级标志位和二级标志位的值来扫 描全虚拟化虚拟机的脏页位图,从而得到变脏页面号,具体包括以下子步骤:(3‑1)读取第0个一级标志位的值;(3‑2)判断是否为第4个一级标志位,如果是,则转入步骤(3‑6),否则转入步骤(3‑3);(3‑3)判断该一级标志位的值是否为0,如果是,则转入步骤(3‑5),否则转入步骤(3‑4);(3‑4)逐位扫描该一级标志位对应的脏页位图页面,并将位值为1对应的页面号记录下来,然后转入步骤(3‑4);(3‑5)读取下一个一级标志位的值,并转入步骤(3‑2);(3‑6)判断二级标志位的值是否为零,如果是,则转入步骤(3‑11),否则转入步骤(3‑7);(3‑7)判断已读取的一级标志位是否为第31个一级标志位,如果是,则转入步骤(3‑11),否则转入步骤(3‑8);(3‑8)判断已读取的一级标志位的值是否为0,如果是,则转入步骤(3‑10),否则转入步骤(3‑9);(3‑9)逐位扫描该一级标志位对应的脏页位图页面,并将位值为1对应的页面号记录下来,然后转入步骤(3‑10);(3‑10)读取下一个一级标志位,并返回步骤(3‑7);(3‑11)重复步骤(3‑7)至(3‑10),直到所有一级标志位都处理完毕为止,并得到变脏的页面号。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华中科技大学,未经华中科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201210417868.2/,转载请声明来源钻瓜专利网。
- 上一篇:车辆控制装置和车辆控制方法
- 下一篇:半导体器件及其制造和封装方法