CN106445837A - 一种嵌入式装置历史记录存储与加载管理实现方法及装置 - Google Patents
一种嵌入式装置历史记录存储与加载管理实现方法及装置 Download PDFInfo
- Publication number
- CN106445837A CN106445837A CN201610889752.7A CN201610889752A CN106445837A CN 106445837 A CN106445837 A CN 106445837A CN 201610889752 A CN201610889752 A CN 201610889752A CN 106445837 A CN106445837 A CN 106445837A
- Authority
- CN
- China
- Prior art keywords
- section area
- historical record
- area
- storage
- header
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0646—Configuration or reconfiguration
- G06F12/0653—Configuration or reconfiguration with centralised address assignment
Abstract
本发明涉及一种嵌入式装置历史记录存储与加载管理实现方法及装置,采用一种格式通用、结构紧凑、存储与加载操作简单的历史记录管理方法,实现了嵌入式装置中历史记录的通用安全快速存取;再通过对记录头信息、节区头信息、自定义节区历史数据的建模与操作句柄管理,完成历史记录的存储与加载操作。本发明能够自适应不同CPU存储类型(大端存储类型、小端存储类型),同时紧凑存储;历史记录存储数据,能够被不同的设备或计算机按指定格式加载;满足嵌入式装置对快速性和通用性的要求。
Description
技术领域
本发明属于电力工程继电保护技术领域,具体涉及一种嵌入式装置历史记录存储与加载管理实现方法及装置。
背景技术
嵌入式系统尤其涉及属于电力工程的继电保护自动化领域的嵌入式装置,对系统的可靠性、快速性、灵活性及通用性的要求都非常高。在嵌入式装置内部,对内部历史记录的可靠存储、快速访问、灵活通用的需求日益迫切,尤其在多模块、多CPU间及装置与计算机间的业务数据交换及转换方面,面临CPU架构差异及效率低问题,都需要格式通用、业务无关、灵活高效的存储与加载管理设计。
发明内容
本发明的目的是提供一种嵌入式装置历史记录存储与加载管理实现方法及装置,以解决嵌入式装置之间或装置与计算机之间的历史记录数据的存储、共享、加载的通用性和快速性较差的问题。
为解决上述技术问题,本发明提供一种嵌入式装置历史记录存储管理实现方法,包括四个存储方法方案:
存储方法方案一,包括如下步骤:
1)创建管理句柄,管理句柄包括历史记录起始指针、节区数据偏移、节区头地址指针;
2)根据管理句柄,依据历史记录起始指针、在节区数据偏移的基础上逐条存储节区历史数据;
3)根据节区历史数据存储情况,创建节区头信息,从节区头地址指针对应地址开始存储节区头信息;
4)根据节区头信息,创建记录头信息,从历史记录起始指针对应地址开始存储记录头信息;记录头信息、节区历史数据、节区头信息构成历史记录。
存储方法方案二,在存储方法方案一的基础上,所述管理句柄还包括数据准备好标识、CPU标识、节区最大个数、节区实际个数、节区头的最大字节数和历史记录版本。
存储方法方案三,在存储方法方案一的基础上,所述节区头信息包括节区名称、节区存储偏移、节区数据的字节数、节区条目的字节数和节区附加信息。
存储方法方案四,在存储方法方案一的基础上,所述记录头信息包括CRC校验码、标识符、保留字、存储类型、版本信息和节区头表偏移。
本发明还提供一种嵌入式装置历史记录加载管理实现方法,包括两个加载方法方案:
加载方法方案一,包括如下步骤:
A)根据历史记录中的记录头信息提取节区头信息;
B)根据记录头信息中的节区个数和节区头信息中的节区存储偏移确定相应节区的地址偏移量,提取相应数据。
加载方法方案二,在加载方法方案一的基础上,还包括在加载前,对所述历史记录进行有效性检验的步骤。
本发明还提供一种嵌入式装置历史记录存储管理实现装置,包括四个存储装置方案:
存储装置方案一,包括如下单元:
用于创建管理句柄,管理句柄包括历史记录起始指针、节区数据偏移、节区头地址指针的单元;
用于根据管理句柄,依据历史记录起始指针、在节区数据偏移的基础上逐条存储节区历史数据的单元;
用于根据节区历史数据存储情况,创建节区头信息,从节区头地址指针对应地址开始存储节区头信息的单元;
用于根据节区头信息,创建记录头信息,从历史记录起始指针对应地址开始存储记录头信息;记录头信息、节区历史数据、节区头信息构成历史记录的单元。
存储装置方案二,在存储装置方案一的基础上,所述管理句柄还包括数据准备好标识、CPU标识、节区最大个数、节区实际个数、节区头的最大字节数和历史记录版本。
存储装置方案三,在存储装置方案一的基础上,所述节区头信息包括节区名称、节区存储偏移、节区数据的字节数、节区条目的字节数和节区附加信息。
存储装置方案四,在存储装置方案一的基础上,所述记录头信息包括CRC校验码、标识符、保留字、存储类型、版本信息和节区头表偏移。
本发明还提供一种嵌入式装置历史记录加载管理实现装置,包括两个加载装置方案:
加载装置方案一,包括如下单元:
用于根据历史记录中的记录头信息提取节区头信息的单元;
用于根据记录头信息中的节区个数和节区头信息中的节区存储偏移确定相应节区的地址偏移量,提取相应数据的单元。
加载装置方案二,在加载装置方案一的基础上,还包括在加载前,对所述历史记录进行有效性检验的单元。
本发明的有益效果是:本发明采用一种格式通用、结构紧凑、存储与加载操作简单的历史记录管理方法,通过对记录头信息、节区头信息、自定义节区历史数据进行操作句柄管理,完成历史数据的存储与加载操作。本发明能够自适应不同CPU存储类型(大端存储类型、小端存储类型),装置产生的历史记录存储数据,能够被不同的设备或计算机按指定格式加载,满足嵌入式装置对快速性和通用性的要求。
附图说明
图1是本发明的嵌入式装置历史记录的管理句柄结构示意图;
图2是本发明的嵌入式装置历史记录的节区头信息结构示意图;
图3是本发明的嵌入式装置历史记录的记录头信息结构示意图;
图4是本发明的嵌入式装置历史记录的存储格式示意图;
图5是本发明的嵌入式装置历史记录的存储操作流程图;
图6是本发明的嵌入式装置历史记录的加载操作流程图。
具体实施方式
下面结合附图对本发明进行进一步地详细说明。
如图1所示,为本发明的嵌入式装置历史记录管理句柄结构示意图,管理句柄是用来进行历史记录存储管理的控制结构,在对历史记录进行存储时进行控制管理,是历史记录存储管理的必要构件,主要包括以下域(各域顺序存储):
1)数据准备好标识:长度4字节,标识历史记录存储信息都已准备完毕,允许存储;
2)CPU标识:长度4字节,标识历史记录所属逻辑CPU模块;
3)节区最大个数:长度2字节,标识历史记录管理模块能管理的节区最大个数;
4)节区实际个数:长度2字节,标识历史记录管理实际处理的节区个数;
5)节区头的最大字节数:长度4字节,标识历史记录中最大的节区头所占内存大小;
6)历史记录版本:长度2字节,标识历史记录存储版本;
7)历史记录起始指针:长度4字节,标识历史记录存储的起始内存地址;
8)节区头地址指针:长度4字节,标识历史记录存储时,存储节区头的起始内存地址;
9)节区数据偏移:长度4字节,标识历史记录中节区数据储存时的位置偏移。
如图2所示为本发明的嵌入式装置历史记录节区头信息结构示意图,节区头信息是对历史记录进行存储与加载管理的必要构件,包括以下域(各域顺序存储):
1)节区名称:长度16字节,标识节区类别或名称;
2)节区存储偏移:长度4字节,标识对应的节区数据的起始偏移;
3)节区数据的字节数:长度4字节,标识对应的节区数据的大小;
4)节区条目的字节数:长度4字节,标识节区条目的大小;
5)节区附加信息:长度4字节,标识节区的附件额外信息,可用来标识CPU号或扇区号。
如图3所示为本发明的嵌入式装置历史记录记录头信息结构示意图,是对历史记录进行存储与加载管理的必要构件,包括以下域(各域顺序存储):
1)标识符:长度16字节,标识历史记录类别或名称;
2)保留字:长度4字节,标识历史记录校验码信息;
3)存储类型:长度1字节,标识CPU存储类型是大、小端模型;
4)版本信息:长度4字节,标识历史记录管理版本号;
5)节区头表偏移:长度4字节,标识节区头表起始位置偏移;
6)节区头数目:长度2字节,标识历史记录存储的节区数量;
7)节区头条目的字节数:长度2字节,标识节区头条目占空间大小。
本发明的嵌入式装置历史记录存储实现方法,流程图如图5所示,步骤如下:
S1、创建管理句柄,管理句柄的格式如图1所示。其中,自定义历史记录数据格式在此处并不是必需项,但自定义历史数据所占内存空间大小为必需项,它需要结合最大历史记录数据个数来开辟内存空间。管理句柄的创建还包括历史记录记录头信息的构建与空间预留。
S2、根据管理句柄,依据历史记录起始指针、在节区数据偏移的基础上逐条存储节区历史数据。此处的存储操作指对历史记录的内存历史数据封装(不是实际的固化操作,如写文件或写FLASH等操作)。
S3、根据节区历史数据存储情况,创建节区头信息,节区头信息的格式如图2所示,从节区头地址指针对应地址开始存储节区头信息。
S4、历史记录内存空间优化存储管理操作,依据管理句柄中的节区头的地址指针和节区数据偏移可以知道预存的节区数据的最大空间;在存储节区数据时,可以知道预存节区数据结束时的位置偏移;若节区数据未按创建管理句柄时指定的节区数据的预定义最大空间使用,则对其后的节区头数据进行内存移动到紧邻实际存储节区数据之后位置,用来增加空间利用率及后续环节的存储与加载效率,满足嵌入式装置对存储空间及访问效率要求;相应地节区头信息也要进行更改。
S5、根据节区头信息,创建记录头信息,记录头信息的格式如图3所示,从历史记录起始指针对应地址开始存储记录头信息。历史记录的记录头信息储存中记录头的条目大小指图3所示的历史记录记录头信息结构所占内存空间大小,记录头保留字填充,指图3所示的历史记录记录头信息结构中保留字,实际按历史记录数据校验码填充,用以历史记录数据的自描述校验。根据存储CPU的大小端数据类型来实现不同架构CPU间的数据共享,数据准备好标识设置成1值(未准备好时设置成0值)。
最终历史记录存储格式如图4所示。
在嵌入式装置中固化操作不拘泥实际硬件介质存储形式,可包含常见的掉电保持设备或介质,如写文件操作与FLASH、磁盘的写操作等。
历史记录数据固化存储采用主、后备冗余备份机制,每份数据中历史记录头信息中都有本份历史记录相关数据的CRC校验码,用来实现历史记录数据有效性自校验功能:当主备份不存在或自描述校验失败时而后备备份有效时,采用后备备份模式并修复主备份;当主存储有效而后备存储无效时,使用主备份并修复后备备份;当主、后备备份都有效时,使用主存储备份。该自校验主、后备冗余存储机制,保证了嵌入式装置的可靠性。
本发明的嵌入式装置历史记录加载实现方法,流程图如图6所示,步骤如下:
历史记录数据加载操作可视作历史记录数据储存过程的逆过程,但比存储过程简单。如图6历史记录加载操作流程示意图及图4历史记录存储格式布局示意图所示,在历史记录数据加载时,此时的引导管理句柄即为历史数据记录头信息(见图3历史记录记录头信息示意图),根据历史记录中的记录头信息,依据节区头表偏移找到节区头信息(记录头信息包括节区头表偏移和节区头数目);再通过节区头信息,依据节区个数和节区存储偏移找到节区数据(所述节区头信息包括节区存储偏移,所述节区头数目即为节区个数),完成对节区数据的快速加载。最后释放管理句柄,也即释放资源管理空间。
还可对历史记录数据进行清除和删除操作。其中,清除操作是指对指定管理句柄对象进行存储信息复位操作,保证后续的存储超时重新开始而不需要重新创建句柄及内存空间重新分配;历史记录数据的删除操作是指对指定管理句柄对象进行删除操作,包括对已申请内存空间的释放操作及存储管理句柄对象域空间的复位初始值。
本发明还提供一种嵌入式装置历史记录存储管理实现装置,包括如下单元:
用于创建管理句柄,管理句柄包括历史记录起始指针、节区数据偏移、节区头地址指针的单元;用于根据管理句柄,依据历史记录起始指针、在节区数据偏移的基础上逐条存储节区历史数据的单元;用于根据节区历史数据存储情况,创建节区头信息,从节区头地址指针对应地址开始存储节区头信息的单元;用于根据节区头信息,创建记录头信息,从历史记录起始指针对应地址开始存储记录头信息;记录头信息、节区历史数据、节区头信息构成历史记录的单元。
本发明还提供一种嵌入式装置历史记录加载管理实现装置,包括如下单元:
用于根据历史记录中的记录头信息提取节区头信息的单元;用于根据记录头信息中的节区个数和节区头信息中的节区存储偏移确定相应节区的地址偏移量,提取相应数据的单元。
上述嵌入式装置历史记录存储管理实现装置和嵌入式装置历史记录加载管理实现装置,实际上是基于本发明对应方法流程的一种计算机解决方案,即一种软件构架,上述各种单元即为与方法流程相对应的各处理进程或程序。由于对上述方法的介绍已经足够清楚完整,故不再对上述装置进行详细描述。
Claims (10)
1.一种嵌入式装置历史记录存储管理实现方法,其特征在于,包括如下步骤:
1)创建管理句柄,管理句柄包括历史记录起始指针、节区数据偏移、节区头地址指针;
2)根据管理句柄,依据历史记录起始指针、在节区数据偏移的基础上逐条存储节区历史数据;
3)根据节区历史数据存储情况,创建节区头信息,从节区头地址指针对应地址开始存储节区头信息;
4)根据节区头信息,创建记录头信息,从历史记录起始指针对应地址开始存储记录头信息;记录头信息、节区历史数据、节区头信息构成历史记录。
2.根据权利要求1所述的嵌入式装置历史记录存储管理实现方法,其特征在于,所述管理句柄还包括数据准备好标识、CPU标识、节区最大个数、节区实际个数、节区头的最大字节数和历史记录版本。
3.根据权利要求1所述的嵌入式装置历史记录存储管理实现方法,其特征在于,所述节区头信息包括节区名称、节区存储偏移、节区数据的字节数、节区条目的字节数和节区附加信息。
4.根据权利要求1所述的嵌入式装置历史记录存储管理实现方法,其特征在于,所述记录头信息包括CRC校验码、标识符、保留字、存储类型、版本信息和节区头表偏移。
5.一种嵌入式装置历史记录加载管理实现方法,其特征在于,包括如下步骤:
A)根据历史记录中的记录头信息提取节区头信息;
B)根据记录头信息中的节区个数和节区头信息中的节区存储偏移确定相应节区的地址偏移量,提取相应数据。
6.根据权利要求5所述的嵌入式装置历史记录加载管理实现方法,其特征在于,还包括在加载前,对所述历史记录进行有效性检验的步骤。
7.一种嵌入式装置历史记录存储管理实现装置,其特征在于,包括如下单元:
用于创建管理句柄,管理句柄包括历史记录起始指针、节区数据偏移、节区头地址指针的单元;
用于根据管理句柄,依据历史记录起始指针、在节区数据偏移的基础上逐条存储节区历史数据的单元;
用于根据节区历史数据存储情况,创建节区头信息,从节区头地址指针对应地址开始存储节区头信息的单元;
用于根据节区头信息,创建记录头信息,从历史记录起始指针对应地址开始存储记录头信息;记录头信息、节区历史数据、节区头信息构成历史记录的单元。
8.根据权利要求7所述的嵌入式装置历史记录存储管理实现装置,其特征在于,所述管理句柄还包括数据准备好标识、CPU标识、节区最大个数、节区实际个数、节区头的最大字节数和历史记录版本。
9.根据权利要求7所述的嵌入式装置历史记录存储管理实现装置,其特征在于,所述节区头信息包括节区名称、节区存储偏移、节区数据的字节数、节区条目的字节数和节区附加信息。
10.一种嵌入式装置历史记录加载管理实现装置,其特征在于,包括如下单元:
用于根据历史记录中的记录头信息提取节区头信息的单元;
用于根据记录头信息中的节区个数和节区头信息中的节区存储偏移确定相应节区的地址偏移量,提取相应数据的单元。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610889752.7A CN106445837B (zh) | 2016-10-12 | 2016-10-12 | 一种嵌入式装置历史记录存储与加载管理实现方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610889752.7A CN106445837B (zh) | 2016-10-12 | 2016-10-12 | 一种嵌入式装置历史记录存储与加载管理实现方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106445837A true CN106445837A (zh) | 2017-02-22 |
CN106445837B CN106445837B (zh) | 2020-01-17 |
Family
ID=58173557
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610889752.7A Active CN106445837B (zh) | 2016-10-12 | 2016-10-12 | 一种嵌入式装置历史记录存储与加载管理实现方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106445837B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109521984A (zh) * | 2017-09-20 | 2019-03-26 | 南京南瑞继保电气有限公司 | 基于嵌入式系统的液晶面板自定义图符显示方法 |
CN112328594A (zh) * | 2020-10-23 | 2021-02-05 | 许继集团有限公司 | 一种嵌入式装置模型数据管理方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070100980A1 (en) * | 2005-11-01 | 2007-05-03 | Hitachi, Ltd. | Computer system and method for managing log information |
CN101996252A (zh) * | 2010-11-17 | 2011-03-30 | 浙江省电力试验研究院 | Xml文件中节点元素的索引信息表示法 |
CN102158349A (zh) * | 2011-02-09 | 2011-08-17 | 中兴通讯股份有限公司 | 一种日志管理装置及方法 |
CN103744939A (zh) * | 2013-12-31 | 2014-04-23 | 华为技术有限公司 | 一种日志的记录方法、日志的恢复方法及日志管理器 |
CN103927251A (zh) * | 2014-03-18 | 2014-07-16 | 烽火通信科技股份有限公司 | 一种嵌入式系统的日志管理方法 |
US20150100708A1 (en) * | 2013-10-04 | 2015-04-09 | Advanced Micro Devices, Inc. | Methods and systems for moving and resizing i/o activity logs |
-
2016
- 2016-10-12 CN CN201610889752.7A patent/CN106445837B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070100980A1 (en) * | 2005-11-01 | 2007-05-03 | Hitachi, Ltd. | Computer system and method for managing log information |
CN101996252A (zh) * | 2010-11-17 | 2011-03-30 | 浙江省电力试验研究院 | Xml文件中节点元素的索引信息表示法 |
CN102158349A (zh) * | 2011-02-09 | 2011-08-17 | 中兴通讯股份有限公司 | 一种日志管理装置及方法 |
US20150100708A1 (en) * | 2013-10-04 | 2015-04-09 | Advanced Micro Devices, Inc. | Methods and systems for moving and resizing i/o activity logs |
CN103744939A (zh) * | 2013-12-31 | 2014-04-23 | 华为技术有限公司 | 一种日志的记录方法、日志的恢复方法及日志管理器 |
CN103927251A (zh) * | 2014-03-18 | 2014-07-16 | 烽火通信科技股份有限公司 | 一种嵌入式系统的日志管理方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109521984A (zh) * | 2017-09-20 | 2019-03-26 | 南京南瑞继保电气有限公司 | 基于嵌入式系统的液晶面板自定义图符显示方法 |
CN112328594A (zh) * | 2020-10-23 | 2021-02-05 | 许继集团有限公司 | 一种嵌入式装置模型数据管理方法及装置 |
CN112328594B (zh) * | 2020-10-23 | 2024-02-02 | 许继集团有限公司 | 一种嵌入式装置模型数据管理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN106445837B (zh) | 2020-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104969168B (zh) | 具有用于分级写入的nvram的持久性存储装置 | |
CN108319543A (zh) | 一种计算机日志数据的异步处理方法及其介质、系统 | |
CN102262568B (zh) | 抗掉电的Linux系统启动方法 | |
CN103049220B (zh) | 存储控制方法、存储控制装置和固态存储系统 | |
CN103577121A (zh) | 一种基于nand flash的高可靠线性文件存取方法 | |
WO2016041401A1 (zh) | 向缓存中写入数据的方法及装置 | |
WO2016192375A1 (zh) | 存储设备及基于该存储设备的分块存储方法 | |
CN105144113A (zh) | 从快照恢复应用 | |
CN107479922A (zh) | 一种闪存数据管理方法、装置及计算机可读存储介质 | |
CN101945131B (zh) | 一种基于存储虚拟化的数据迁移方法 | |
CN103996412A (zh) | 一种用于智能卡非易失性存储器的掉电保护方法 | |
CN106104515A (zh) | 利用非易失性存储器的文件系统设计和故障恢复方法 | |
TWI470432B (zh) | 電子系統及其快閃記憶體管理方法 | |
CN102521114A (zh) | 一种虚拟化环境下的文件系统日志存储系统 | |
WO2014094568A1 (zh) | 一种数据存储规划方法及装置 | |
CN104040512A (zh) | 存储空间的处理方法、装置及非易失性计算机可读存储介质 | |
CN102024021A (zh) | 一种逻辑文件系统元数据的日志方法 | |
CN109582337A (zh) | 一种固件升级的方法、装置和计算机可读存储介质 | |
CN111240879B (zh) | 一种sas卡固件日志收集方法、系统、装置及存储介质 | |
CN104205229A (zh) | 功率损耗恢复中的固态驱动器管理 | |
CN114138549A (zh) | 基于kubernetes系统的数据备份和恢复方法 | |
CN106445837A (zh) | 一种嵌入式装置历史记录存储与加载管理实现方法及装置 | |
US9002794B1 (en) | Reclaiming space from a file system | |
CN107577492A (zh) | 加速文件系统读写的nvm块设备驱动方法及系统 | |
US20170017427A1 (en) | Optical cold storage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |