首页 > 专利 > 上海斐讯数据通信技术有限公司 > 一种AP设备的异常重启原因检测方法及装置专利详情

一种AP设备的异常重启原因检测方法及装置   0    0

有效专利 查看PDF
专利申请流程有哪些步骤?
专利申请流程图
申请
申请号:指国家知识产权局受理一件专利申请时给予该专利申请的一个标示号码。唯一性原则。
申请日:提出专利申请之日。
2016-10-24
申请公布
申请公布指发明专利申请经初步审查合格后,自申请日(或优先权日)起18个月期满时的公布或根据申请人的请求提前进行的公布。
申请公布号:专利申请过程中,在尚未取得专利授权之前,国家专利局《专利公报》公开专利时的编号。
申请公布日:申请公开的日期,即在专利公报上予以公开的日期。
2017-05-17
授权
授权指对发明专利申请经实质审查没有发现驳回理由,授予发明专利权;或对实用新型或外观设计专利申请经初步审查没有发现驳回理由,授予实用新型专利权或外观设计专利权。
2020-01-07
预估到期
发明专利权的期限为二十年,实用新型专利权期限为十年,外观设计专利权期限为十五年,均自申请日起计算。专利届满后法律终止保护。
2036-10-24
基本信息
有效性 有效专利 专利类型 发明专利
申请号 CN201610933610.6 申请日 2016-10-24
公开/公告号 CN106571954B 公开/公告日 2020-01-07
授权日 2020-01-07 预估到期日 2036-10-24
申请年 2016年 公开/公告年 2020年
缴费截止日 2022-11-24
分类号 H04L12/24H04W24/04 主分类号 H04L12/24
是否联合申请 独立申请 文献类型号 B
独权数量 1 从权数量 7
权利要求数量 8 非专利引证数量 0
引用专利数量 0 被引证专利数量 0
非专利引证
引用专利 被引证专利
专利权维持 5 专利申请国编码 CN
专利事件 转让 事务标签 公开、实质审查、授权、权利转移
申请人信息
申请人 第一申请人
专利权人 上海斐讯数据通信技术有限公司 当前专利权人 湖州帷幄知识产权运营有限公司
发明人 王成长 第一发明人 王成长
地址 上海市松江区思贤路3666号 邮编 201616
申请人数量 1 发明人数量 1
申请人所在省 上海市 申请人所在市 上海市松江区
代理人信息
代理机构
专利代理机构是经省专利管理局审核,国家知识产权局批准设立,可以接受委托人的委托,在委托权限范围内以委托人的名义办理专利申请或其他专利事务的服务机构。
上海硕力知识产权代理事务所 代理人
专利代理师是代理他人进行专利申请和办理其他专利事务,取得一定资格的人。
郭桂峰
摘要
本发明公开了一种AP设备的异常重启原因检测方法及装置,该方法包括:在该AP设备重启前,于预留内存写入该次重启原因对应的重启原因标志及重启日志;于该AP设备重启时,映射获得该预留内存的虚拟地址;备份该预留内存中的重启日志信息,并实时记录当前的串口打印信息;读取该预留内存中的重启原因标志及重启日志并予以保存,通过本发明,可确定各AP设备重启的具体原因,大大提高了AP设备故障问题定位的效率和准确性,保障了版本后续迭代的稳定性。
  • 摘要附图
    一种AP设备的异常重启原因检测方法及装置
  • 说明书附图:图1
    一种AP设备的异常重启原因检测方法及装置
  • 说明书附图:图2
    一种AP设备的异常重启原因检测方法及装置
  • 说明书附图:图3
    一种AP设备的异常重启原因检测方法及装置
  • 说明书附图:图4
    一种AP设备的异常重启原因检测方法及装置
  • 说明书附图:图5
    一种AP设备的异常重启原因检测方法及装置
  • 说明书附图:图6
    一种AP设备的异常重启原因检测方法及装置
