CN111506395A - 一种混合仿真的全数字虚拟运行环境的实现方法及装置 - Google Patents
一种混合仿真的全数字虚拟运行环境的实现方法及装置 Download PDFInfo
- Publication number
- CN111506395A CN111506395A CN202010551164.9A CN202010551164A CN111506395A CN 111506395 A CN111506395 A CN 111506395A CN 202010551164 A CN202010551164 A CN 202010551164A CN 111506395 A CN111506395 A CN 111506395A
- Authority
- CN
- China
- Prior art keywords
- virtual
- computing resource
- operating system
- resource center
- virtualized computing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
Abstract
本发明涉及一种混合仿真的全数字虚拟运行环境的实现方法及装置,属于虚拟化技术领域,解决了现有的虚拟运行环境对高速总线的设计复杂且耗时,造成应用程序运行效率低的问题。包括如下步骤:加载嵌入式操作系统至软件开发平台;基于软件开发平台,获取虚拟化计算资源中心;修改嵌入式操作系统中的板级支持包信息,使嵌入式操作系统能够直接访问虚拟化计算资源中心指定位置的高速总线设备文件,得到虚拟运行环境,其中,高速总线设备文件用于虚拟高速总线的数据通信功能。实现了应用程序在虚拟运行环境中的安全运行,提高了应用程序的运行效率。
Description
技术领域
本发明涉及虚拟化技术领域,尤其涉及一种混合仿真的全数字虚拟运行环境的实现方法及装置。
背景技术
传统的全数字虚拟运行环境中采用了全硬件系统的虚拟技术,即不仅对硬件系统中所有的核心计算单元进行虚拟,也同时对硬件系统中所有的高速总线进行虚拟,但是不涉及嵌入式操作系统。一方面,随着嵌入式系统越来越多地使用诸如SRIO、1553B、LVDS等高速实时总线,对高速总线的虚拟复杂度大大提高,若是在硬件系统中虚拟化高速总线,往往超过了硬件系统的工作量。
另一方面,对高速总线进行虚拟时,不仅要模拟处理器和各总线之间的数据传输功能,还需要模拟处理器之间、总线之间、处理器和总线之间的数据传输同步,更重要的是虚拟的高速总线与外部激励之间数据通信的过程中还必须通过同步机制做到时序的一致,将会造成多个硬件设备之间、高速总线和硬件设备之间互相牵制等待,使得应用程序在虚拟运行环境中的运行效率降低。
发明内容
鉴于上述的分析,本发明实施例旨在提供一种混合仿真的全数字虚拟运行环境的实现方法及装置,用以解决现有的虚拟运行环境针对高速总线设计复杂且耗时,造成应用程序运行效率低的问题。
一方面,本发明实施例提供了一种混合仿真的全数字虚拟运行环境的实现方法,包括如下步骤:
加载嵌入式操作系统至软件开发平台,其中,所述软件开发平台用于虚拟运行环境的开发调试与测试;
基于所述软件开发平台,获取虚拟化计算资源中心,其中,所述虚拟化计算资源中心用于运行嵌入式操作系统及应用程序;
修改嵌入式操作系统中的板级支持包信息,使嵌入式操作系统能够直接访问虚拟化计算资源中心指定位置的高速总线设备文件,得到虚拟运行环境,其中,所述高速总线设备文件用于虚拟高速总线的数据通信功能。
进一步,所述虚拟化计算资源中心包括虚拟存储器,其中,所述虚拟存储器的获得过程包括:
所述软件开发平台通过读、写函数的方法将一组内存地址单元转化为存储器单元,仿真存储器的读写功能,得到虚拟存储器。
进一步,所述虚拟化计算资源中心还包括虚拟API接口,所述虚拟API接口通过软件开发平台与外部激励连接,用于接收外部激励的故障注入,以实现对所述虚拟运行环境的测试。
进一步,屏蔽高速总线的硬件拓扑结构、总线控制、远程控制和总线监视信息以实现修改所述嵌入式操作系统中的板级支持包信息。
进一步,应用程序在所述虚拟化运行环境中的运行过程包括如下步骤:
所述嵌入式操作系统解析包含应用程序的目标文件,得到待处理的指令;
所述虚拟化计算资源中心获取所述待处理的指令并进行拆分和解析,得到指令类别和操作数;
基于所述指令类别,获取所述操作数进行运算,得到运算结果,并将所述运算结果写回虚拟存储器;
应用程序基于所述虚拟存储器中的运算结果执行相应操作。
另一方面,本发明实施例提供了一种混合仿真的全数字虚拟运行环境的实现装置,包括嵌入式操作系统加载单元,用于加载嵌入式操作系统至软件开发平台,其中,所述软件开发平台用于虚拟运行环境的开发与测试;
虚拟化计算资源中心获取单元,用于根据所述软件开发平台,获取虚拟化计算资源中心,其中,所述虚拟化计算资源中心用于运行嵌入式操作系统及应用程序;
虚拟运行环境获得模块,用于修改所述嵌入式操作系统中的板级支持包信息,使嵌入式操作系统能够直接访问虚拟化计算资源中心指定位置的高速总线设备文件,得到虚拟运行环境,其中,所述高速总线设备文件用于虚拟高速总线的数据通信功能。
进一步,所述虚拟化计算资源中心包括虚拟存储器,其中,所述虚拟存储器的获得过程包括:
所述软件开发平台通过读写函数的方法将一组内存地址单元转化为存储器单元,仿真存储器的读写功能,得到虚拟存储器。
进一步,所述虚拟化计算资源中心还包括虚拟API接口,所述虚拟API接口通过软件开发平台与外部激励连接,用于接收外部激励的故障注入,以实现对所述虚拟运行环境的测试。
进一步,所述虚拟运行环境获得模块通过屏蔽高速总线的硬件拓扑结构、总线控制、远程控制和总线监视信息以实现修改所述嵌入式操作系统中的板级支持包信息。
进一步,应用程序在所述虚拟化运行环境中的运行过程包括如下步骤:
所述嵌入式操作系统解析包含应用程序的目标文件,得到待处理的指令;
所述虚拟化计算资源中心获取所述待处理的指令并进行拆分和解析,得到指令类别和操作数;
基于所述指令类别,获取所述操作数进行运算,得到运算结果,并将所述运算结果写回虚拟存储器;
应用程序基于所述虚拟存储器中的运算结果执行相应操作。
与现有技术相比,本发明至少可实现如下有益效果之一:
1、一种混合仿真的全数字虚拟运行环境的实现方法,在获得虚拟化计算资源中心的同时,通过修改操作系统中板级支持包的硬件拓扑结构、总线控制、远程控制和总线监视信息,使得在虚拟运行环境与外部设备的数据交互操作系统不直接通过高速总线,而是以文件的形式访问虚拟化计算资源中心中的高速总线设备文件,解决了现有的虚拟运行环境对高速总线的设计复杂且耗时,造成应用程序运行效率低的问题,提高了应用系统的运行效率。
2、通过虚拟API接口,可以接收外部激励注入的数据,虚拟化计算资源中心对外部激励注入的数据进行数据处理以完成虚拟环境的测试,为虚拟运行环境的调试提供了支持和依据,保证了虚拟运行环境的可靠性。
3、通过利用软件开发平台修改嵌入式操作系统中的板级支持包信息,使嵌入式操作系统能够直接访问虚拟化计算资源中心指定位置的高速总线设备文件,得到虚拟运行环境,解决了在硬件系统修改虚拟高速总线造成的复杂度大和效率低的问题,提高了应用程序的运行效率。
4、一种混合仿真的全数字虚拟运行环境的实现装置,在获得虚拟化计算资源中心的同时,通过修改操作系统中板级支持包信息,使得虚拟运行环境与外部设备进行数据交互时,嵌入式操作系统不直接通过高速总线,而是以文件的形式访问虚拟化计算资源中心中的高速总线设备文件,处理器跳转至中断服务程序入口进行中断处理,并通过接收缓冲区和发送缓冲区接收或发送数据,实现与外部设备之间的数据通信。解决了现有的虚拟运行环境对高速总线的设计复杂且耗时,造成应用程序运行效率低的问题,提高了应用系统的运行效率。
本发明中,上述各技术方案之间还可以相互组合,以实现更多的优选组合方案。本发明的其他特征和优点将在随后的说明书中阐述,并且,部分优点可从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过说明书以及附图中所特别指出的内容中来实现和获得。
附图说明
附图仅用于示出具体实施例的目的,而并不认为是对本发明的限制,在整个附图中,相同的参考符号表示相同的部件。
图1为一个实施例中混合仿真的全数字虚拟运行环境的实现方法流程图;
图2为一个实施例中虚拟运行环境架构图;
图3为一个实施例中虚拟化计算资源中心处理指令的流程图;
图4为一个实施例中虚拟运行环境与外界设备进行数据交互的流程示意图;
图5为另一个实施例中混合仿真的全数字虚拟运行环境的实现装置结构图;
附图标记:
100-嵌入式操作系统加载单元;200-虚拟化计算资源中心获取单元;300-虚拟运行环境获得模块。
具体实施方式
下面结合附图来具体描述本发明的优选实施例,其中,附图构成本申请一部分,并与本发明的实施例一起用于阐释本发明的原理,并非用于限定本发明的范围。
传统的全数字虚拟运行环境中采用了全硬件系统的虚拟技术,不涉及嵌入式操作系统,在对高速总线进行虚拟时,不仅要模拟处理器和高速总线之间的数据传输功能,还需要模拟处理器之间、高速总线之间、处理器和高速总线之间的数据传输同步,更重要的是虚拟的高速总线与外部激励之间数据通信的过程中还必须通过同步机制做到时序的一致,造成多个硬件设备之间、高速总线和硬件设备之间互相牵制等待,在进行数据运算时会消耗大量的时间,使得应用程序在虚拟运行环境中的运行效率降低。为此,本申请提出一种混合仿真的全数字虚拟运行环境的实现方法及装置,通过软件开发平台获得虚拟化计算资源中心的同时,通过在软件开发平台修改嵌入式操作系统中板级支持包的相应信息,使得嵌入式操作系统能够直接访问虚拟化计算资源中心指定位置的高速总线设备文件,以实现高速总线的虚拟,从而得到虚拟运行环境,实现应用程序在虚拟运行环境的安全运行,提高应用程序运行的效率。
本发明的一个具体实施例,公开了一种混合仿真的全数字虚拟运行环境的实现方法,如图1所示。包括如下步骤:
步骤S1、加载嵌入式操作系统至软件开发平台,其中,软件开发平台用于虚拟运行环境的开发调试与测试。具体的,软件开发平台是虚拟运行环境的基本外围工具,能够编写程序并进行程序的编译与运行,同时也提供虚拟运行环境调试与测试的工具,以实现虚拟运行环境的项目管理、调试与测试。同时,嵌入式操作系统是管理计算机硬件与软件资源的计算机程序,也是计算机系统的内核与基石,能够提供一个让用户与计算机系统交互的操作界面。应用程序运行在嵌入式操作系统上,示例性的,本申请中的嵌入式操作系统可以是海鹰翼辉操作系统。
步骤S2、基于软件开发平台,获取虚拟化计算资源中心,其中,虚拟化计算资源中心用于运行嵌入式操作系统及应用程序。具体的,软件开发平台通过编写程序并进行程序的编译与运行得到虚拟化计算资源中心,该虚拟化计算资源中心能够实现ARM处理器、DSP6678数字信号处理器、国产自主处理器、FPGA和安全可信芯片等任一硬件的数据处理功能,使得应用程序能够在虚拟运行环境中运行,且能够保证应用程序运行时在功能和时序上均与真实硬件保持一致。
通过软件开发平台获得的虚拟化计算资源中心同时具有指令系统、中断流水、定时、并行指令执行等特性。虚拟化计算资源中心根据功能可分为虚拟执行控制模块、内核事件模块、中断响应管理模块三个部分,其中,虚拟执行控制模块主要完成指令的管理并模拟指令运行的流水线模拟,其中,流水线模拟包括取指、译码与模拟执行的操作。其中,指令执行管理指管理处理器对指令的处理状态,包括确定应模拟执行多少条指令,什么时候应该暂停模拟执行等;指令的取址与译码则是指在内存设备中取得要执行的指令,并将其译码,根据对二进制代码的分析(取址和译址)判断指令类别与操作数;指令的模拟执行则是根据指令类别与操作数,执行指令的功能,可能包括对寄存器组或者内存数据的数据写回操作等等。流水线模拟是虚拟化计算资源中心的核心,是诸如CPU这类计算资源高性能的主要特征。同时,流水线模拟可以实现指令取址、译码与执行指令等操作的并行化执行,例如,在虚拟模拟的过程中,首先执行第一条指令取值,接着在第一条指令译码的同时也实现取第二条指令,在第一条指令执行的过程中同时实现第二条指令的译码和第三条指令的取值,即以并行化执行指令的方式提高指令的处理速度,以提高应用程序的运行效率。
内核事件管理模块的作用是对虚拟化计算资源中心中处理器的内部事件进行管理,包括地址触发、时间触发两种形式的事件队列。当处理器执行完一条指令之后,则会对两个事件队列进行响应,如果当前状态满足触发条件,即程序运行到指定地址或者运行了指定的时间时,则对特定的事件进行处理,执行特定功能。
中断响应管理模块的作用主要是为处理器响应中断提供能力。每个虚拟化计算资源中心中的处理器都存在进入中断入口的异常向量表,以定义某种中断对应的程序跳转地址。当处理器执行完每一条指令之后,则会查询当前是否有中断信号产生并判断此中断是否满足响应条件。如果不存在中断,处理器则继续执行下一条指令;若存在中断,则判断此总断是否需要被响应,判断中断是否需要被响应具体包括:检测与中断相关的寄存器是否满足中断条件,包括全局中断使能是否打开、中断标志寄存器中所被置位的位对应的中断使能寄存器是否置位、没有比当前中断优先级更高的中断以及不可屏蔽中断使能位置位等。在以上这些条件都满足的情况下,中断发生,开始处理中断指令。
优选地,所述虚拟化计算资源中心包括虚拟存储器,虚拟存储器的获得过程包括:软件开发平台通过读、写函数的方法将一组内存地址单元转化为存储器单元,仿真存储器的读写功能,得到虚拟存储器。具体来说,存储器地址的映射可以采用IO地址映射和MEMORY地址映射思想,通过读、写函数的方法将一组内存地址单元转化为存储器单元,仿真存储器的读写功能,同时读函数和写函数应该提前被定义,使用时只需要调用即可,从而得到虚拟存储器。
虚拟存储器能够存放待处理的指令,以将待处理的指令输出至处理器进行高效的处理和运算,虚拟存储器还能存储处理器的运算结果,提高了虚拟化计算资源中心中处理器对指令的执行效率。
优选地,如图2所示,虚拟化计算资源中心还包括虚拟API接口,虚拟API接口通过软件开发平台与外部激励连接,用于接收外部激励的故障注入,以实现对虚拟运行环境的测试。具体来说,软件开发平台包括数据注入与采集单元和虚拟运行控制单元,其中,虚拟API接口通过所述数据注入与采集单元和外部激励连接,用于虚拟环境的开发与测试。软件开发平台基于连接的外部激励进行测试时,虚拟运行控制单元负责将完成虚拟环境的时序同步,若虚拟运行环境的时序与真实环境不一致,虚拟运行控制单元根据需要可以暂停虚拟环境的运行,使得虚拟运行环境与真实硬件在时序上保持一致。
通过虚拟API接口,可以接收外部激励注入的数据,使虚拟化计算资源中心对外部激励注入的数据进行数据处理以完成虚拟环境的测试,为虚拟运行环境的调试提供了支持和依据,保证了虚拟运行环境的可靠性。
步骤S3、修改嵌入式操作系统中的板级支持包信息,使嵌入式操作系统能够直接访问虚拟化计算资源中心指定位置的高速总线设备文件,得到虚拟运行环境,其中,高速总线设备文件用于虚拟高速总线的数据通信功能。考虑到在硬件系统中虚拟化高速总线的复杂度大和可靠性差的问题,本申请通过修改嵌入式操作系统中的板级支持包信息,具体是屏蔽高速总线的硬件拓扑结构、总线控制、远程控制和总线监视信息以实现修改嵌入式操作系统中的板级支持包信息,使嵌入式操作系统不直接访问高速总线,而是访问虚拟化计算资源中心中的内存中的高速总线设备文件,以实现对高速总线的虚拟。通过访问该文件,虚拟化计算资源中心可实现与外部设备之间的数据交互。其中,板级支持包介于硬件系统和操作系统之间,用于实现对操作系统的支持。具体的,高速总线设备文件的文件名以本地高速总线设备号+远端ID的方式命名,其中,高速总线设备文件是以编写程序的形式模拟高速总线设备相关信息的文件,包括高速总线的通道模式和读写速率,其中,高速总线的通道模式包括单通道模式、双通道模式、4通道模式;其中单通道包含1xL0, 1xL1, 1xL2, 1xL3,双通道模式包含2xL0L1, 2xL2L3;高速总线的读写速率包括1250, 2500, 3125, 5000,6250(MB/bps)。
通过修改嵌入式操作系统中的板级支持包信息,使嵌入式操作系统能够直接访问虚拟化计算资源中心指定位置的高速总线设备文件,得到虚拟运行环境,解决了在硬件系统虚拟高速总线造成的复杂度大和效率低的问题,提高了应用程序的运行效率。
与现有技术相比,本实施例提供的一种混合仿真的全数字虚拟运行环境的实现方法,在获得虚拟化计算资源中心的同时,通过修改操作系统中板级支持包的硬件拓扑结构、总线控制、远程控制和总线监视信息,使得虚拟运行环境与外部设备在进行数据交互时,操作系统不直接通过高速总线,而是以文件的形式访问虚拟化计算资源中心中的高速总线设备文件,处理器跳转至中断服务程序入口进行中断处理,并通过虚拟化计算资源中心的接收缓冲区和发送缓冲区接收或发送数据,实现与外部设备之间的数据通信。解决了现有的虚拟运行环境对高速总线的设计复杂且耗时,造成应用程序运行效率低的问题,提高了应用系统的运行效率。
优选地,应用程序在所述虚拟化运行环境中的运行过程包括如下步骤:
所述嵌入式操作系统解析包含应用程序的目标文件,得到待处理的指令;
所述虚拟化计算资源中心获取所述待处理的指令并进行拆分和解析,得到指令类别和操作数;
基于所述指令类别,获取所述操作数进行运算,得到运算结果,并将所述运算结果写回虚拟存储器;
应用程序基于所述虚拟存储器中的运算结果执行相应操作。
基于软件开发平台得到虚拟化计算资源中心和嵌入式操作系统后,应用程序便可安全的在操作系统上运行。当应用程序需要实现某一项功能时,例如打开或关闭文件,首先,应用程序将待执行指令输出给嵌入式操作系统,嵌入式操作系统再将待执行指令输出至虚拟化计算资源中心中的虚拟存储器,接着,虚拟化计算资源中心中的处理器从虚拟存储器取出待执行的指令并进行处理,最后将处理结果输出至虚拟存储器。实际上,应用程序是以目标文件的形式存在的,当应用程序需要执行某一项功能时,如图3所示,具体地指令执行步骤包括:嵌入式操作系统解析包含应用程序的目标文件,得到待处理的指令并存储至虚拟化计算资源中心中的内存,处理器从内存中获取待处理的指令并进行拆分和解析,得到指令类别和操作数,接着,处理器获取操作数进行运算,得到运算结果,并将运算结果写回虚拟存储器。最后,嵌入式操作系统将运算结果返回至应用程序,应用程序根据运算结果执行相应操作。当处理器在执行完某一条指令时,查询到有中断产生,首先判断该中断是否满足响应的条件,例如,检测与中断相关的寄存器是否满足中断条件,包括全局中断使能是否打开、中断标志寄存器中所被置位的位对应的中断使能寄存器是否置位、没有比当前中断优先级更高的中断以及不可屏蔽中断使能位置位等。在以上这些条件都满足的情况下,中断发生,处理器开始执行中断模拟,具体是保存当前中断指令地址并清空流水线,跳转至中断服务程序入口进行处理中断指令。
通过虚拟运行环境,应用程序能够在嵌入式操作系统上安全可靠的运行,且通过嵌入式操作系统与虚拟化计算资源中心的相互配合,能够快速且高效地响应应用程序的相应指令且被执行,提高了应用程序的运行效率。
如图4所示,若虚拟运行环境需要与外界设备进行数据交互,外部设备例如鼠标,首先,用户空间中的应用程序调用嵌入式操作系统的系统调用接口,使嵌入式操作系统通过文件操作接口并以访问文件的形式访问虚拟化计算资源中心内存指定位置的高速总线设备文件,处理器跳转至中断服务程序入口进行中断处理,并通过虚拟化计算资源中心的接收缓冲区和发送缓冲区接收或发送数据,实现虚拟环境与外部设备之间的数据通信功能。
本发明的另一个具体实施例,公开了一种混合仿真的全数字虚拟运行环境的实现装置,如图5所示。包括:嵌入式操作系统加载单元,用于加载嵌入式操作系统至软件开发平台,其中,软件开发平台用于虚拟运行环境的开发与测试;虚拟化计算资源中心获取单元,用于根据软件开发平台,获取虚拟化计算资源中心,其中,虚拟化计算资源中心用于运行嵌入式操作系统及应用程序;虚拟运行环境获得模块,用于修改嵌入式操作系统中的板级支持包信息,使嵌入式操作系统能够直接访问虚拟化计算资源中心指定位置的高速总线设备文件,得到虚拟运行环境,其中,高速总线设备文件用于虚拟高速总线的数据通信功能。
通过一种混合仿真的全数字虚拟运行环境的实现装置,在获得虚拟化计算资源中心的同时,通过修改操作系统中板级支持包的相应信息,使得虚拟运行环境与外部设备的数据交互嵌入式操作系统不直接通过高速总线,而是以文件的形式访问虚拟化计算资源中心中的高速总线设备文件,处理器跳转至中断服务程序入口进行中断处理,并通过接收缓冲区和发送缓冲区接收或发送数据,实现虚拟运行环境与外部设备之间的数据通信。解决了在硬件系统虚拟高速总线造成的复杂度大和效率低的问题,提高了应用系统的运行效率。
优选地,虚拟化计算资源中心包括虚拟存储器,其中,虚拟存储器的获得过程包括:
软件开发平台通过读写函数的方法将一组内存地址单元转化为存储器单元,仿真存储器的读写功能,得到虚拟存储器。
虚拟存储器能够存放待处理的指令,以将待处理的指令输出至处理器进行高效的处理和运算,并存储处理器的运算结果,提高了虚拟化计算资源中心中处理器的执行效率。
优选地,虚拟化计算资源中心还包括虚拟API接口,虚拟API接口通过软件开发平台与外部激励连接,用于接收外部激励的故障注入,以实现对虚拟运行环境的测试。
通过虚拟API接口,可以接收外部激励注入的数据,使虚拟化计算资源中心对外部激励注入的数据进行数据处理以完成虚拟环境的测试,为虚拟运行环境的调试提供了支持和依据,保证了虚拟运行环境的可靠性。
优选地,虚拟运行环境获得模块通过屏蔽高速总线的硬件拓扑结构、总线控制、远程控制和总线监视信息以实现修改嵌入式操作系统中的板级支持包信息。
通过虚拟运行环境获得模块实现了板级支持包相关信息的修改,使得虚拟运行环境与外部设备进行数据交互时,不直接通过高速总线,而是以文件的形式访问虚拟化计算资源中心的高速总线设备文件,并通过接收缓冲区和发送缓冲区实现与外部设备之间的数据通信,提高应用程序的运行效率,同时保证了硬件系统的安全性能。
优选地,应用程序在虚拟化运行环境中的运行过程包括如下步骤:
所述嵌入式操作系统解析包含应用程序的目标文件,得到待处理的指令;
所述虚拟化计算资源中心获取所述待处理的指令并进行拆分和解析,得到指令类别和操作数;
基于所述指令类别,获取所述操作数进行运算,得到运算结果,并将所述运算结果写回虚拟存储器;
应用程序基于所述虚拟存储器中的运算结果执行相应操作。
通过虚拟运行环境,应用程序能够在嵌入式操作系统上安全可靠的运行,且通过嵌入式操作系统与虚拟化计算资源中的相互配合,能够快速且高效地实现应用程序需要被执行的功能,提高了应用程序的运行效率。
本领域技术人员可以理解,实现上述实施例方法的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读存储介质中。其中,所述计算机可读存储介质为磁盘、光盘、只读存储记忆体或随机存储记忆体等。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。
Claims (10)
1.一种混合仿真的全数字虚拟运行环境的实现方法,其特征在于,包括如下步骤:
加载嵌入式操作系统至软件开发平台,其中,所述软件开发平台用于虚拟运行环境的开发调试与测试;
基于所述软件开发平台,获取虚拟化计算资源中心,其中,所述虚拟化计算资源中心用于运行嵌入式操作系统及应用程序;
修改嵌入式操作系统中的板级支持包信息,使嵌入式操作系统直接访问虚拟化计算资源中心指定位置的高速总线设备文件,得到虚拟运行环境,其中,所述高速总线设备文件用于虚拟高速总线的数据通信功能。
2.根据权利要求1所述的全数字虚拟运行环境的实现方法,其特征在于,所述虚拟化计算资源中心包括虚拟存储器,其中,所述虚拟存储器的获得过程包括:
所述软件开发平台通过读、写函数的方法将一组内存地址单元转化为存储器单元,仿真存储器的读写功能,得到虚拟存储器。
3.根据权利要求2所述的全数字虚拟运行环境的实现方法,其特征在于,所述虚拟化计算资源中心还包括虚拟API接口,所述虚拟API接口通过软件开发平台与外部激励连接,用于接收外部激励的故障注入,以实现对所述虚拟运行环境的测试。
4.根据权利要求1所述的全数字虚拟运行环境的实现方法,其特征在于,屏蔽高速总线的硬件拓扑结构、总线控制、远程控制和总线监视信息以实现修改所述嵌入式操作系统中的板级支持包信息。
5.根据权利要求1-4任一所述的全数字虚拟运行环境的实现方法,其特征在于,应用程序在所述虚拟运行环境中的运行过程包括如下步骤:
所述嵌入式操作系统解析包含应用程序的目标文件,得到待处理的指令;
所述虚拟化计算资源中心获取所述待处理的指令并进行拆分和解析,得到指令类别和操作数;
基于所述指令类别,获取所述操作数进行运算,得到运算结果,并将所述运算结果写回虚拟存储器;
应用程序基于所述虚拟存储器中的运算结果执行相应操作。
6.一种混合仿真的全数字虚拟运行环境的实现装置,其特征在于,包括:
嵌入式操作系统加载单元,用于加载嵌入式操作系统至软件开发平台,其中,所述软件开发平台用于虚拟运行环境的开发与测试;
虚拟化计算资源中心获取单元,用于根据所述软件开发平台,获取虚拟化计算资源中心,其中,所述虚拟化计算资源中心用于运行嵌入式操作系统及应用程序;
虚拟运行环境获得模块,用于修改所述嵌入式操作系统中的板级支持包信息,使嵌入式操作系统直接访问虚拟化计算资源中心指定位置的高速总线设备文件,得到虚拟运行环境,其中,所述高速总线设备文件用于虚拟高速总线的数据通信功能。
7.根据权利要求6所述的全数字虚拟运行环境的实现装置,其特征在于,所述虚拟化计算资源中心包括虚拟存储器,其中,所述虚拟存储器的获得过程包括:
所述软件开发平台通过读、写函数的方法将一组内存地址单元转化为存储器单元,仿真存储器的读写功能,得到虚拟存储器。
8.根据权利要求7所述的全数字虚拟运行环境的实现装置,其特征在于,所述虚拟化计算资源中心还包括虚拟API接口,所述虚拟API接口通过软件开发平台与外部激励连接,用于接收外部激励的故障注入,以实现对所述虚拟运行环境的测试。
9.根据权利要求6所述的全数字虚拟运行环境的实现装置,其特征在于,所述虚拟运行环境获得模块通过屏蔽高速总线的硬件拓扑结构、总线控制、远程控制和总线监视信息以实现修改所述嵌入式操作系统中的板级支持包信息。
10.根据权利要求6-9任一所述的全数字虚拟运行环境的实现装置,其特征在于,应用程序在所述虚拟运行环境中的运行过程包括如下步骤:
所述嵌入式操作系统解析包含应用程序的目标文件,得到待处理的指令;
所述虚拟化计算资源中心获取所述待处理的指令并进行拆分和解析,得到指令类别和操作数;
基于所述指令类别,获取所述操作数进行运算,得到运算结果,并将所述运算结果写回虚拟存储器;
应用程序基于所述虚拟存储器中的运算结果执行相应操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010551164.9A CN111506395B (zh) | 2020-06-17 | 2020-06-17 | 一种混合仿真的全数字虚拟运行环境的实现方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010551164.9A CN111506395B (zh) | 2020-06-17 | 2020-06-17 | 一种混合仿真的全数字虚拟运行环境的实现方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111506395A true CN111506395A (zh) | 2020-08-07 |
CN111506395B CN111506395B (zh) | 2020-10-02 |
Family
ID=71865110
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010551164.9A Active CN111506395B (zh) | 2020-06-17 | 2020-06-17 | 一种混合仿真的全数字虚拟运行环境的实现方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111506395B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117389691A (zh) * | 2023-12-11 | 2024-01-12 | 利尔达科技集团股份有限公司 | 一种基于嵌入式操作系统的虚拟机 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070074191A1 (en) * | 2005-08-30 | 2007-03-29 | Geisinger Nile J | Software executables having virtual hardware, operating systems, and networks |
CN102968311A (zh) * | 2012-12-13 | 2013-03-13 | 中国航空无线电电子研究所 | 机载嵌入式软件开发平台 |
CN109522056A (zh) * | 2018-11-14 | 2019-03-26 | 天津津航计算技术研究所 | VxWorks系统下大容量存储设备的主机控制器驱动实现方法 |
-
2020
- 2020-06-17 CN CN202010551164.9A patent/CN111506395B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070074191A1 (en) * | 2005-08-30 | 2007-03-29 | Geisinger Nile J | Software executables having virtual hardware, operating systems, and networks |
CN102968311A (zh) * | 2012-12-13 | 2013-03-13 | 中国航空无线电电子研究所 | 机载嵌入式软件开发平台 |
CN109522056A (zh) * | 2018-11-14 | 2019-03-26 | 天津津航计算技术研究所 | VxWorks系统下大容量存储设备的主机控制器驱动实现方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117389691A (zh) * | 2023-12-11 | 2024-01-12 | 利尔达科技集团股份有限公司 | 一种基于嵌入式操作系统的虚拟机 |
CN117389691B (zh) * | 2023-12-11 | 2024-03-22 | 利尔达科技集团股份有限公司 | 一种基于嵌入式操作系统的虚拟机 |
Also Published As
Publication number | Publication date |
---|---|
CN111506395B (zh) | 2020-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2787444B1 (en) | Central processing unit, information processing apparatus, and intra-virtual-core register value acquisition method | |
US5511217A (en) | Computer system of virtual machines sharing a vector processor | |
US8903703B2 (en) | Dynamically adjusting speed versus accuracy of computer platform simulation | |
US8429669B2 (en) | Virtual machine switching control by prefetching information out of and updating a set of processor control information based on a bitmap having update status | |
US7793286B2 (en) | Methods and systems to manage machine state in virtual machine operations | |
US7716031B2 (en) | Interface converter for unified view of multiple computer system simulations | |
US7783867B2 (en) | Controlling instruction execution in a processing environment | |
US7356735B2 (en) | Providing support for single stepping a virtual machine in a virtual machine environment | |
US20110314468A1 (en) | Uniform storage device by partial virtualization machine | |
EP1909177A2 (en) | Enabling multiple instruction stream/multiple data stream extensions on microprocessors | |
US11301283B1 (en) | Virtualization extension modules | |
JP2000029737A (ja) | デバッグ機能のためのリアルタイム外部命令挿入を有するプロセッサ | |
JP2015516602A (ja) | ランタイム計装制御の状況の決定のためのコンピュータ・プログラム、方法、およびシステム | |
CN111506395B (zh) | 一种混合仿真的全数字虚拟运行环境的实现方法及装置 | |
Zampiva et al. | A hypervisor approach with real-time support to the MIPS M5150 processor | |
CN113849397A (zh) | 执行引擎、虚拟机、相关装置和相关方法 | |
JPH1049373A (ja) | パイプライン・デジタル・プロセッサにおいて多重で高精度の事象を操作する方法と装置 | |
JP4978914B2 (ja) | マイクロプロセッサ上での複数命令ストリーム/複数データストリームの拡張を可能にする方法およびシステム | |
WO2023169289A1 (zh) | 一种进程的执行状态切换方法及装置 | |
CN112540908A (zh) | 面向异构众核处理器的轻量级软件调试方法 | |
CN113672554B (zh) | 处理器核、处理器、片上系统和调试系统 | |
US20230418509A1 (en) | Switching memory consistency models in accordance with execution privilege level | |
US11152076B2 (en) | Apparatus and method for executing debug instructions | |
Gomes et al. | Non-intrusive hardware acceleration for dynamic binary translation in embedded systems | |
WO2006091785A1 (en) | Interface converter for unified view of multiple computer system simulations |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |