一种基于Linux系统的嵌入式设备重启状态记录方法技术方案

技术编号:19744903 阅读:39 留言:0更新日期:2018-12-12 04:40
本发明专利技术提出一种基于Linux系统的嵌入式设备重启状态记录方法,包括:S1,启动嵌入式设备,加载EEPROM驱动程序,判断嵌入式设备是否为断电重启,若是,在EEPROM中记录断电重启信息,S2,加载看门狗驱动模块,启动看门狗中断服务函数对所述EEPROM进行读写;S3,运行Linux系统,用户通过proc接口访问所述EEPROM中记录的设备重启信息;S4,若设备发生断电重启,直接关闭设备;若设备收到reboot重启命令,在EEPROM中记录reboot重启信息,重启设备;若设备发生看门狗重启,Linux系统进入所述看门狗中断服务函数,在EEPROM中记录看门狗重启信息。本发明专利技术所述重启状态记录方法可统计嵌入式设备过去多次重启的记录信息,用户可直接获取设备重启记录信息,也可直接管理EEPROM中记录的设备重启信息。

【技术实现步骤摘要】
一种基于Linux系统的嵌入式设备重启状态记录方法
本专利技术属于嵌入式设备稳定性领域,涉及一种基于Linux系统的嵌入式设备重启状态记录方法。
技术介绍
嵌入式系统是以应用为中心,以计算机技术为基础。软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统嵌入式系统是将先进的计算机技术、半导体技术、电子技术和具体应用相结合的产物。近年来,在计算机、互联网和通信技术高速发展的同时,嵌入式系统开发技术取得迅速发展,嵌入式系统应用范围也急剧扩大。数码产品、智能手机、网络摄像机及各种掌上型多媒体设备都是典型的嵌入式系统。除此之外,更多的嵌入式系统隐身在不为人知的角落,从小到电子手表、电子体温计、翻译机等,大到如冷气机、电冰箱、电视机,甚至马路上红绿灯的控制器、战斗机中的飞控系统、自动导航设备、汽车中燃油控制、汽车雷达、ABS等的微计算机系统、医院中的医疗器材、工厂中的自动机械等,嵌入式系统几乎无处不在。稳定性是嵌入式系统的生命线,而实验室中的嵌入式产品在调试、安装测试通过后放到实际应用后,往往还会出现很多故障和不稳定的现象。国内很多电子产品卖不到好价格,很大的原因就是它的稳定性没有充足的保障。许多文章也都从各种不同的角度揭示和解决嵌入式系统的稳定性问题,都做了比较细致的研究,提供了许多解决办法。使用这些方法和措施确实能够解决工程实践中的很多问题,但是嵌入式系统是一个综合了软件和硬件的复杂系统,单单依靠那个方面都不能完全的解决其抗干扰问题,只有从嵌入式系统硬件、软件以及结构设计等方面进行全面的考虑,综合应用各种抗干扰技术来全面应对系统内外的各种干扰,才能有效提高其抗干扰性能。嵌入式设备产品投入市场后,其稳定性维护就显得及其重要,当前加载有Linux系统的嵌入式设备产品(例如,网络摄像机IPC)在系统运行层面仅仅做了看门狗保护,设备中一旦程序运行异常,就会触发看门狗重启整个设备系统,以防止设备卡死。这是嵌入式设备运行不稳定的一种常用规避方法,但是对于后期的问题定位与维护没有任何帮助。仅仅知道设备重启过,不知道是以何种方式重启。嵌入式设备重启方式可分为三类:断电重启,整个系统电源关闭后重新上电启动;非断电软重启,在系统电源工作正常的情况下,通过系统软件主动重启设备;非断电看门狗触发重启,因嵌入式设备软件运行异常导致看门狗中断重启整个系统。以某种机制去记录嵌入式设备上一次重启的状态属于哪一种就显得相当必要。
技术实现思路
针对上述现有技术存在的问题,本专利技术提供一种基于Linux系统的嵌入式设备重启状态记录方法,为嵌入式设备的稳定性维护提供支持途径。为了解决上述技术问题,本专利技术采用如下技术方案:一种基于Linux系统的嵌入式设备重启状态记录方法,包括以下步骤:S1,启动嵌入式设备,加载EEPROM驱动程序,判断所述嵌入式设备是否为断电重启,若是,在EEPROM中记录所述断电重启信息;若否,擦除非断电重启标志;S2,加载看门狗驱动模块,启动看门狗,看门狗中断服务函数对所述EEPROM进行读写;S3,运行Linux系统,用户可通过proc接口访问所述EEPROM中记录的设备重启信息;S4,若所述嵌入式设备发生断电重启,直接关闭所述嵌入式设备,等待设备再次上电启动,返回步骤S1;若所述嵌入式设备收到reboot重启命令,在EEPROM中记录所述reboot重启信息,重启所述嵌入式设备,之后关闭所述嵌入式设备,并返回步骤S1;若所述嵌入式设备发生看门狗重启,Linux系统进入所述看门狗中断服务函数,在EEPROM中记录所述看门狗重启信息,关闭所述嵌入式设备,返回步骤S1。进一步地,所述EEPROM的存储空间包括非断电重启标志区、重启次数统计区和数据记录区,所述数据记录区根据所述嵌入式设备重启时间先后存储地址值依次增加。进一步地,所述步骤S3中,所述设备重启信息包括所述断电重启信息、reboot重启信息和看门狗重启信息。进一步地,所述步骤S3中,用户通过proc接口访问EEPROM中记录的设备重启信息时,可擦除部分或全部设备的重启信息,或者,根据EEPROM的存储空间,删除较早的设备重启信息。进一步地,所述步骤S1中,加载EEPROM驱动程序后,判断嵌入式设备是否为断电重启,具体包括以下步骤:S11,读取所述EEPROM中非断电重启标志区的值;S12,判断非断电重启标志区的值,若为1(即,非断电重启),则修改此区域的值为0;S13,判断非断电重启标志区的值,若为0(即,断电重启),则读取所述EEPROM中重启次数统计区的值,将此值加1后更新此区域;S14,根据S13中统计的重启次数计算下一块可用数据记录区的起始地址空间,并将上次断电重启信息记录入EEPROM数据记录区。进一步地,所述步骤S2中,看门狗中断服务函数对所述EEPROM进行读写,具体包括以下步骤:S21,读取所述EEPROM中重启次数统计区的值,将此值加1后更新此区域;S22,将所述EEPROM中非断电重启标志区的值写1;S23,根据S21中统计的重启次数计算下一块可用数据记录区的起始地址空间,并将当前设备运行时间和内核信息记录入此数据记录区。进一步地,所述步骤S4中,所述嵌入式设备收到reboot重启命令,在EEPROM中记录所述reboot重启信息,具体为:S41,所述嵌入式设备收到reboot命令,将EEPROM中的非断电重启标志区写1;S42,读取EEPROM中的重启次数统计区的值,将此值加1后更新此区域;S43,根据步骤S42统计的重启次数计算下一块可用数据记录区的起始地址空间,并将当前系统运行时间和内核信息记录入此数据记录区。本专利技术的有效结果:采用本专利技术所述重启状态记录方法,可统计嵌入式设备过去多次重启的记录信息,包括断电重启、看门狗重启和reboot重启。在用户层面可通过终端命令行下的proc接口,直接获取设备重启记录信息,也可直接管理EEPROM中记录的设备重启信息。为嵌入式设备的稳定性维护提供了较佳的支持途径。附图说明图1是本专利技术EEPROM通过I2C总线扩展情况;图2是本专利技术实例中EEPROM使用分布情况;图3是本专利技术机制划分的四个工作阶段;图4是本专利技术所述重启状态记录过程。具体实施方式为了使本专利技术的目的、技术方案更加清楚明白,以下结合实例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。下面结合附图对本专利技术的应用原理作详细的描述。本专利技术涉及的嵌入式设备可移植运行Linux系统,最小系统需包括一个处理芯片(例如,ARM架构系列芯片S3C2240、HISI3516A)、运行内存SDRAM以及FLASH存储和EEPROM存储器件等。本专利技术使用的所述EEPROM是带电可擦除可编程只读存储器,一种掉电后数据不丢失的存储芯片,用于记录设备每次重启的状态数据和时间数据。通常为I2C总线式串口通信,在存储空间不够的情况下可扩展多块EEPROM存储芯片,可参照图1。所述的reboot命令属于Linux系统BusyBox中的一个命令,用户可在命令行终端执行此命令完成嵌入式设备的重启操作,在本专利技术中,reboot不仅仅需要完成重启操作,而且在设备重启之前需要向EEPROM设备中记录本文档来自技高网
...

【技术保护点】
1.一种基于Linux系统的嵌入式设备重启状态记录方法,其特征在于:包括以下步骤:S1,启动嵌入式设备,加载EEPROM驱动程序,判断所述嵌入式设备是否为断电重启,若是,在EEPROM中记录所述断电重启信息;若否,擦除非断电重启标志;S2,加载看门狗驱动模块,启动看门狗,看门狗中断服务函数对所述EEPROM进行读写;S3,运行Linux系统,用户可通过proc接口访问所述EEPROM中记录的设备重启信息;S4,若所述嵌入式设备发生断电,直接关闭所述嵌入式设备,等待设备再次上电启动,返回步骤S1;若所述嵌入式设备收到reboot重启命令,在EEPROM中记录所述reboot重启信息,重启所述嵌入式设备,之后关闭所述嵌入式设备,并返回步骤S1;若所述嵌入式设备发生看门狗重启,Linux系统进入所述看门狗中断服务函数,在EEPROM中记录所述看门狗重启信息,关闭所述嵌入式设备,返回步骤S1。

【技术特征摘要】
1.一种基于Linux系统的嵌入式设备重启状态记录方法,其特征在于:包括以下步骤:S1,启动嵌入式设备,加载EEPROM驱动程序,判断所述嵌入式设备是否为断电重启,若是,在EEPROM中记录所述断电重启信息;若否,擦除非断电重启标志;S2,加载看门狗驱动模块,启动看门狗,看门狗中断服务函数对所述EEPROM进行读写;S3,运行Linux系统,用户可通过proc接口访问所述EEPROM中记录的设备重启信息;S4,若所述嵌入式设备发生断电,直接关闭所述嵌入式设备,等待设备再次上电启动,返回步骤S1;若所述嵌入式设备收到reboot重启命令,在EEPROM中记录所述reboot重启信息,重启所述嵌入式设备,之后关闭所述嵌入式设备,并返回步骤S1;若所述嵌入式设备发生看门狗重启,Linux系统进入所述看门狗中断服务函数,在EEPROM中记录所述看门狗重启信息,关闭所述嵌入式设备,返回步骤S1。2.根据权利要求1所述的方法,其特征在于:所述步骤S3中,所述设备重启信息包括所述断电重启信息、reboot重启信息和看门狗重启信息。3.根据权利要求1所述的方法,其特征在于:所述步骤S3中,用户可通过proc接口访问和管理EEPROM中记录的设备重启信息,可擦除部分或全部设备的重启信息。4.根据权利要求1所述的方法,其特征在于:所述步骤S1中,所述EEPROM的存储空间包括非断电重启标志区、重启次数统计区和数据记录区,所述数据记录区根据所述嵌入式设备重启时间先后存储地址值依次增加。5....

【专利技术属性】
技术研发人员:孙文胜王晨光王仕女张海娇王恩策
申请(专利权)人:杭州电子科技大学
类型:发明
国别省市:浙江,33

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

1