实现嵌入式虚拟机平台高频率数据采集方法技术

技术编号:10127627 阅读:233 留言:0更新日期:2014-06-12 19:57
本发明专利技术公开了一种实现嵌入式虚拟机平台高频率数据采集方法,步骤如下:利用Hypervisor提供的内存映射机制与中断陷入机制,虚拟机分区在Hypervisor空间注册中断预处理函数的调用接口,以及对应的中断内存映射分区,使得高频率数据采集与中断快速响应中的特权操作在Hypervisor中直接完成。本发明专利技术主要用于航空航天、能源控制等强实时、高安全要求的嵌入式系统中,在利用虚拟化技术提供的时空隔离等安全性机制的同时,解决传统虚拟化技术响应高频率中断的开销过大的问题,从而实现强实时、高安全的嵌入式虚拟化系统。

【技术实现步骤摘要】
实现嵌入式虚拟机平台高频率数据采集方法
本专利技术属于虚拟机领域,具体地说,涉及一种实现嵌入式虚拟机平台高频率数据采集方法。
技术介绍
以ARINC653规范为代表的综合模块化航空电子系统(IMA)已经成为第四代航空电子系统的实际标准,在航空航天、能源国防领域内得到了普遍应用。而随着虚拟化技术的发展,利用Hypervisor提供的虚拟机分区机制来提供安全性、隔离性、复用性,广泛应用与高性能计算、商业服务器领域,并衍生出诸多采用虚拟化方法实现ARINC653标准的嵌入式实时操作系统,如XtratuM、Integrity、PikeOS等。在航天领域内,尤其是火箭、导弹、载人飞船等航天飞行器控制系统中,需要在运行期间不断采集大量的外部传感器信息,需要采集的数据分属于不同子系统,而某些数据采集的频率可能会很高(每10ms采集多个传感器数据),采集数据不及时将会造成入轨或定位精度降低、无法完成任务等后果。传统虚拟化技术,并没有考虑航空航天、能源国防等诸多领域控制系统对中断响应实时性需求的考虑。如Xen采用了分离设备模型(SplitDriverModel),驱动处理分为前端(Front-End)与后端(Back-End)进行,后端驱动运行在诸如Domain0的特权分区中,负责通过Hypervisor访问实际硬件,而前端程序运行在实际需要设备的分区中,其不需要运行特权指令,只需要从特权分区中通过环形缓冲获取数据即可,当某应用虚拟机分区需要访问设备时,向前端驱动发送请求,前端驱动将请求通过环形缓冲器(RingBuffer)发送给运行在特权分区内的后端驱动,当特权分区开始执行后,逐个获取环形缓冲器中的设备访问请求,分别通过Hypervisor访问实际硬件,并将数据通过共享内存保存,通过环形缓冲通知应用分区来获取设备。前后端设备驱动模型从而一方面实现了设备的共享访问,设备通过直接硬件访问,减少了设备仿真带来的性能开销;另一方面通过缓冲区将设备访问请求进行缓冲,减少了频繁分区切换带来的开销。分离设备模型有利于块设备(blockdevice)的访问效率。在嵌入式虚拟化操作系统XtratuM中,为了提高系统的时间响应速度,在ARINC653规范定义的事件分区调度之外,采用了基于优先级调度的方法,从而使得高优先级分区能够尽早得到响应,从而提高输入数据采集、信号响应等任务的响应速度。优先级调度的方式只能满足高优先级分区尽早得到调度,在外部事件到来时能够及时得到响应,但是分区间切换与调度的开销仍然相对较大。在某些研究中,研究人员将硬件中断信号直接映射到指定的虚拟机分区中,中断信号直接通过虚拟中断的方式传递给虚拟机分区,虚拟机分区的中断服务程序可以直接响应绑定的设备中断,从而提高虚拟化分区的虚拟定时器响应速度。在嵌入式尤其是航天领域内,上述方法存在如下问题:传统虚拟化技术采用的前后端设备模型,通过环形缓冲器将设备访问请求进行缓冲,并通过特权分区将实际设备操作归集到专门分区,适合于大数据量的块设备的共享传输。但是对于一个设备请求,需要在缓冲区内等待特权分区读取,并需要进行多次分区切换才能完成一次设备访问,对于高频率、小数据量、强实时的传感器采集、数据交换等嵌入式强实时系统而言,很多情况下无法满足应用需求。通过优先级调度,能够尽可能加快高优先级任务的响应速度,但是优先级与中断响应频率无直接关联,是有应用特性和业务逻辑所决定的,中断响应频率高的应用分区,其优先级不一定是最高的。因此,高频率中断响应分区一旦被高优先级分区抢占,其数据采集窗口就会错过,从而导致数据的丢失。在嵌入式平台尤其是航天嵌入式平台中,大量采用的是SPARC、ARM等嵌入式处理器,无法提供APIC模块,其硬件中断资源相对有限(例如SPARCV8,只有16个中断号),无法为每个传感器提供独立的中断号,这样就无法采用上述中断直接映射方式来提高分区的中断响应速度的方法。
技术实现思路
本专利技术要解决的技术问题是克服上述缺陷,提供一种使得高频率数据采集与中断快速响应中的特权操作在Hypervisor中直接完成,减少Hypervisor与分区操作系统的多次切换,从而实现高频率数据采集与中断快速响应机制的实现嵌入式虚拟机平台高频率数据采集方法。为解决上述问题,本专利技术所采用的技术方案是:一种实现嵌入式虚拟机平台高频率数据采集方法,其特征在于:步骤如下:利用Hypervisor提供的内存映射机制与中断陷入机制,虚拟机分区在Hypervisor空间注册中断预处理函数(PISR)的调用接口,以及对应的中断内存映射分区(IMM),使得高频率数据采集与中断快速响应中的特权操作在Hypervisor中直接完成,减少Hypervisor与分区操作系统的多次切换,从而实现高频率数据采集与中断快速响应机制。采集方法的步骤如下:1)、在基于虚拟化技术的航天器飞行控制平台,构建虚拟机监视器Hypervisor,并提供内存映射机制与中断响应机制;2)、在Hypervisor提供专门的内核代码空间与数据空间,提供Hypercall调用接口,允许非特权的虚拟机分区将中断预处理函数PISR保存在对应的内核代码空间中,并可以申请一定的中断内存映射分区IMM,用于前半段代码运行过程中的数据保存;3)、当虚拟机分区1(VM1)需要每20ms通过AD采样获取某传感器(Sensor1)采集的外部数据,则VM1可以针对Sensor1采样中断注册对应的内核中断预处理函数(PISR1),并申请中断内存映射分区IMM1,PISR1运行在Hypervisor空间中,IMM1被Hypervisor映射给VM1,当AD采样中断到达时,Hypervisor不需要切换到特权分区或VM1即可调用PISR1完成AD数据读取工作,将数据依次保存在IMM1中,并继续当前工作的正常处理;当进入VM1的时间窗口后,VM1可以通过内存映射机制获取之前采集的数据,并对数据进行处理;4)、当虚拟机分区2(VM2)需要每10ms通过双端口RAM即DPRAM1与冗余系统进行数据同步,VM2可以针对DPRAM1同步信号中断注册对应的内核中断预处理函数PISR2,并申请中断内存映射分区IMM2,PISR2运行在Hypervisor空间中,IMM2被Hypervisor映射给VM2,当双端口RAM同步信号到达时,不需要切换到特权分区或VM1,Hypervisor直接调用PISR2完成同步操作,将同步数据保存在IMM2中,并继续当前工作的正常处理;当进入VM2的时间窗口后,VM2可以通过内存映射机制获取之前同步的数据,并对数据进行处理。由于采用了上述技术方案,与现有技术相比,本专利技术提供了一种在虚拟化平台中完成高频率数据采集与中断快速响应机制,利用Hypervisor提供的内存映射机制与中断陷入机制,虚拟机分区在Hypervisor空间注册中断预处理函数的调用接口,以及对应的中断内存映射分区,使得高频率数据采集与中断快速响应中的特权操作在Hypervisor中直接完成,减少Hypervisor与分区操作系统的多次切换,从而实现高频率数据采集与中断快速响应机制。附图说明图1为本专利技术一种实施例的工作程序图。具体实施方式实施例:一种实现嵌入式虚拟机平台高频率数据采集方法,步骤如本文档来自技高网
...
实现嵌入式虚拟机平台高频率数据采集方法

