【技术实现步骤摘要】
一种基于Hypervisor的黑匣子实现方法及系统
本专利技术属于计算机操作系统
,具体涉及一种基于Hypervisor的黑匣子实现方法及系统。
技术介绍
Hypervisor叫做虚拟机监视器(VirtualMachineMonitor),是一种运行其他操作系统的操作系统。Hypervisor运行在物理硬件和操作系统之间的中间层操作系统,可允许多个操作系统和应用共享一套基础物理硬件,运行在Hypervisor之上的操作系统称之为客户机操作系统(GuestOS)。由于Hypervisor上可以运行多种GuestOS,而GuestOS可能会采用像Linux内核这种多任务,可抢占的操作系统。对于Linux内核代码,其在4.20版本的代码量已经达到2500万行,代码庞大无法精简,,一旦出现异常崩溃情况,很难进行调试和跟踪。Hypervisor之前一直被用于服务器领域,但是随着嵌入式系统的发展,其被认为是嵌入式系统的下一个前沿领域,以解决日益增加的复杂应用场景对嵌入式系统有限资源利用的决策难。Hypervisor ...
【技术保护点】
1.一种基于Hypervisor的黑匣子实现方法,其特征在于,包括以下步骤:/nS1:Hypervisor根据用户配置创建若干个Guest OS,然后为每个Guest OS预分配一块用于保存黑匣子数据的内存区域,并记录所述内存区域的地址信息;/nS2:Hypervisor在永久存储设备上预分配一块用于保存黑匣子的存储地址空间,整个黑匣子的所述存储地址空间按照Guest OS的数量进行分区,即一个Guest OS对应一个所述存储地址空间,每个分区中按照保存的不同信息划分为非滚动区、滚动区和内存转储区;其中,非滚动区记录Guest OS一部分数据且不可覆盖,写满以后不再记录;滚 ...
【技术特征摘要】
1.一种基于Hypervisor的黑匣子实现方法,其特征在于,包括以下步骤:
S1:Hypervisor根据用户配置创建若干个GuestOS,然后为每个GuestOS预分配一块用于保存黑匣子数据的内存区域,并记录所述内存区域的地址信息;
S2:Hypervisor在永久存储设备上预分配一块用于保存黑匣子的存储地址空间,整个黑匣子的所述存储地址空间按照GuestOS的数量进行分区,即一个GuestOS对应一个所述存储地址空间,每个分区中按照保存的不同信息划分为非滚动区、滚动区和内存转储区;其中,非滚动区记录GuestOS一部分数据且不可覆盖,写满以后不再记录;滚动区通过循环记录的方式,当记录区数据写满以后滚动到头部继续记录;内存转储区用于保存GuestOS内存转储的数据;
S3:Hypervisor启动GuestOS,进入GuestOS运行并执行相应的业务;GuestOS发生崩溃重启,Hypervisor根据标志位判断当前GuestOS是否为异常重启,如果是异常重启,将GuestOS异常时所用的现场信息写入到步骤S1中的所述内存区域;
S4:Hypervisor提供命令查询所述现场信息,并将所述内存区域中保存的所述现场信息输出到串口或者通过网络传输到远端服务器上;
S5:Hypervisor根据配置判断步骤S3中保存在内存区域的所述现场信息是否需要写入到永久存储设备上,若判断结果为需要写入到永久存储设备,则将所述现场信息固化写入到黑匣子存储地址空间的非滚动区。
2.根据权利要求1所述的一种基于Hypervisor的黑匣子实现方法,其特征在于,所述永久存储设备包括eMMC、SD卡、固态硬盘中的一种或多种。
3.根据权利要求1所述的一种基于Hypervisor的黑匣子实现方法,其特征在于,所述现场信息包括通用寄存器、系统寄存器、堆栈中的一种或多种。
4.根据权利要求1所述的一种基于Hypervisor的黑匣子实现方法,其特征在于,步骤S2中GuestOS将自身数据实时写入所述存储地址空间的滚动区的步骤如下:
S201:GuestOS搜集需要记录的数据,调用Hypervisor提供的黑匣子数据写入接口,将数据传递给Hypervisor的黑匣子管理系统;
S202:Hypervisor黑匣子管理系统接收到GuestOS的数据,通过GuestOS信息找到永久存储设备上GuestOS对应的黑匣子存储地址空间,将数据写入到永久存储设备的黑匣子存...
【专利技术属性】
技术研发人员:不公告发明人,
申请(专利权)人:中瓴智行成都科技有限公司,
类型:发明
国别省市:四川;51
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。