首页> 中国专利> 用于区别冷启动和热启动的方法和设备

用于区别冷启动和热启动的方法和设备

摘要

提供了一种用于区分设备冷启动和热启动的方法,其中设备包括易失性存储器,所述易失性存储器包括用于指示启动类型的标记,所述方法包括步骤:通过读取所述标记来确定启动类型;其特征在于进一步包括,当检测到用于指示断电发生的消息的时候,对所示易失性存储器的数据进行改变,使得所述设备不能够把启动确定为热启动。

著录项

  • 公开/公告号CN103299275A

    专利类型发明专利

  • 公开/公告日2013-09-11

    原文格式PDF

  • 申请/专利权人 汤姆逊许可公司;

    申请/专利号CN201180056877.7

  • 发明设计人 徐浩;林晓;陈本东;

    申请日2011-09-15

  • 分类号G06F9/445(20060101);

  • 代理机构11105 北京市柳沈律师事务所;

  • 代理人吕晓章

  • 地址 法国伊西莱穆利诺

  • 入库时间 2024-02-19 21:31:47

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-09-04

    未缴年费专利权终止 IPC(主分类):G06F9/445 授权公告日:20170315 终止日期:20170915 申请日:20110915

    专利权的终止

  • 2017-03-15

    授权

    授权

  • 2013-12-18

    实质审查的生效 IPC(主分类):G06F9/445 申请日:20110915

    实质审查的生效

  • 2013-09-11

    公开

    公开

说明书

技术领域

本发明涉及电子设备,尤其涉及用于区别冷启动和热启动的方法和设备。

背景技术

简单网络管理协议(SNMP)是基于UDP的网络协议。它通常在网络管 理系统中被用于监视网络设备,以保证管理的需要。SNMP由工程任务组 (IETF)定义,是网络协议包的一个组成部分。它包括一系列用于网络管理 的标准,包括应用层协议、数据库体系和一系列数据对象。SNMP在管理的 系统中以变量的形式呈现管理数据,这些变量描述了系统配置。这些变量可 以通过使用管理应用来查找(以及设置)。

在典型的SNMP应用中,称作为管理者的一个或多个管理电脑需要监视 或者管理网络中的一组主机或者设备。每一个被管理的设备运行称为代理的 模块,其通过SNMP向管理者汇报信息。具体而言,信息是通过SNMP协议 数据单元(PDU)来汇报的。在这些PDU中,有一种类型的PDU是陷阱保 文(trap),用于汇报警告或者关于被管理设备的其他的异步事件。

当SNMP被用于网关上时,陷阱报文通知(trap notification)可以被用于 汇报诸如如下类型的消息,冷启动、热启动、管理的以太网交换器改变、通 路和断路等等。

但是,当在网关上部署SNMP时,我们发现有的时候网关不能够正确地 区分冷启动和热启动。

发明内容

根据本发明的一个方面,提供了一种用于区分设备冷启动和热启动的方 法,其中设备包括易失性存储器,所述易失性存储器包括用于指示启动类型 的标记,所述方法包括步骤:通过读取所述标记来确定启动类型;其特征在 于进一步包括,当检测到用于指示断电发生的消息的时候,对所示易失性存 储器的数据进行改变,使得所述设备不能够把启动确定为热启动。

根据本发明的另一个方面,提供了一种用于区分冷启动和热启动的设备, 其特征在于包括:易失性存储器302,用于包含用于指示启动类型的标记; 电源断电捕获模块301,用于捕获用于指示断电发生的消息;以及处理器303, 用于通过读取所述标记来确定启动类型,以及响应于电源断电捕获模块301 捕获用于指示断电发生的消息,对所述易失性存储器302的数据进行改变, 使得处理器不能够把启动类型确定为热启动。

根据本发明的方面,该设备能够正确地区分冷启动和热启动。

应该了解,可以在如下的本发明的具体描述中找到更多的方面和有益效 果。

附图说明

附图结合着说明书便于进一步了解本发明的实施例,这仅仅是用于说明 本发明的原理。因此,本发明不局限于这些实施例。在附图中:

图1根据本发明的实施例示出了硬件连接;

图2的流程图根据本发明的原理示出了用于辅助正确区别冷启动和热启 动的方法;和

图3的块图根据本发明的实施例示出了用于区分冷启动和热启动的设 备。

具体实施方式

结合着附图对本发明的实施例进行详细地说明。在如下的描述中,出于 清楚和简洁的目的会忽略一些已知的功能和配置的描述。

冷启动(也称为硬启动)发生于循环给设备供电(即关闭后再打开)或 者处理器收到特殊的重置信号。冷启动可能由掉电引起,如事故或者用户故 意想要系统从初始状态或者关键错误点恢复。

热启动(也称为软启动)是指在持续供电的情况下使用软件控制来让计 算机重启。通常,它是指在不移除电源的情况下关机然后重启设备。

在一些系统中,每一次设备启动,设备会确定此次启动是冷启动还是热 启动,以及通过SNMP陷阱报文向SNMP管理设备通知启动类型。

例如,为了帮助判定启动的类型,在网关的易失性存储器的称作prozone 的划分区域设置有一个标记selftest_flag。prozone是分配出来用于存储系统相 关参数(如selftest_flag)的内存区域。此外,在本示例中,prozone使用循环 冗余校验(CRC)技术,也就意味着prozone包括两部分。一部分包含系统 相关参数的数据,另一部分包含系统相关参数的数据的CRC校验和。从而可 以保证prozone的正确性。在本示例中,网关可能包括一个或多个用于连接 因特网服务提供商的外部端口和一个或多个用于连接用户设备的内部端口。 外部端口包括xDSL(adsl,vdsl,shdsl等等)、以太网端口、GPON (gigabit-capable passive optical network,吉比特无源光网络)、UMTS(universal  mobile telecommunications system,通用移动通信系统)等等。内部端口包括以 太网和wifi(802.11)中的一个或多个。一个用于判断冷启动和热启动的方案 如下:当网关在冷启动模式下启动时,由于易失存储器中的数据在之前断电 时会丢失,所以网关不能够读取selftest_flag。所以,网关在易失性存储器中 创建selftest_flag,并把它的值设置为1,用于指示这是冷启动。当网关在热 启动模式下启动时,网关把selftest_flag改变为0,用于指示这是热启动。之 所以网关不需要在热启动模式下创建selftest_flag,是因为在热启动中易失性 存储器一直在被供电。所以通过读取selftest_flag网关能够知道启动的类型。 在本示例中,我们使用prozone来存储所有系统相关的参数。因此,当网关 启动时,它会检查prozone的CRC校验和。校验和无效意味着在启动之前易 失性存储器没有被供电。如果校验和无效,网关会重新创建prozone(包括 selftest_flag),并把它的值设置为1。否则,网关会把selftest_flag改变为0。 这是因为在启动之前易失性存储器有被供电。网关读取这个标记,如果是1, 它向管理设备发送冷启动陷阱报文,否则它发送热启动陷阱报文。

但是,RAM的数据残留特性(data remanence property)使得prozone(当 然包括selftest_flag)在断电后的数秒到数分钟内仍然可读。这是因为prozone 的数据没有丢失。当设备被供电和打开的时候,prozone仍然被检查是有效的。 这就导致了设备把冷启动误认为是热启动,从而与事实不符合。

本申请的发明利用了致命故障信号(dying gasp)来辅助确定冷启动和热 启动。

致命故障信号是由作为用户端设备(Customer Premises Equipment, CPE)的DSL设备发给数字用户线介入复用器(Digital Subscriber Line Access  Multiplexer,DSLAM)的消息(或者信号),用于在断电的时候指示断电的 发生。在这里,断电(也称为掉电或电源中断等)是指对于一定区域的短时 间或者长时间的失去电源。带有致命故障信号接口的DSL必须能够从其他的 地方在短时间内获取电源,从而能够在没有外部电源的前提下发生该信号。 致命故障信号会结束目前的会话。当重新供电以及重配置调制解调器后会开 始一个新的会话。在ITU-T推荐G.991.2(12/2003)的7.1.2.5.3的电源状态比特 章节中介绍了致命故障信号。

