免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: kikanjuu
打印 上一主题 下一主题

请问完全内存虚拟化处理缺页异常的流程是什么? [复制链接]

论坛徽章:
0
1 [报告]
发表于 2008-02-22 19:21 |显示全部楼层
原帖由 kikanjuu 于 2008-2-22 18:33 发表
请问在完全内存虚拟化(Full Memory Virtualization,包括使用影子页表Shadow Page Table)中,处理缺页异常的流程是什么?

例如,KVM, VMWare都是使用完全内存虚拟化技术来虚拟化物理内存的。请问它们处理缺页 ...

LZ这个问题问了x86虚拟技术中最核心、最复杂的部分,相当于问操作系统是如何进行内存管理的。
我不懂,但知道一些。

VMWare具体不清楚,但机制应该差不多。像KVM这样的,page fault分为两种:客户机page fault和shadow page fault(影子页表错误)。
对于前者,直接返回注入(虚拟机中一个术语,通知中断、异常等事件的发生,实质是跳转到客户操作系统对应的handler去执行)给客户机,由客户机自己的page fault handler处理。对于shadow fault,是由于客户机页表和影子页表不一致产生的,此时根据客户机页表项,重新生成影子页表对应条目。

论坛徽章:
0
2 [报告]
发表于 2008-02-22 19:50 |显示全部楼层
KVM代码明天给你翻翻。
如果LZ想详细了解,可以花钱下载
http://www.cqvip.com/QK/83538A/2006011/23161565.html
一文。
国内做shadow的应该没有比此文作者更权威的了。
尽管写的是XEN,不过没关系,KVM的实现是抄XEN的

论坛徽章:
0
3 [报告]
发表于 2008-02-22 20:04 |显示全部楼层
原帖由 kikanjuu 于 2008-2-22 19:59 发表
好,拜托老兄了。
Xen是Para-virtualization的,不用影子页表Shadow Page Table机制的吧?

那是在有intel的VT技术出现之前。
现在的XEN完全支持full virtualization。KVM嘛,最初的时候基本上抄XEN

论坛徽章:
0
4 [报告]
发表于 2008-02-22 20:10 |显示全部楼层
原帖由 kikanjuu 于 2008-2-22 20:07 发表
Xen从那一版开始,代码里包含了Full Virtualization的实现?
我有Xen 3.0.2的代码的,貌似没看到过。

3.0.2已经支持了啊
你想,不支持full virtualization,如何启windows

论坛徽章:
0
5 [报告]
发表于 2008-02-22 20:18 |显示全部楼层
原帖由 kikanjuu 于 2008-2-22 20:12 发表
这样啊,你看过3.0.2的代码吗?
若看过,可不可以告诉我full virtualization的do_page_fault在哪里有?
或者告诉我怎么搜到也行。
3x

shadow代码见\xen\arch\x86\mm\shadow目录

论坛徽章:
0
6 [报告]
发表于 2008-02-23 14:07 |显示全部楼层
原帖由 kikanjuu 于 2008-2-23 12:55 发表
谢谢,找到了。看了遇到什么问题在本帖请教你?

shadow我是不懂的,最多大家共同探讨一下,我也学习一下

论坛徽章:
0
7 [报告]
发表于 2008-02-28 17:10 |显示全部楼层
奉老大旨意,上传此文

Xen硬件虚拟机的内存虚拟化实现.rar

143.26 KB, 下载次数: 451

论坛徽章:
0
8 [报告]
发表于 2008-03-03 16:25 |显示全部楼层
原帖由 kikanjuu 于 2008-3-3 15:14 发表
再问个问题:
对于非最低级的客户机页表项,为什么监控程序提供了哈希表,以客户机物理地址和该页表项所在页表的层次为键值,查找影子页表中相应的影子页表项中的影子页表页的宿主机物理地址?

这里为什么需 ...

这个问题应该是这样的。
x86是CPU自己walk页表,所以shadow页表必须符合CPU要求的页表格式,也就是hash表。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP