发明名称 实现嵌入式虚拟机平台高频率数据采集方法
摘要 本发明公开了一种实现嵌入式虚拟机平台高频率数据采集方法,步骤如下:利用Hypervisor提供的内存映射机制与中断陷入机制,虚拟机分区在Hypervisor空间注册中断预处理函数的调用接口,以及对应的中断内存映射分区,使得高频率数据采集与中断快速响应中的特权操作在Hypervisor中直接完成。本发明主要用于航空航天、能源控制等强实时、高安全要求的嵌入式系统中,在利用虚拟化技术提供的时空隔离等安全性机制的同时,解决传统虚拟化技术响应高频率中断的开销过大的问题,从而实现强实时、高安全的嵌入式虚拟化系统。
申请公布号 CN103853597B 申请公布日期 2017.04.19
申请号 CN201410060284.3 申请日期 2014.02.21
申请人 北京神舟航天软件技术有限公司 发明人 吕紫旭;刘姝;赵英辉;许开维
分类号 G06F9/455(2006.01)I 主分类号 G06F9/455(2006.01)I
代理机构 北京世誉鑫诚专利代理事务所(普通合伙) 11368 代理人 孙国栋
主权项 一种实现嵌入式虚拟机平台高频率数据采集方法,其特征在于:步骤如下:利用Hypervisor提供的内存映射机制与中断陷入机制,虚拟机分区在Hypervisor空间注册中断预处理函数PISR的调用接口,以及对应的中断内存映射分区IMM,使得高频率数据采集与中断快速响应中的特权操作在Hypervisor中直接完成,减少Hypervisor与分区操作系统的多次切换,从而实现高频率数据采集与中断快速响应机制;采集方法的步骤如下:1)、在基于虚拟化技术的航天器飞行控制平台,构建虚拟机监视器Hypervisor,并提供内存映射机制与中断响应机制;2)、在Hypervisor提供专门的内核代码空间与数据空间,提供Hypercall调用接口,允许非特权的虚拟机分区将中断预处理函数PISR保存在对应的内核代码空间中,并申请一定的中断内存映射分区IMM,用于前半段代码运行过程中的数据保存;3)、当虚拟机分区VM1需要每20ms通过AD采样获取某传感器Sensor1采集的外部数据,则VM1针对Sensor1采样中断注册对应的内核中断预处理函数PISR1,并申请中断内存映射分区IMM1,PISR1运行在Hypervisor空间中,IMM1被Hypervisor映射给VM1,当AD采样中断到达时,Hypervisor不需要切换到特权分区或VM1即可调用PISR1完成AD数据读取工作,将数据依次保存在IMM1中,并继续当前工作的正常处理;当进入VM1的时间窗口后,VM1通过内存映射机制获取之前采集的数据,并对数据进行处理;4)、当虚拟机分区VM2需要每10ms通过双端口RAM即DPRAM1与冗余系统进行数据同步,VM2针对DPRAM1同步信号中断注册对应的内核中断预处理函数PISR2,并申请中断内存映射分区IMM2,PISR2运行在Hypervisor空间中,IMM2被Hypervisor映射给VM2,当双端口RAM同步信号到达时,不需要切换到特权分区或VM1,Hypervisor直接调用PISR2完成同步操作,将同步数据保存在IMM2中,并继续当前工作的正常处理;当进入VM2的时间窗口后,VM2通过内存映射机制获取之前同步的数据,并对数据进行处理。
地址 100094 北京市海淀区永丰路28号