图1的图根据本发明的实施例示出了硬件连接。当网关断电时,Broadcom 的芯片组,例如BCM96358、BCM96368、和BCM96362等会发出致命故障 中断。致命故障输入会和内部1.25伏参考电压相比。1.25伏参考电压从芯片 组上高精度的带隙基准获得。在所有的温度、处理和电压范围内,该基准很 稳定,上下浮动不超过2%。温度范围是0度到70度。公差是1%。带隙实际 上不基于电压水平,因此很稳定,不超过电压范围的±5%。比较仪的滞后 作用被设置大约是±30mV。当DYING_GASP_IN输入的感知电压低于1.215V 时,致命故障信号被发出;当输入高于1.282V时,停止发出。当不使用的时 候,设置为2.5V。

图2的流程图根据本发明的实施例示出了用于正确区分冷启动和热启动 的方法。

在步骤201中,设备捕获致命故障信号。例如,由于意外或者故意而导 致网关的断电,Broadcom芯片组会发出致命故障中断。设备的致命故障中断 处理器会捕获该致命故障中断。

在步骤202中,设备破坏prozone的CRC校验和。该目的是使得CRC 校验和无效。例如,为了破坏校验和,致命故障中断处理器把prozone的CRC 校验和加1。当网关被供电时,prozone的CRC校验和被检查是无效的;然 后设备对prozone进行初始化,在初始化的过程中selftest_flag被设置为1, 其意味着网关是冷启动。

在网关启动之后,snmp模块读取selftest_flag,如果该标记设置为1,snmp 会向目的PC发出冷启动陷阱报文。目的PC就知道网关是由于供电而导致的 启动。

根据本发明的一个变形,本发明的原理可以用于其他带有致命故障信号 的设备中,用于正确地区分冷启动和热启动,例如机顶盒。这是因为在这些 设备中RAM仍然有数据残留特性。

根据本发明的实施例,selftest_flag被用于确定启动的类型。其原理是如 果启动是热启动,启动之前在易失性存储器中写入的数据在启动之后仍可读。 而在冷启动的情形下,其不可读。为了消除由于残留而导致的误判断,在发 生断电的时候,设备需要对该数据进行改变,从而使得网关不能够读取该数 据,或者依据该数据不能使之判断为热启动。即使该数据在断电之后网关再 启动时仍然可读,网关能够判断出该启动是冷启动,而非热启动。如上例所 示,对数据的改变能够破坏prozone或者破坏selftest_flag。

在该示例中,selftest_flag被置于prozone。通过在捕获致命故障信号时对 prozone的CRC校验和进行破坏,设备就能够正确地判断启动是冷启动。在 现有技术的一些方案中这种情况就会被误判断为热启动。但是,根据一个变 形,设备可以破坏selftest_flag的数据,而不是CRC校验和。此外,根据另 一个变形,selftest_flag被独立地设置在内存中。当捕获致命故障信号时, selftest_flag被设置为1。

图3的块图根据本发明的实施例示出用于区分冷启动和热启动的设备。 设备包括致命故障中断处理器301,处理器303和存储器302。存储器302用 于存储一个独立的selftest_flag或者包含selftest_flag的prozone。致命故障中 断处理器301用于捕获用于指示断电发生的致命故障中断(致命故障中断触 发致命故障消息的发送),以及用于把中断的捕获通知给处理器303。处理器 303用于确定该启动是冷启动还是热启动,以及响应于中断捕获的通知对 selftest_flag的数据或者prozone的数据进行修改,从而使得处理器303确定 该启动是冷启动。数据修改如下。如果使用一个独立的selftest_flag, selftest_flag的值被修改成一个指示该启动是冷启动的值。如果使用prozone, 处理器303可以修改selftest_flag的数据也可以修改prozone校验和的数据, 从而使得prozone无效。

上面已经描述了一些具体实施例。但是应该了解可以对这些实施例作出 修改。例如,不同的实施例的元素可以进行组合、补充、修改和删除,从而 获得其他的实施例。此外,本领域的普通技术人员应该了解可以使用其他的 结构和处理流程来替换上面已经公开的结构和处理流程,从而获得生成的实 施例。该生成的实施例至少以实质上相同的方式,实现实质上相同的功能, 达到本发明公开的实施例提供的实质上相同的效果。相应地,这些以及其他 的实施例应该属于本发明的范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号