法律状态
序号 法律状态公告日 法律状态 法律状态信息
1 2021-03-23 专利权的转移 登记生效日: 2021.03.10 专利权人由蚌埠立超信息科技有限公司变更为湖州帷幄知识产权运营有限公司 地址由233000 安徽省蚌埠市燕山路8319号(上理工科技园6号302室)变更为313000 浙江省湖州市吴兴区爱山街道新天地商务写字楼1019室
2 2020-01-07 授权
3 2017-05-17 实质审查的生效 IPC(主分类): H04L 12/24 专利申请号: 201610933610.6 申请日: 2016.10.24
4 2017-04-19 公开
权利要求
权利要求书是申请文件最核心的部分,是申请人向国家申请保护他的发明创造及划定保护范围的文件。
1.一种AP设备的异常重启原因检测方法,包括如下步骤:
步骤一,在该AP设备重启前,于预留内存写入该次重启原因对应的重启原因标志及重启日志,所述预留内存为所述AP设备的一段高端内存,所述预留内存在系统启动时,会预先保留;
步骤二,于该AP设备重启时,映射获得该预留内存的虚拟地址,通过ioremap函数将该预留内存的物理地址映射到该虚拟地址,并保留所述虚拟地址;
步骤三,备份该预留内存中的重启日志信息,并实时记录当前的串口打印信息;
步骤四,读取该预留内存中的重启原因标志及重启日志并予以保存。

2.如权利要求1所述的一种AP设备的异常重启原因检测方法,其特征在于,该预留内存从高到低依次包括:
A区,用于保存重启的原因标志;
B区,映射给该AP设备系统的环形缓冲区,用于实时保存当前的串口打印信息;
C区,用于对B区的备份。

3.如权利要求2所述的一种AP设备的异常重启原因检测方法,其特征在于,于C区后,该预留内存还包括D区,用于保存内核错误发生时的串口详细日志信息。

4.如权利要求3所述的一种AP设备的异常重启原因检测方法,其特征在于:于步骤四中,在该预留内存中的重启原因标志保存后,把该预留内存的A区标志重新赋值为默认值。

5.如权利要求3所述的一种AP设备的异常重启原因检测方法,其特征在于:于步骤四中,通过读proc文件系统读取该预留内存中的重启原因标志及重启日志,并保存至tmp目录文件。

6.一种AP设备的异常重启原因检测装置,包括:
重启前处理单元,在该AP设备重启前,于预留内存写入该次重启原因对应的重启原因标志及重启日志,所述预留内存为所述AP设备的一段高端内存,所述预留内存在系统启动时,会预先保留;
地址映射单元,于该AP设备重启时,映射获得该预留内存的虚拟地址,通过ioremap函数将该预留内存的物理地址映射到该虚拟地址,并保留所述虚拟地址;
日志信息备份及记录单元,用于备份该预留内存中的重启日志信息,并实时记录当前的串口打印信息;
重启原因获取单元,用于读取该预留内存中的重启原因标志及重启日志并予以保存。

7.如权利要求6所述的一种AP设备的异常重启原因检测装置,其特征在于,该预留内存从高到低依次包括:
A区,用于保存重启的原因标志;
B区,映射给该AP设备系统的环形缓冲区,用于实时保存当前的串口打印信息;
C区,用于对B区的备份。

8.如权利要求7所述的一种AP设备的异常重启原因检测装置,其特征在于:于C区后,该预留内存还包括D区,用于保存内核错误发生时的串口详细日志信息。
说明书

技术领域

[0001] 本发明涉及无线网络领域,特别是涉及一种AP设备的异常重启原因检测方法及装置。

背景技术

[0002] WLAN(Wireless Local Area Networks,无线局域网)提供了一种局域网的无线连接服务,能在较小的范围内提供高速的无线数据接入,是目前IT(Information Technology,信息技术)行业比较热门的技术之一,也是流行的无线接入方式。
[0003] 和传动的有线接入方式相比,无线局域网让网络的使用更自由,彻底摆脱了线缆和端口位置的束缚,而且无线局域网具有便于携带,以于移动的优点,免去或减少了繁杂的网络布线,只需要安放一个或多个AP(Access Point,接入点)设备就可以建立覆盖整个建筑或地区的局域网络。
[0004] AP设备是无线局域网的重要组成设备,它是一个无线收发设备,可以将从有线网络(例如Internet)接收到的数据转换为无线信号发送,将接收到的无线信号转换成数据并转发到有线网络。WLAN技术所构建的无线局域网,作为有线网络的补充,摆脱了以太网的束缚,给终端用户提供了方便快捷的网络接入方式,因此,无线网络得到了越来越多的部署,大量的AP设备被安装和使用。
[0005] AP设备在使用过程中有时候会出现重启的情况,然而对于重启的原因,目前还没有一个比较明确的定位方案。虽然,目前有些AP设备出现了记录日志的功能模块,例如,当设备内核异常重启时会记录日志,但现有Ap设备记录系统崩溃日志功能都比较单一,根据其记录的日志无法详细地区分重启的原因,这就影响了版本的稳定性测试以及版本发布,从而影响后期版本的迭代以及稳定性。

发明内容

[0006] 为克服上述现有技术存在的不足,本发明之目的在于提供一种AP设备的异常重启原因检测方法及装置,其可以确定各AP设备重启的具体原因,大大提高了AP设备故障问题定位的效率和准确性,保障了版本后续迭代的稳定性。
[0007] 为达上述目的,本发明提出一种AP设备的异常重启原因检测方法,包括如下步骤:
[0008] 步骤一,在该AP设备重启前,于预留内存写入该次重启原因对应的重启原因标志及重启日志;
[0009] 步骤二,于该AP设备重启时,映射获得该预留内存的虚拟地址;
[0010] 步骤三,备份该预留内存中的重启日志信息,并实时记录当前的串口打印信息;
[0011] 步骤四,读取该预留内存中的重启原因标志及重启日志并予以保存。
[0012] 进一步地,该预留内存从高到低依次包括:
[0013] A区,用于保存重启的原因标志;
[0014] B区,映射给该AP设备系统的环形缓冲区,用于实时保存当前的串口打印信息;
[0015] C区,用于对B区的备份。
[0016] 进一步地,于C区后,该预留内存还包括D区,用于保存内核错误发生时的串口详细日志信息。
[0017] 进一步地,该预留内存为该AP设备的一段高端内存。
[0018] 进一步地,于步骤四中,在该预留内存中的重启原因标志保存后,把该预留内存的A区标志重新赋值为默认值。
[0019] 进一步地,于步骤二中,通过ioremap函数将该预留内存的物理地址映射到该虚拟地址。
[0020] 进一步地,于步骤四中,通过读proc文件系统读取该预留内存中的重启原因标志及重启日志,并保存至tmp目录文件。
[0021] 为达到上述目的,本发明还提供一种AP设备的异常重启原因检测装置,包括:
[0022] 重启前处理单元,在该AP设备重启前,于预留内存写入该次重启原因对应的重启原因标志及重启日志;
[0023] 地址映射单元,于该AP设备重启时,映射获得该预留内存的虚拟地址;
[0024] 日志信息备份及记录单元,用于备份该预留内存中的重启日志信息,并实时记录当前的串口打印信息;
[0025] 重启原因获取单元,用于读取该预留内存中的重启原因标志及重启日志并予以保存。
[0026] 进一步地,该预留内存从高到低依次包括:
[0027] A区,用于保存重启的原因标志;
[0028] B区,映射给该AP设备系统的环形缓冲区,用于实时保存当前的串口打印信息;
[0029] C区,用于对B区的备份。
[0030] 进一步地,于C区后,该预留内存还包括D区,用于保存内核错误发生时的串口详细日志信息。
[0031] 与现有技术相比,本发明一种AP设备的异常重启原因检测方法及装置通过采用预留高端内存的方式,并将预留的高端内存分为不同的区域,于预留的高端内存保存重启原因,并映射系统环形缓冲区,备份重启日志至该预留的高端内存,最后通过读文件系统读取重启原因及重启日志保存至存储设备,本发明不仅可以分析重启的日志,还可以确定设备重启的具体原因,大大提高了故障问题定位的效率和准确性,保障了版本后续迭代的稳定性。

实施方案

[0038] 以下通过特定的具体实例并结合附图说明本发明的实施方式,本领域技术人员可由本说明书所揭示的内容轻易地了解本发明的其它优点与功效。本发明亦可通过其它不同的具体实例加以施行或应用,本说明书中的各项细节亦可基于不同观点与应用,在不背离本发明的精神下进行各种修饰与变更。
[0039] 图1为本发明一种AP设备的异常重启原因检测方法的步骤流程图。如图1所示,本发明一种AP设备的异常重启原因检测方法,包括如下步骤:
[0040] 步骤101,在该AP设备的系统重启前,于该AP设备的预留内存写入该次重启原因对应的重启原因标志及重启日志。
[0041] 在本发明中,系统预留了一段内存,该预留内存用来存储重启原因的标志位以及存储重启日志,系统在不断电的情况下重启后,该预留内存里面的内容仍旧会保留(由于电容的作用,单板在断电间隔时间很短的情况下,内容也会保留),所以可以使用该预留内存来保存重启前的log日志,并根据重启日志做进一步分析和处理。
[0042] 在本发明具体实施例中,系统预留了1M的高端内存,即,例如128M的设备内存,系统保留了127-128之间的1M内存作为预留内存,并分为下面几个区间,如图2所示:
[0043] A区:大小为4k,用于保存重启的原因标志;
[0044] B区:大小为128k,映射给linux的ring buffer(环形缓冲区),用于实时保存当前的串口打印信息;
[0045] C区:大小为128k,用于B区的备份,由于在系统重启后,B区的128k空间会被输出的串口打印信息(printk函数输出的内容)覆盖,因此,需先备份重启前的串口日志信息(即B区的内容)至C区;
[0046] D区:大小为764k,用于保存Kernel Panic(内核错误)发生时的串口详细日志信息,也就是说,当重启原因为内核错误时,不仅将重启日志写入B区,而且于D区保存更为详细的串口日志信息,以便后续的分析处理。
[0047] 图3为本发明具体实施例图2中A区的几种重启原因标志的具体意义示意图。在本发明具体实施例中,重启原因标志使用的是对应字母的ANSCII码,重启的原因大致可以分为下面几种情况:
[0048] 1)reb,表示reboot命令重启,其重启原因标志为0x726562,其中,0x72,0x65,0x62分别对应字母r,e,b;
[0049] 2)pan,表示内核错误(panic)重启,0x70616e,其中,0x70,0x61,0x6e分别对应字母p,a,n;
[0050] 3)dog,表示看门狗重启,其重启原因标志为0x646f67,其中,0x64,0x6f,0x67分别对应字母d,o,g;
[0051] 4)非上述3种数值,表示系统是上电启动。
[0052] 图4为本发明具体实施例中几种重启原因标志的产生示意图。对于重启原因reb,当内核接收到reboot命令字:LINUX_REBOOT_CMD_RESTART时于预留内存的A区写入重启原因flag:0x726562;当出现内核错误(panic)时,在内核panic函数中增加处理,于预留内存的A区写入重启原因:0x70616e;重启原因标志默认为看门狗重启(0x646f67),即系统启动过程中会先查询该重启原因标志,保存后重新赋默认值0x646f67给该标志;非以上原因则均认为是上电启动。
[0053] 步骤102,该AP设备系统重启时,映射获得该预留内存的虚拟地址。
[0054] 在本发明具体实施例中,上述预留的高端内存的1M空间在系统启动时,会预先保留,然后通过ioremap函数将该预留的高端内存的物理地址映射到虚拟地址,保留该虚拟地址,后续相关操作则是围绕该虚拟地址进行。
[0055] 步骤103,备份该预留内存中重启日志信息,实时记录当前的串口打印信息。在本发明具体实施例中,系统重启前,预留内存的B区保存的是重启前的重启日志信息,由于系统重启后,B区的128k空间会被printk函数输出的内容覆盖,因此,需将重启前的串口日志信息(即重启日志)备份至C区,B区则会实时记录当前的串口打印信息(即printk函数输出的内容)。
[0056] 步骤104,读取该预留内存中的重启原因标志及重启日志并予以保存。在本发明具体实施例中,系统启动过程中会建立2个proc文件节点:/proc/kmsg_reboot_log;/proc/kmsg_reboot_reason,分别对应重启日志和重启原因,系统在启动过程中会去检查A区的标志位,判断出重启原因之后保存该重启原因至tmp目录文件(/tmp/log_reboot_reason)里面,然后把预留的高端内存的A区标志重新赋值为0x646f67(默认为看门狗的flag);同时保存重启日志至tmp目录文件:/tmp/log_reboot_message。
[0057] 图5为本发明具体实施例中系统启动后的流程示意图。以下将通过一具体实施例进一步说明本发明:当系统启动时,UBOOT下预留1M高端内存,内核引导并启动内核(start_kernel);内核预留高端1M内存;获取预留的高端内存的物理地址;利用ioremap函数映射出预留的高端内存,获取虚拟地址并保存;把预留的高端内存中B区的log信息备份到C区;把预留的高端内存中的B区内存空间直接赋值映射给linux的环形缓冲区(ring buffer);预留的高端内存的B实时记录当前的printk串口打印信息;建立proc文件节点;读取预留的高端内存的重启原因标志以及重启日志,打印到串口,同时保存到tmp目录,后续可以选择将日志上传至云端,以便于云端分析。
[0058] 经过本发明,可以获得AP设备重启的原因,并保存了设备重启之前的日志信息,有助于对重启原因的分析处理,大大提高了版本迭代的稳定性。
[0059] 图6为本发明一种AP设备的异常重启原因检测装置的结构示意图。如图6所示,本发明一种AP设备的异常重启原因检测装置,包括:重启前处理单元601、地址映射单元602、日志信息备份及记录单元603以及重启原因获取单元604。
[0060] 重启前处理单元601,用于在触发系统重启前,于预留内存写入该次重启原因对应的重启原因标志及重启日志。
[0061] 在本发明中,系统预留了一段内存,该预留内存用来存储重启原因的标志位以及存储重启日志。在本发明具体实施例中,系统预留了1M的高端内存,即,例如128M的设备内存,系统保留了127-128之间的1M内存作为预留内存,并依次分为下面几个区间:
[0062] A区:大小为4k,用于保存重启的原因标志;
[0063] B区:大小为128k,映射给linux的ring buffer(环形缓冲区),用于实时保存当前的串口打印信息;
[0064] C区:大小为128k,用于B区的备份。由于在系统重启后,B区的128k空间会被当前输出的串口打印信息(printk函数输出的内容)覆盖,因此,需先备份重启前的串口日志信息(即B区的内容)至C区;
[0065] D区:大小为764k,用于保存Kernel Panic(内核错误)发生时的串口详细日志信息,也就是说,当重启原因为内核错误时,不仅将重启日志写入B区,而且于D区保存更为详细的串口日志信息,以便后续的分析处理。
[0066] 在本发明具体实施例中,重启原因标志使用的是对应字母的ANSCII码,重启的原因大致可以分为下面几种情况:
[0067] 1)reb,表示reboot命令重启,对应的重启原因标志为0x726562,其中,0x72,0x65,0x62分别对应字母r,e,b。当内核接收到reboot命令字:LINUX_REBOOT_CMD_RESTART时于预留内存的A区写入重启原因标志:0x726562;
[0068] 2)pan,表示内核错误(panic)重启,对应的重启原因标志为0x70616e,其中,0x70,0x61,0x6e分别对应字母p,a,n。当出现内核错误重启时,在内核panic函数中增加处理,于预留内存的A区写入重启原因:0x70616e;
[0069] 3)dog,表示看门狗重启,对应的重启原因标志为0x646f67,其中,0x64,0x6f,0x67分别对应字母d,o,g。A区的重启原因标志默认为看门狗重启(0x646f67),即系统启动过程中会先查询重启原因标志,保存后重新赋默认值0x646f67给该标志。
[0070] 4)非上述3种数值,则表示系统是上电启动。
[0071] 地址映射单元602,于系统启动时,映射获得该预留内存的虚拟地址。
[0072] 在本发明具体实施例中,高端内存的1M空间在系统启动时会预先保留,地址映射单元602会利用ioremap函数将该预留的高端内存的物理地址映射到虚拟地址,保留该虚拟地址。
[0073] 日志信息备份及记录单元603,用于备份该预留内存中的重启日志信息,并实时记录当前的串口打印信息至该预留内存。在本发明具体实施例中,系统重启前,预留内存的B区保存的是重启前的重启日志信息,由于系统重启后,B区的128k空间会被printk函数输出的内容覆盖,因此,日志信息备份及记录单元603需将重启前B区的串口日志信息备份至C区,并实时记录当前的串口打印信息(即printk函数输出的内容)至B区。
[0074] 重启原因获取单元604,用于读取该预留内存中的重启原因标志及重启日志并予以保存。在本发明具体实施例中,系统启动过程中重启原因获取单元704会建立2个proc文件节点:/proc/kmsg_reboot_log;/proc/kmsg_reboot_reason,分别对应重启日志和重启原因,在启动过程中重启原因获取单元604会去检查预留的高端内存的A区的标志位,判断出重启原因之后保存该重启原因至tmp目录文件(/tmp/log_reboot_reason),然后把预留的高端内存的A区标志位重新赋值为0x646f67(默认为看门狗的flag),同时重启原因获取单元604会读取该预留的高端内存的重启日志,并将重启日志保存至tmp目录文件:/tmp/log_reboot_message。
[0075] 综上所述,本发明一种AP设备的异常重启原因检测方法及装置通过采用预留高端内存的方式,并将预留的高端内存分为不同的区域,于预留的高端内存保存重启原因,并映射系统环形缓冲区,备份重启日志至该预留的高端内存,最后通过读文件系统读取重启原因及重启日志保存至存储设备,本发明不仅可以分析重启的日志,还可以确定设备重启的具体原因,大大提高了故障问题定位的效率和准确性,保障了版本后续迭代的稳定性。
[0076] 任何本领域技术人员均可在不违背本发明的精神及范畴下,对上述实施例进行修饰与改变。因此,本发明的权利保护范围,应如权利要求书所列。

附图说明

[0032] 图1为本发明一种AP设备的异常重启原因检测方法的步骤流程图;
[0033] 图2为本发明具体实施例中预留高端内存的分区示意图;
[0034] 图3为本发明具体实施例图2中A区的几种重启原因标志的具体意义示意图[0035] 图4为本发明具体实施例中几种重启原因标志的产生示意图;
[0036] 图5为本发明具体实施例中系统启动后的流程示意图;
[0037] 图6为本发明一种AP设备的异常重启原因检测装置的结构示意图。
版权所有:盲专网 ©2023 zlpt.xyz  蜀ICP备2023003576号