【技术保护点】
一种实现嵌入式虚拟机平台高频率数据采集方法,其特征在于:步骤如下:利用Hypervisor提供的内存映射机制与中断陷入机制,虚拟机分区在Hypervisor空间注册中断预处理函数(PISR)的调用接口,以及对应的中断内存映射分区(IMM),使得高频率数据采集与中断快速响应中的特权操作在Hypervisor中直接完成,减少Hypervisor与分区操作系统的多次切换,从而实现高频率数据采集与中断快速响应机制。

【技术特征摘要】
1.一种实现嵌入式虚拟机平台高频率数据采集方法,其特征在于:步骤如下:利用Hypervisor提供的内存映射机制与中断陷入机制,虚拟机分区在Hypervisor空间注册中断预处理函数PISR的调用接口,以及对应的中断内存映射分区IMM,使得高频率数据采集与中断快速响应中的特权操作在Hypervisor中直接完成,减少Hypervisor与分区操作系统的多次切换,从而实现高频率数据采集与中断快速响应机制;采集方法的步骤如下:1)、在基于虚拟化技术的航天器飞行控制平台,构建虚拟机监视器Hypervisor,并提供内存映射机制与中断响应机制;2)、在Hypervisor提供专门的内核代码空间与数据空间,提供Hypercall调用接口,允许非特权的虚拟机分区将中断预处理函数PISR保存在对应的内核代码空间中,并申请一定的中断内存映射分区IMM,用于前半段代码运行过程中的数据保存;3)、当虚拟机分区VM1需要每20ms通过AD采样获取某传感器Sensor1采集的外部数据,则VM1针对Sensor1采样中断注册对应的内核中断预...

【专利技术属性】
技术研发人员:吕紫旭刘姝赵英辉许开维
申请(专利权)人:北京神舟航天软件技术有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1