[发明专利]一种基于QEMU的国产平台系统模拟的实现方法在审
申请号: | 201810585235.X | 申请日: | 2018-06-08 |
公开(公告)号: | CN108874442A | 公开(公告)日: | 2018-11-23 |
发明(设计)人: | 赵瑞东;张武;陈亮甫;吴登勇 | 申请(专利权)人: | 山东超越数控电子股份有限公司 |
主分类号: | G06F8/76 | 分类号: | G06F8/76;G06F8/40 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 阚恭勇 |
地址: | 250100 山东省*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 平台系统 主机操作系统 处理器指令 翻译 程序指令 代码移植 主机系统 虚拟机 用户台 用户态 指令 移植 应用 | ||
本发明提供一种基于QEMU的国产平台系统模拟的实现方法,属于代码移植技术领域,本发明主机操作系统运行在国产平台上,X86应用通过运行在主机系统上的QEMU用户台虚拟机对指令进行翻译并执行。通过在国产平台上移植QEMU模拟x86的用户态环境,实现x86程序指令到国产处理器指令的翻译。
技术领域
本发明涉及代码移植技术,尤其涉及一种基于QEMU的国产平台系统模拟的实现方法。
背景技术
目前,x86处理器在应用中占据主导地位。因为 x86 架构的桌面应用程序更加多样化,很多商业软件都基于 x86 架构,所以 RISC 架构的微处理器想要被广泛地应用,必须先实现与 x86 架构的兼容。因此,代码移植成为软硬件协调发展的一个重要因素。二进制翻译方法应运而生,它有助于将原有体系结构上的软件移植到新的体系结构上运行。
QEMU作为一个开源的硬件模拟器项目,除了支持x86体系架构之外,还支持ARM、MIPS、PowerPC、IA64等多种硬件架构。QEMU采用模块化设计的方法,因此,还能支持多种多样的外设硬件,并且能够方便地进行扩充。QEMU有两种主要运作模式:User mode模拟模式,亦即是用户模式。QEMU能启动那些为不同中央处理器编译的Linux程序。而Windows是其主要目标。System mode模拟模式,亦即是系统模式。QEMU能模拟整个电脑系统,包括中央处理器及其他周边设备。它使得为跨平台编写的程序进行测试及除错工作变得容易。其亦能用来在一部主机上虚拟数部不同虚拟电脑。
发明内容
为了解决以上技术问题,本发明提出了一种基于QEMU的国产平台系统模拟的实现方法。
本发明的主机操作系统运行在国产平台上,X86 应用通过运行在主机系统上的QEMU用户台虚拟机对指令进行翻译并执行。QEMU 引入了一套代码生成机制,称为 TCG(Tiny CodeGenerator) 。 TCG 引入了一种中间指令,源机器指令先被翻译到中间指令,再被翻译到目标指令,从逻辑上隔离了源和目标体系结构。中间指令具有 RISC 特征,指令个数较少,因此,降低了移植的难度。源指令可能使用多条中间指令仿真,但并不是所有的源机器指令都要被翻译成中间指令,那些在翻译阶段即可确定其动作的源机器指令,如处理器模式切换指令,无需被翻译成中间指令,利用 C 函数 ( 称作 helper 函数 )实现即可,当翻译到这类源机器指令时,实际生成的是对helper 函数的调用指令。
本发明主要包括QEMU虚拟机在国产平台下的移植和编译。实现方案:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东超越数控电子股份有限公司,未经山东超越数控电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810585235.X/2.html,转载请声明来源钻瓜专利网。