【技术实现步骤摘要】
一种基于Zynq的业务程序故障恢复方法
[0001]本专利技术涉及Zynq故障恢复
,具体涉及一种基于Zynq的业务程序故障恢复方法。
技术介绍
[0002]目前,Zynq平台在工作过程中若出现PS端的操作系统崩溃卡死情况时,无法判断崩溃卡死是由操作系统本身故障还是其运行的业务程序出现故障而导致的,进而无法进行针对性的故障恢复以重启操作系统,则只能通过人工现场调试来恢复操作系统,效率低下且费时费力,大大降低了Zynq平台的运行稳定性。
技术实现思路
[0003]本专利技术的主要目的是提供一种基于Zynq的业务程序故障恢复方法,旨在解决Zynq平台在工作过程中若出现PS端的操作系统崩溃卡死情况时,无法判断崩溃卡死是由操作系统本身故障还是其运行的业务程序出现故障而导致的问题。
[0004]本专利技术提出的技术方案为:一种基于Zynq的业务程序故障恢复方法,应用于Zynq应用系统;所述系统包括Zynq平台,以及与所述Zynq平台通信连接的单片机;所述Zynq平台包括彼此通信连接的PS端和PL端;所述方法,包括:PS端的操作系统正常启动后,基于操作系统自动运行业务程序;操作系统每隔第一预设时长生成并发送心跳信号至单片机;业务程序生成状态记录文本并存储于PL端,并每隔第一预设时长于状态记录文本写入一次状态正常信息,其中,状态正常信息用于表述业务程序运行状态正常;当单片机在上一次接收到心跳信号的第一预设时长后未接收到心跳信号时,等待第二预设时长,根据等待的第二预设时长内是否接收到心跳信号判断操作系统 ...
【技术保护点】
【技术特征摘要】
1.一种基于Zynq的业务程序故障恢复方法,其特征在于,应用于Zynq应用系统;所述系统包括Zynq平台,以及与所述Zynq平台通信连接的单片机;所述Zynq平台包括彼此通信连接的PS端和PL端;所述方法,包括:PS端的操作系统正常启动后,基于操作系统自动运行业务程序;操作系统每隔第一预设时长生成并发送心跳信号至单片机;业务程序生成状态记录文本并存储于PL端,并每隔第一预设时长于状态记录文本写入一次状态正常信息,其中,状态正常信息用于表述业务程序运行状态正常;当单片机在上一次接收到心跳信号的第一预设时长后未接收到心跳信号时,等待第二预设时长,根据等待的第二预设时长内是否接收到心跳信号判断操作系统是否崩溃卡死,其中,第二预设时长大于第一预设时长;当操作系统崩溃卡死时,通过单片机切换Zynq平台的上电电平以启动PL端烧录的嵌入式固定程序,并控制PS端掉电;嵌入式固定程序读取状态记录文本,以判断状态记录文本中上一次应该写入状态正常信息的时间点是否写入了状态正常信息;若是,通过单片机切换Zynq平台的上电电平以启动PS端的操作系统;若否,嵌入式固定程序注释掉业务程序的自动运行代码,以使PS端的操作系统重新启动后,业务程序不再自动运行,然后执行所述通过单片机切换Zynq平台的上电电平以启动PS端的操作系统的步骤。2.根据权利要求1所述的一种基于Zynq的业务程序故障恢复方法,其特征在于,所述系统还包括与Zynq平台远程通信连接的调试终端;所述嵌入式固定程序注释掉业务程序的自动运行代码,以使PS端的操作系统重新启动后,业务程序不再自动运行,之后还包括:嵌入式固定程序将被注释的业务程序标记为待修正程序,并将待修正程序的源代码发送至调试终端;调试终端获取输入的与待修正程序对应的修正后程序的源代码;调试终端将修正后程序的源代码发送至Zynq平台的PS端,以替换待修正程序的源代码;执行所述通过单片机切换Zynq平台的上电电平以启动PS端的操作系统的步骤。3.根据权利要求2所述的一种基于Zynq的业务程序故障恢复方法,其特征在于,所述系统还包括与所述调试终端通信连接的且基于Zynq的测试平台;所述调试终端获取输入的与待修正程序对应的修正后程序的源代码,之后还包括:调试终端将修正后程序的源代码发送至测试平台;单片机获取PL端的状态记录文本,并获取状态记录文本中状态正常信息的条数,并基于状态正常信息的条数和第一预设时长生成测试时长;测试平台运行待修正程序,以判断待修正程序是否出现运行故障,其中,待修正程序的运行时长为测试时长;若是,测试平台生成测试日志,并将待修正程序的源代码发送至调试终端;若否,执行所述调试终端将修正后程序的源代码发送至Zynq平台的PS端,以替换待修正程序的源代码的步骤。4.根据权利要求2所述的一种基于Zynq的业务程序故障恢复方法,其特征在于,所述系
统还包括与所述调试终端通信连接的且基于Zynq的测试平台;测试平台运行有并行测试进程;所述调试终端获取输入的与待修正程序对应的修正后程序,之后还包括:调试终端将修正后程序的源代码发送至测试平台;并行测试进程将修正后程序的源代码按照功能拆分为不同的独立程序模块;并行测试进程分别且同步对不同的独立程序模块进行测试运行,并判断各独立程序模块是否均运行正常;若是,执行所述调试终端将修正后程序的源代码发送至Zynq平台的PS端,以替换待修正程序的源代码的步骤;若否,并行测试进程将出现运行故障的独立程序模块的源代码发送至调试终端。5.根据权利要求4所述的一种基于Zynq的业务程序故障恢复方法,其特征在于,所述测试平台包括测试内存;所述并行测试进程分别且同步对不同的独立程序模块进行测试运行...
【专利技术属性】
技术研发人员:朱斌林,
申请(专利权)人:湖南博匠信息科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。