免费注册 查看新帖 |

Chinaunix

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

QEMU技术分析1 - 动态翻译技术(dynamic translation) [复制链接]

论坛徽章:
0
11 [报告]
发表于 2009-08-20 17:50 |只看该作者
原帖由 Cyberman.Wu 于 2009-8-20 16:00 发表


两回事吧,VT能支持不同的CPU吗?它只是能使用同构的虚拟机如VMWare等执行更快,甚至可以在32位的XP中跑x86_64的系统(我跑过FreeBSD for AMD64),但不可能虚拟出一个PowerPC和ARM吧、

我们用的那个编译 ...


汗,貌似我没有说过哪个跟哪个是一回事吧。

目前X86平台上才有VT,不过,以后PowerPC或者ARM推出类似VT的技术也并非没有可能的事。

当然,以目前来看,使用VT的虚拟机都只能虚拟出和Host同构的Target。

[ 本帖最后由 vxasm 于 2009-8-20 17:53 编辑 ]

论坛徽章:
0
12 [报告]
发表于 2009-08-22 10:39 |只看该作者
龙芯的x86模拟加速就是基于qemu的,
据说使用加速指令后, qemu虚拟出来的x86虚拟机,可以达到宿主mips机80%的性能,

从龙芯2G开始支持x86加速指令

论坛徽章:
0
13 [报告]
发表于 2009-08-24 11:02 |只看该作者
原帖由 vxasm 于 2009-8-19 01:05 发表
void OPPROTO op_movl_T0_T1(void)
{
    T0 = T1;
}

void OPPROTO op_jmp_T0(void)
{
    EIP = T0;
}

void OPPROTO op_movl_T0_0(void)
{
    T0 = 0;
}..

我觉得关键之处在于如何用gcc通过上面这些C函数拿到他们对应的汇编,qemu最初的论文里似乎说他们依赖gcc的一些扩展。

论坛徽章:
0
14 [报告]
发表于 2009-08-24 14:54 |只看该作者
原帖由 mingyanguo 于 2009-8-24 11:02 发表

我觉得关键之处在于如何用gcc通过上面这些C函数拿到他们对应的汇编,qemu最初的论文里似乎说他们依赖gcc的一些扩展。


关键在于dyngen工具。

论坛徽章:
0
15 [报告]
发表于 2009-08-24 16:29 |只看该作者

回复 #9 vxasm 的帖子

VT是同构架的。。比如KVM就是QEMU的VT扩展。。只对X86模拟X86有效

论坛徽章:
0
16 [报告]
发表于 2009-09-04 14:02 |只看该作者
mark

论坛徽章:
0
17 [报告]
发表于 2009-09-09 01:06 |只看该作者
顶一下,收藏

论坛徽章:
0
18 [报告]
发表于 2009-09-15 08:24 |只看该作者
原帖由 prolj 于 2009-8-19 17:37 发表
很好,我受这种思想的影响很大,所以在自己的方案里面也用了很多虚拟机,引擎,解释器一类的东西。
动态翻译是我喜欢的。


一直很好奇prolj是做什么的?

论坛徽章:
0
19 [报告]
发表于 2009-09-23 10:58 |只看该作者
原帖由 coneagoe 于 2009-9-15 08:24 发表


一直很好奇prolj是做什么的?


prolj 做杀毒软件的?游戏引擎?

QEMU 苹果和IBM都用来将古老的程序搬到新的架构上来,复用已有体系架构上的应用,低成本情况下保证效率

论坛徽章:
0
20 [报告]
发表于 2009-09-23 13:31 |只看该作者
PS模拟器不就是类似吗?东南亚的一个牛人破解的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP