本发明专利技术提供了一种应对软件崩溃的信息转储方法和装置。其中,该方法包括:启动操作系统或者软件映像时,根据管理员设置的系统参数指定保留内存;当确定操作系统发生软件崩溃时,将现场信息写入保留内存中;当操作系统复位启动后,检测保留内存中是否记录有信息;如果保留内存中有信息,将保留内存中的信息转存至所在设备内的非易失存储器或远程服务器中,继续运行操作系统。本发明专利技术的上述转储机制应用面广泛,可靠性高,能够满足新型电信级设备的要求,适于推广应用。
【技术实现步骤摘要】
【专利摘要】本专利技术提供了一种应对软件崩溃的信息转储方法和装置。其中,该方法包括:启动操作系统或者软件映像时,根据管理员设置的系统参数指定保留内存;当确定操作系统发生软件崩溃时,将现场信息写入保留内存中;当操作系统复位启动后,检测保留内存中是否记录有信息;如果保留内存中有信息,将保留内存中的信息转存至所在设备内的非易失存储器或远程服务器中,继续运行操作系统。本专利技术的上述转储机制应用面广泛,可靠性高,能够满足新型电信级设备的要求,适于推广应用。【专利说明】应对软件崩溃的信息转储方法和装置
本专利技术涉及通信领域,具体而言,涉及一种应对软件崩溃的信息转储方法和装置。
技术介绍
电信级设备要求高可靠性,但是软件难免遗留缺陷和错误而引起崩溃,为了尽量缩短业务中断时间,在发生软件崩溃时,电信设备通常发出告警,保存现场信息,然后切换到备份设备上。如果没有备份设备,则发出告警,保存现场信息,然后自动重启设备恢复业务。错误如果发生在客户的机器上,或者在关键的生产机器上,或者错误难于复现,或者在实验室环境无法同步复现,而且客户机器不允许长时间占用来定位问题,所以保存的现场信息用于离线和事后分析解决问题非常必要。现场信息的保存要求设备掉电或者重启后不丢失,这种机制称为软件崩溃转储机制。目前,常用的转储机制有如下几种:(I)Diskdump:本地非易失存储器转储,本地非易失存储器包括本地硬盘,本地闪存等掉电不丢失内容的存储装置,当发生软件崩溃时,将软件堆栈信息、设备配置信息、软件版本信息等有助于定位的必要信息写入本地非易失存储器中,设备掉电和重启信息不会丢失。等到设备重启恢复正常后,提供给维护人员进行问题定位。(2)Netdump:网络转储,与diskdump不同,当系统崩溃时,Netdump将现场信息通过网络保存到远程服务器中。(3)Memdump:内存转储,当系统崩溃时,memdump将现场信息保存在内存中。(4)Consoledump:控制台转储,当系统崩溃时,将现场信息打印到串口终端上。上述转储机制无法满足新型电信级设备要求,因为新型电信设备的业务和管理面是分离的,这种分离物理上体现为业务面单独的处理器,管理面单独的处理器,业务面通常多个处理器,管理面一个处理器,出于板卡布线面积和成本考虑,业务面处理器不挂接非易失存储器,或者挂接的非易失存储器容量较小,非易失存储器挂接在管理面处理器上,业务面处理器无法直接访问非易失存储器,所以Diskdump机制无法使用。Netdump机制在网络线路或者网络本身的软件有问题时也无法使用。Memdump机制在软件崩溃重启后记录的信息会丢失,不满足新型电信级设备的要求。Consoledump机制应用场景受限,用户通常不允许或者不方便接串口。针对上述转储机制无法满足新型电信级设备要求的问题,目前尚未提出有效解决方案。
技术实现思路
本专利技术的目的在于提供一种应对软件崩溃的信息转储方法和装置,以解决上述的问题。在本专利技术的实施例中提供了一种应对软件崩溃的信息转储方法,包括:启动操作系统或者软件映像时,根据管理员设置的系统参数指定保留内存;当确定操作系统发生软件崩溃时,将现场信息写入保留内存中;当操作系统复位启动后,检测保留内存中是否记录有信息;如果保留内存中有信息,将保留内存中的信息转存至所在设备内的非易失存储器或远程服务器中,继续运行操作系统。上述方法还包括:运行启动加载器bootloader进行有损测试时,按以下方式之一进行处理:(I)跳过保留内存;(2)检测保留内存中是否记录有信息,如果有,跳过保留内存;如果没有,对保留内存进行测试。上述将现场信息写入保留内存中的步骤之前或之后,该方法还包括:在保留内存的预设位置设置标记识别码;相应地,上述检测保留内存中是否记录有信息包括:检测保留内存中是否有标记识别码,如果有,确定保留内存中有信息;基于此,上述将保留内存中的信息转存至所在设备内的非易失存储器或远程服务器中的步骤之后,该方法还包括:擦除标记识别码。上述方法应用于新型电信级设备上。在本专利技术的实施例中,还提供了 一种应对软件崩溃的信息转储装置,包括:保留内存指定模块,用于启动操作系统或者软件映像时,根据管理员设置的系统参数指定保留内存;现场信息写入模块,用于当确定操作系统发生软件崩溃时,将现场信息写入保留内存中;信息检测模块,用于当操作系统复位启动后,检测保留内存中是否记录有信息;信息转存模块,用于在信息检测模块检测出保留内存中有信息时,将保留内存中的信息转存至所在设备内的非易失存储器或远程服务器中,继续运行操作系统。上述装置还包括:有损测试运行模块,用于运行启动加载器bootloader进行有损测试时,按以下方式之一进行处理:(I)跳过保留内存;(2)检测保留内存中是否记录有信息,如果有,跳过保留内存;如果没有,对保留内存进行测试。上述装置还可以包括:标记识别码设置模块,用于在现场信息写入模块进行写入操作之前或之后,在保留内存的预设位置设置标记识别码;相应地,上述信息检测模块包括:标记识别码检测单元,用于检测保留内存中是否有标记识别码;信息确定单元,用于在标记识别码检测单元检测保留内存中有标记识别码时,确定保留内存中有信息;基于此,上述装置还包括:擦除模块,用于在信息转存模块将保留内存中的信息转存至所在设备内的非易失存储器或远程服务器中的步骤之后,擦除标记识别码。上述装置可以设置于新型电信级设备上。本专利技术实施例提供的方法和装置通过指定保留内存,并在出现软件崩溃时,将现场的信息记录在该保留内存中,以及在操作系统复位时,将保留内存中的信息转储至非易失存储器或远程服务器,及时保障了软件崩溃对应的现场信息能够有效可靠的保存下来,供后续对该软件故障进行分析使用,该转储机制应用面广泛,可靠性高,能够满足新型电信级设备的要求,适于推广应用。【专利附图】【附图说明】图1示出了本专利技术实施例提供的应对软件崩溃的信息转储方法的流程图;图2示出了本专利技术实施例提供的应对软件崩溃的信息转储装置的结构框图。【具体实施方式】下面通过具体的实施例并结合附图对本专利技术做进一步的详细描述。参见图1所示的应对软件崩溃的信息转储方法的流程图,该方法包括以下步骤:步骤S102,启动操作系统或者软件映像时,根据管理员设置的系统参数指定保留内存;本实施例的保留内存是指指在操作系统或者软件映像启动时,指定一个内存区域,例如:通过修改系统的启动参数指定一块内存区域作为保留内存,以Linux系统为例,可以通过修改启动参数MEM的数值,设置保留内存。步骤S104,当确定操作系统发生软件崩溃时,将现场信息写入保留内存中;其中,操作系统是否发生软件崩溃,可以通过现有机制确定出,例如,操作系统出现软件崩溃提不等。步骤S106,当操作系统复位启动后,检测上述保留内存中是否记录有信息;步骤S108,如果上述保留内存中有信息,将该保留内存中的信息转存至所在设备(指上述操作系统所在的设备)内的非易失存储器或远程服务器中,继续运行操作系统。该方法中采用的转储机制可以称为保留内存转储机制(Resmemdump),这种方式设置的保留内存将不作为操作系统或者软件映像的正常内存使用,不接受操作系统的动态分配和释放,但是可以被操作系统或者软件映像读写。保本文档来自技高网...
【技术保护点】
一种应对软件崩溃的信息转储方法,其特征在于,包括:启动操作系统或者软件映像时,根据管理员设置的系统参数指定保留内存;当确定所述操作系统发生软件崩溃时,将现场信息写入所述保留内存中;当所述操作系统复位启动后,检测所述保留内存中是否记录有信息;如果所述保留内存中有信息,将所述保留内存中的所述信息转存至所在设备内的非易失存储器或远程服务器中,继续运行所述操作系统。
【技术特征摘要】
【专利技术属性】
技术研发人员:殷建儒,杨振华,胡怀茂,
申请(专利权)人:成都西加云杉科技有限公司,
类型:发明
国别省市:四川;51
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。