CN101526911A - 一种系统崩溃时系统信息存储方法及装置 - Google Patents
一种系统崩溃时系统信息存储方法及装置 Download PDFInfo
- Publication number
- CN101526911A CN101526911A CN200910129744A CN200910129744A CN101526911A CN 101526911 A CN101526911 A CN 101526911A CN 200910129744 A CN200910129744 A CN 200910129744A CN 200910129744 A CN200910129744 A CN 200910129744A CN 101526911 A CN101526911 A CN 101526911A
- Authority
- CN
- China
- Prior art keywords
- information
- memory area
- reserved memory
- crash
- information storage
- Prior art date
Links
- 230000015654 memory Effects 0.000 claims abstract description 129
- 238000000151 deposition Methods 0.000 claims description 4
- 238000000034 methods Methods 0.000 abstract description 11
- 238000010586 diagrams Methods 0.000 description 13
- 230000004048 modification Effects 0.000 description 5
- 238000006011 modification reactions Methods 0.000 description 3
- 280001018231 Memory Technology companies 0.000 description 1
- 238000007796 conventional methods Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering processes Methods 0.000 description 1
Abstract
Description
一种系统崩溃时系统信息存储方法及装置
技术领域
本发明涉及存储技术领域,具体来说是关于一种系统崩溃时系统信息存 储方法及装置。
背景技术
系统在运行中,会因为各种故障导致系统崩溃,为了避免故障的再次发 生,需要得到系统崩潢时的系统信息,以便根据系统信息分析查找故障所在。 由于系统崩溃时,无法通过常规方式存储系统信息,由此发展出各种系统崩 溃时系统信息存储技术。
现有技术通常通过打印、内核转储等方法存储系统崩溃时的系统信息。 通过打印存储系统信息需要连接额外的设备,增加系统复杂度和成本;通过 内核转储存储系统信息过程复杂,转储耗时长。
发明内容
本发明提供一种系统崩溃时系统信息存储方法及装置,以便在系统崩溃 时可以快速高效的存储系统信息。
本发明实施例提供一种系统崩溃时系统信息存储方法,所述的方法包括: 在系统启动前对内存进行初始化,并对预先设置的保留内存区域不进行刷新; 在系统启动后将系统信息存入所述的保留内存区域;在系统崩溃时将系统重 新启动;在重新启动系统时对所述的保留内存区域不进行刷新。
本发明实施例还提供一种系统崩溃时系统信息存储装置,所述的装置包 括:初始化单元,用于在系统启动前对内存进行初始化,并对预先设置的保 留内存区域不进行刷新;系统信息存储单元,用于在系统启动后将系统信息 存入所述的保留内存区域;系统重启单元,用于在系统崩溃时将系统重新启 动;内存保护单元,用于在重新启动系统时对所述的保留内存区域不进行刷新。
由于本发明采用了将系统信息存储在预先设置的内存区域中,克服了现 有技术中系统信息过程复杂和成本高的缺陷,可以快速高效的存储系统信息。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部 分,并不构成对本发明的限定。在附图中:
图1是本发明实施例提供的一种系统崩溃时系统信息存储方法流程图; 图2是本发明实施例提供的将系统信息存入保留内存区域的示意图; 图3是本发明实施例提供的将系统信息存入保留内存区域的示意图; 图4是本发明实施例提供的将系统信息存入保留内存区域的示意图; 图5是本发明实施例提供的将系统信息存入保留内存区域的示意图; 图6是本发明实施例提供的一种系统崩溃时系统信息存储装置的框图;
图7是本发明实施例提供的系统信息存储单元602的框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施方式 和附图,对本发明做进一步详细说明。在此,本发明的示意性实施方式及其 说明用于解释本发明,但并不作为对本发明的限定。
本发明实施例提供一种系统崩溃时系统信息存储方法及装置,可以快速 高效的存储系统信息。以下结合附图对本发明实施例进行详细说明。
实施例一
图1是本发明实施例提供的一种系统崩溃时系统信息存储方法流程图。
如图l所示,所述的方法包括:
步骤S101,在系统启动前对内存进行初始化,并对预先设置的保留内存 区域不进行刷新。
在本发明实施例中,系统在启动时由基本输入输出系统(BIOS, BasicInput/Output System)对系统的各个单元(包括CPU,内存,硬盘等)进行 初始化,其中在对内存进行初始化时,根据BIOS中的设置,并对预先设置 的保留内存区域不进行初始化。
通常BIOS在进行内存初始化时,会对所有的内存区域均进行初始化, 以检测内存是否正常,在本发明实施例中,可以对BIOS对内存进行初始化 的过程进行修改,将整个内存区域划分为需要初始化的内存区域和不需要初 始化的保留内存区域,并在BIOS进行初始化的过程中仅对需要初始化的内 存区域进行初始化,从而将不需要初始化的保留内存区域保护起来不进行刷 新,也不提供给系统使用。
在本发明实施例中,保留内存区域的大小,可以由BIOS根据系统的版 本确定,如系统为Windows XP时,BIOS可以将保留内存区域设为8M,而 系统为Windows Vista时,BIOS可以将保留内存区域设为32M,此处仅作示 例性说明,具体保留内存区域的大小可以根据实际需要更改。在本发明实施 例中,保留内存区域的大小也可以由用户在BIOS中预先设置,从而满足不 同用户的需要。
步骤S102,在系统启动后将系统信息存入所述的保留内存区域。 在本发明实施例中,可以根据系统信息的修改权限,将系统信息分为三
类-
图2所示是本发明一实施例提供的将系统信息存入保留内存区域的示意图。
如图2所示,对于可以修改存放位置的系统信息,如系统符号表等,这 一部分系统信息在系统启动后,可以由Debug单元将其存放位置改至保留内 存区域中,即,将存储位置可修改的系统信息的存放地址改至保留内存区域 中;
图3所示是本发明一实施例提供的将系统信息存入保留内存区域的示意图。如图3所示,对于不可以修改存放位置的系统信息,如日志信息缓冲区 等,可以在系统崩溃时由Debug单元将这部分存储位置不可修改的系统信息 拷贝至保留内存区域中;
图4-图5所示是本发明一实施例提供的将系统信息存入保留内存区域的 示意图。
如图4-图5所示,对于一些运行状态信息,如程序运行堆栈内容等,由 于不能采用以上两种方法存储,因此可以在系统启动后,先由Debug单元将 这部分系统信息中运行状态信息的存放地址信息写入保留内存区域的约定位 置中,继而在系统崩溃后系统重新启动前由BIOS根据保留内存区域约定位 置中的存放地址信息,找到存放地址信息对应的系统信息,并将这部分系统 信息存储到所述的保留内存区域中。在本发明实施例中,BIOS单元也将一 些还未变化的硬件信息(如重启后不丢失信息的寄存器)也存储到所述的保 留内存区域中。
步骤S103,在系统崩溃时将系统重新启动。
在本发明实施例中,当故障拦截软件检测到系统崩溃时,Debug单元通 知BIOS重新启动系统。故障拦截软件可以是Linux调用的dump函数或注册 到panic处理中的处理函数,此部分为现有技术,故在此不再赘述。 步骤S104,在重新启动系统时对所述的保留内存区域不进行刷新。 在本发明实施例中,BIOS重新启动系统,并对保留内存区域不进行刷 新。这样除了内存掉电的情况外,保留内存区域存储的系统信息不会丢失也 不会被其他软件修改。
步骤S105,将所述的保留内存区域中存储的系统信息输出。 在本发明实施例中,在系统重新启动以后Debug单元将所述的保留内存 区域中存储的系统信息输出。输出的方式可以是生成一文本文件,或通过打 印机输出,或通过显示器输出。
本发明实施例提供的系统崩溃时系统信息存储方法,克服了现有技术中系统信息过程复杂和成本高的缺陷,可以快速高效的存储系统信息。 实施例二
图6是本发明实施例提供的一种系统崩溃时系统信息存储装置600的框 图。如图6所示,所述的装置600包括:
初始化单元601,用于在系统启动前对内存进行初始化,并对预先设置 的保留内存区域不进行刷新。
在本发明实施例中,初始化单元601可以是基本输入输出系统(BIOS, Basic Input/Output System) , BIOS在系统启动时对系统的各个单元(包括 CPU,内存,硬盘等)进行初始化。通常BIOS在进行内存初始化时,会对 所有的内存区域均进行初始化,以检测内存是否正常,在本发明实施例中, 可以对BIOS对内存进行初始化的过程进行修改,将整个内存区域划分为需 要初始化的内存区域和不需要初始化的保留内存区域,并在BIOS进行初始 化的过程中仅对需要初始化的内存区域进行初始化,从而将不需要初始化的 保留内存区域保护起来不进行刷新,也不提供给系统使用。
在本发明实施例中,保留内存区域的大小,可以由BIOS根据系统的版 本确定,如系统为Windows XP时,BIOS可以将保留内存区域设为8M,而 系统为Windows Vista时,BIOS可以将保留内存区域设为32M,此处仅作示 例性说明,具体保留内存区域的大小可以根据实际需要更改。在本发明实施 例中,保留内存区域的大小也可以由用户在BIOS中预先设置,从而满足不 同用户的需要。
系统信息存储单元602,用于在系统启动后将系统信息存入所述的保留 内存区域。
在本发明实施例中,系统信息存储单元602可以是Debug单元,系统信 息根据系统信息的修改权限,可以分为三类:即可以修改存放位置的系统信 息、不可以修改存放位置的系统信息及系统信息中的运行状态信息。
图7是本发明实施例提供的系统信息存储单元602的框图。如图7所示,系统信息存储单元602包括:存储位置修改模块701、第一存储模块702、地 址信息存储模块703和系统信息转存模块704,其中
存储位置修改模块701用于在系统启动后将存储位置可修改的系统信息 的存储位置修改至所述的保留内存区域中。
在本发明实施例中,对于可以修改存放位置的系统信息,如系统符号表 等,这一部分系统信息在系统启动后,可以由存储位置修改模块701将其存 放位置改至保留内存区域中,即将这部分系统信息的存放地址改至保留内存 区域中;
第一存储模块702用于在系统崩溃时将存储位置不可修改的系统信息存 入所述的保留内存区域中。
在本发明实施例中,对于不可以修改存放位置的系统信息,如日志信息 缓冲区等,可以在系统崩溃时由第一存储模块702将这部分系统信息拷贝至 保留内存区域中。
地址信息存储模块703用于在系统启动后将系统信息中运行状态信息的 地址信息存储到所述的保留内存区域的约定位置中;
系统信息转存模块704用于在系统崩溃后系统重新启动前根据所述约定 位置中的地址信息将系统信息中运行状态信息存储到所述的保留内存区域 中。
在本发明实施例中,对于一些运行状态信息,如程序运行堆栈内容等, 由于不能采用以上两种方法存储,因此可以在系统启动后,先由地址信息存 储模块703将这部分系统信息的存放地址信息写入保留内存区域的约定位置 中,继而由系统信息转存模块704在系统崩溃后系统重新启动前由BIOS根 据保留内存区域约定位置中的存放地址信息,找到存放地址信息对应的系统 信息,并将这部分系统信息存储到所述的保留内存区域中。在本发明实施例 中,BIOS单元也将一些还未变化的硬件信息(如重启后不丢失信息的寄存 器)也存储到所述的保留内存区域中。系统重启单元603,用于在系统崩溃时将系统重新启动。 在本发明实施例中,当故障拦截软件检测到系统崩溃时,系统重启单元
603通知BIOS重新启动系统,系统重启单元603可以是Debug单元。故障
拦截软件可以是Linux调用的dump函数或注册到panic处理中的处理函数,
此部分为现有技术,故在此不再赘述。
内存保护单元604,用于在重新启动系统时对所述的保留内存区域不进
行刷新。
在本发明实施例中,内存保护单元604可以是BIOS单元,在重新启动 系统时对保留内存区域不进行刷新。这样除了内存掉电的情况外,保留内存 区域存储的系统信息不会丢失也不会被其他软件修改。
系统信息输出单元605,用于将所述的保留内存区域中存储的系统信息 输出。
在本发明实施例中,在系统重新启动以后系统信息输出单元605将所述 的保留内存区域中存储的系统信息输出。系统信息输出单元605可以包括: 文本生成模块,用于生成一文本文件;打印机输出模块,用于通过打印机输 出;显示输出模块,用于通过显示器输出。
本发明实施例提供的系统崩溃时系统信息存储方法,克服了现有技术中 系统信息过程复杂和成本高的缺陷,可以快速高效的存储系统信息。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行 了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而 已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做 的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101297442A CN101526911B (zh) | 2009-03-26 | 2009-03-26 | 一种系统崩溃时系统信息存储方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101297442A CN101526911B (zh) | 2009-03-26 | 2009-03-26 | 一种系统崩溃时系统信息存储方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101526911A true CN101526911A (zh) | 2009-09-09 |
CN101526911B CN101526911B (zh) | 2011-09-14 |
Family
ID=41094782
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009101297442A CN101526911B (zh) | 2009-03-26 | 2009-03-26 | 一种系统崩溃时系统信息存储方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101526911B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102831069A (zh) * | 2012-06-30 | 2012-12-19 | 华为技术有限公司 | 内存处理方法、内存管理设备 |
CN103927240A (zh) * | 2014-05-06 | 2014-07-16 | 成都西加云杉科技有限公司 | 应对软件崩溃的信息转储方法和装置 |
CN104572417A (zh) * | 2015-01-20 | 2015-04-29 | 天津市英贝特航天科技有限公司 | 基于cmos存储器的操作系统故障跟踪分析方法 |
CN104809013A (zh) * | 2015-04-21 | 2015-07-29 | 北京创毅视讯科技有限公司 | 一种嵌入式系统启动方法和装置 |
CN105653247A (zh) * | 2014-11-12 | 2016-06-08 | 阿里巴巴集团控股有限公司 | 一种保存Linux内核打印信息的方法及装置 |
CN105930247A (zh) * | 2016-04-14 | 2016-09-07 | 北京小米移动软件有限公司 | 系统重启问题的处理方法、装置以及移动终端 |
CN107480052A (zh) * | 2017-07-21 | 2017-12-15 | 广东虹勤通讯技术有限公司 | 一种定位宕机时bios代码的方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101046765A (zh) * | 2006-03-29 | 2007-10-03 | 华为技术有限公司 | 一种定位软件故障的方法 |
-
2009
- 2009-03-26 CN CN2009101297442A patent/CN101526911B/zh not_active IP Right Cessation
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102831069A (zh) * | 2012-06-30 | 2012-12-19 | 华为技术有限公司 | 内存处理方法、内存管理设备 |
CN102831069B (zh) * | 2012-06-30 | 2016-03-30 | 华为技术有限公司 | 内存处理方法、内存管理设备 |
CN103927240A (zh) * | 2014-05-06 | 2014-07-16 | 成都西加云杉科技有限公司 | 应对软件崩溃的信息转储方法和装置 |
CN105653247A (zh) * | 2014-11-12 | 2016-06-08 | 阿里巴巴集团控股有限公司 | 一种保存Linux内核打印信息的方法及装置 |
CN105653247B (zh) * | 2014-11-12 | 2019-06-07 | 阿里巴巴集团控股有限公司 | 一种保存Linux内核打印信息的方法及装置 |
CN104572417A (zh) * | 2015-01-20 | 2015-04-29 | 天津市英贝特航天科技有限公司 | 基于cmos存储器的操作系统故障跟踪分析方法 |
CN104572417B (zh) * | 2015-01-20 | 2018-02-23 | 天津市英贝特航天科技有限公司 | 基于cmos存储器的操作系统故障跟踪分析方法 |
CN104809013A (zh) * | 2015-04-21 | 2015-07-29 | 北京创毅视讯科技有限公司 | 一种嵌入式系统启动方法和装置 |
CN104809013B (zh) * | 2015-04-21 | 2018-08-14 | 北京创毅视讯科技有限公司 | 一种嵌入式系统启动方法和装置 |
CN105930247A (zh) * | 2016-04-14 | 2016-09-07 | 北京小米移动软件有限公司 | 系统重启问题的处理方法、装置以及移动终端 |
CN105930247B (zh) * | 2016-04-14 | 2018-09-04 | 北京小米移动软件有限公司 | 系统重启问题的处理方法、装置以及移动终端 |
CN107480052A (zh) * | 2017-07-21 | 2017-12-15 | 广东虹勤通讯技术有限公司 | 一种定位宕机时bios代码的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101526911B (zh) | 2011-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9355028B2 (en) | Data-storage device and flash memory control method | |
US9619430B2 (en) | Active non-volatile memory post-processing | |
CN102081577B (zh) | 对Flash存储器的数据存储结构进行数据操作的方法 | |
JP5715566B2 (ja) | キャッシュデータおよびメタデータの管理 | |
ES2734305T3 (es) | Predicción, diagnóstico y recuperación de fallos de aplicaciones en base a patrones de acceso a recursos | |
US9317299B2 (en) | Method and device for cold starting android mobile terminal | |
US8255614B2 (en) | Information processing device that accesses memory, processor and memory management method | |
CN1213376C (zh) | 用于被复制的服务器的协议 | |
Baek et al. | Refresh now and then | |
TWI470426B (zh) | Memory management device and memory management method | |
CN103019888B (zh) | 备份方法与装置 | |
TWI356303B (en) | System and method for using a memory mapping funct | |
CN1834950B (zh) | 具有活动和非活动执行核心的多核处理器 | |
CN101377750B (zh) | 一种用于机群容错的系统和方法 | |
JP5203967B2 (ja) | メモリ障害を処理するために、センサーネットワークで使用可能な方法及びシステム | |
JP5445463B2 (ja) | 計算機システム、データ保存方法およびプログラム | |
US20120246116A1 (en) | System and method for data replication between heterogeneous databases | |
US20060282471A1 (en) | Error checking file system metadata while the file system remains available | |
TWI475384B (zh) | 用以建置記憶體缺陷對映圖之系統與方法 | |
CN1316372C (zh) | 单步处理 | |
US20090024679A1 (en) | Apparatus, system, and method for improving system performance in a large memory heap environment | |
CN101539883B (zh) | 嵌入式系统的错误追踪方法和装置 | |
CN101887393B (zh) | 基于半虚拟化技术的设备故障复现方法及系统 | |
US6952793B2 (en) | Computer system and methods for acquiring dump information and system recovery | |
DE102013211077B4 (de) | Verfahren zum Testen eines Speichers und Speichersystem |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
C06 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
C10 | Entry into substantive examination | ||
GR01 | Patent grant | ||
C14 | Grant of patent or utility model | ||
CP01 | Change in the name or title of a patent holder |
Address after: 611731 Chengdu high tech Zone, Sichuan, West Park, Qingshui River Patentee after: Huawei Symantec Technologies Co., Ltd. Address before: 611731 Chengdu high tech Zone, Sichuan, West Park, Qingshui River Patentee before: Chengdu Huawei Symantec Technologies Co., Ltd. |
|
C56 | Change in the name or address of the patentee |
Owner name: HUAWEI DIGITAL TECHNOLOGY (CHENGDU) CO., LTD. Free format text: FORMER NAME: CHENGDU HUAWEI SYMANTEC TECHNOLOGIES CO., LTD. |
|
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110914 Termination date: 20180326 |
|
CF01 | Termination of patent right due to non-payment of annual fee |