CN100407158C - 一种在通信设备中保存数据文件的方法 - Google Patents
一种在通信设备中保存数据文件的方法 Download PDFInfo
- Publication number
- CN100407158C CN100407158C CN2005100343479A CN200510034347A CN100407158C CN 100407158 C CN100407158 C CN 100407158C CN 2005100343479 A CN2005100343479 A CN 2005100343479A CN 200510034347 A CN200510034347 A CN 200510034347A CN 100407158 C CN100407158 C CN 100407158C
- Authority
- CN
- China
- Prior art keywords
- data
- directory
- files
- file
- sequence file
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种在通信设备中保存数据文件的方法,创建两个数据目录用于保存数据文件;在每个数据目录中增加开始序列文件和结束序列文件;在每个数据目录下保存文件都按修改开始序列文件并存储、存储数据文件、修改结束序列文件并存储的步骤;通讯设备从数据目录中获取数据文件时,根据开始序列文件和结束序列文件判断数据文件是否有效以及两个数据目录下的数据文件是否相同,在使两个数据目录下的数据文件相同的情况下获取数据。本发明能够保证通讯设备中始终保存着有效的数据文件,并且每次通讯设备上电启动时都能从最新有效的数据文件中获取系统运行需要的数据,从而保证通讯设备再次上电启动时能够正常运行。
Description
技术领域:
本发明涉及通讯领域中数据文件的保存。
背景技术:
电信级的通信设备通常要求设备具有很高的可靠性,而通信设备的正常运行离不开数据,包括设备的配置信息、用户的配置信息等,这些数据通常以文件的形式,需要保存在硬盘或者FLASH等非易失性存储媒介中。如果发生掉电、系统异常、死机等异常情况导致通信设备重启动,通信设备必须能从存储在非易失性存储媒介中的数据文件中读取保存的数据恢复正常运行。因此,数据文件的保存是通信设备的一项非常重要的功能。数据保存在数据文件中通常发生在用户通过网管、TELNET或者WEB等方式对通信设备进行数据配置,或者通信设备运行过程中需要对发生的重要事情记录到非易失性存储媒介中等情况。在设备正常运行过程中,数据的存储通常是没有任何问题的。然而如果通信设备正在将数据保存在数据文件的过程中发生掉电等意外情况,就可能导致某些数据文件保存不完整,从而导致保存在各个数据文件中的数据一致性不够。当通信设备重新上电运行时,设备无法从保存在非易失性存储媒介中的数据文件中获取一致性的数据,影响了通信设备的正常运行。
发明内容:
本发明解决的技术问题是提出一种保存数据文件的方法,当通信设备在保存数据到数据文件的过程中发生掉电等意外情况时,设备再次上电启动时能够从非易失性存储媒介中的数据文件恢复出一致性的数据,从而保证通信设备再次上电启动时能够正常运行。
本发明的技术方案为:
1.1在非易失性存储媒介中创建两个数据目录用于保存数据文件,这两个数据目录下保存的数据文件在正常情况下是完全一样的;
1.2在每个数据目录中除了保存通信设备本身需要保存的数据文件之外,增加开始序列文件和结束序列文件两个数据文件;
1.3将数据文件保存到数据目录中,按照如下步骤处理:
1.3.0设定所述两个数据目录中的任一个为数据目录1,另一个为数据目录2;
1.3.1修改数据目录1中的开始序列文件内容并存储;
1.3.2存储通信设备需要保存的数据文件到数据目录1;
1.3.3修改数据目录1中的结束序列文件内容并存储;
1.3.4修改数据目录2中的开始序列文件内容并存储;
1.3.5存储通信设备需要保存的数据文件到数据目录2;
1.3.6修改数据目录2中的结束序列文件内容并存储;
1.4通信设备从数据目录中获取数据文件按以下步骤处理:
1.4.1根据数据目录1中的开始序列文件和结束序列文件判断数据目录1中的数据文件是否有效:如果有效,则执行1.4.2;如果无效,则执行1.4.5;
1.4.2根据数据目录2中的开始序列文件和结束序列文件判断数据目录2中的数据文件是否有效:如果有效,则执行1.4.3;如果无效,则执行1.4.4;
1.4.3根据数据目录1和数据目录2的开始文件序列、结束序列文件的关系,判断两个数据目录下存储的数据文件是否相同:如果相同,则执行1.4.6;如果不同,则执行1.4.4;
1.4.4把数据目录1下的数据文件全部复制到数据目录2下面,然后执行1.4.6;
1.4.5把数据目录2下的数据文件全部复制到数据目录1下面,然后执行1.4.6;1.4.6通信设备从数据目录1读取数据文件,获取系统数据,然后开始正常工作。
本发明能够保证通信设备中始终保存着有效的数据文件,并且每次通信设备上电启动时都能从最新有效的数据文件中获取系统运行需要的数据。即使当通信设备在保存数据到数据文件的过程中发生掉电、系统异常、死机等意外情况时,也能够保证设备再次上电启动时能从非易失性存储媒介中的数据文件恢复出一致性的数据,从而保证通信设备再次上电启动时能够正常运行。
附图说明:
图1是现有技术中在非易失性存储媒介中存储数据文件的组织示意图;
图2是本发明的在非易失性存储媒介中存储数据文件的组织示意图;
图3是本发明的存储数据文件到非易失性存储媒介的程序流程图;
图4是本发明的在通信设备上电启动时从非易失性存储媒介中的两个数据目录获取最新有效的数据并根据需要对两个数据目录进行同步的程序流程图。
具体实施方式:
下面结合附图对本发明做进一步的详细说明。
图1是现有技术中通常采用的在非易失性存储媒介(例如硬盘或FLASH等)中存储数据文件的组织示意图。在图1中,数据文件1、数据文件2……数据文件N是存储着保证通信设备正常运行所需的系统数据的数据文件。目前的通信设备通常只在数据目录中保存一份数据,即不同的系统数据分别保存在一个文件中。在设备正常运行过程中,数据的存储通常是没有任何问题的。然而如果通信设备正在将数据保存在数据文件的过程中发生掉电等意外情况,就可能导致某些数据文件保存不完整,从而导致保存在各个数据文件中的数据一致性不够。当通信设备重新上电运行时,设备无法从保存在非易失性存储媒介中的数据文件中获取一致性的数据,影响了通信设备的正常运行。
图2是本发明的在非易失性存储媒介中存储数据文件的组织示意图。在图2中,数据文件1、数据文件2……数据文件N是存储着保证通信设备正常运行所需的系统数据的数据文件。本发明在通信设备中建立两个数据目录,用于保存两份数据,即系统的任何数据在两个数据目录中的数据文件中都可以获取。同时,为了增加对数据目录中的数据文件的有效性进行判断,我们在每个数据目录新增加两个文件:开始序列文件和结束序列文件,并可以采用某种通用的算法计算开始序列和结束序列文件的关系从而判断该数据目录下的数据文件的有效性。
图3是本发明的存储数据文件到非易失性存储媒介的程序流程图。为了描述的方便,我们假定通信设备总是从数据目录1中存储的数据文件中获取数据来进行系统启动的。首先执行步骤301修改数据目录1中的开始序列文件并存储,再执行步骤302将通信设备需要保存的数据存储到数据目录1的数据文件中,然后执行步骤303修改数据目录1中的结束序列文件并存储。执行了步骤301、302、303后,设备的数据已经完整保存在数据目录1的数据文件中。紧接着执行步骤304修改数据目录2中的开始序列文件并存储,再执行步骤305将通信设备需要保存的数据存储到数据目录2的数据文件中,然后执行步骤306修改数据目录2中的结束序列文件并存储。执行了步骤304、305、306后,设备的数据已经完整保存在数据目录2的数据文件中。
一般情况下,通信设备操作两个数据目录的顺序不是随机的,比如先操作数据目录1,再操作数据目录2,表现在图3的流程图中,就是先执行步骤301、步骤302和步骤303,然后再执行步骤304、步骤305和步骤306。因此,如果两个数据目录的数据文件都有效但是不一致,数据目录1的数据文件是最新的。假设通信设备操作数据目录的顺序是随机的,既可能先操作数据目录1再操作数据目录2,表现在图3的流程图中,就是先执行步骤301、步骤302和步骤303,然后再执行步骤304、步骤305和步骤306;也可能先操作数据目录2再操作数据1,表现在图3的流程图中,就是先执行步骤304、步骤305和步骤306,然后再执行步骤301、步骤302和步骤303。我们可以通过设定合适的方法,比较数据目录1和数据目录2的开始文件序列、结束序列文件的关系,从而判断出哪个数据目录下的数据文件是最新的。
图4是本发明的在通信设备上电启动时从非易失性存储媒介中的两个数据目录获取最新有效的数据并根据需要对两个数据目录进行同步的程序流程图。我们仍假定通信设备总是从数据目录1中存储的数据文件中获取数据来进行系统启动的,并且存储数据时按照图3的流程首先将数据存储到数据目录1的数据文件中,然后再将数据存储到数据目录2的数据文件中。首先执行步骤401读取数据目录1的开始序列文件与结束序列文件,然后执行步骤402,从数据目录1中的开始序列文件和结束序列文件可以判断出数据目录1中的数据文件是否是有效的。判断的方法在后面介绍。如果有效,执行步骤403;如果无效,执行步骤408,将数据目录2下的数据文件全部复制到数据目录1下面。为了更好地保证数据复制的成功,可以先删除数据目录1下的所有数据文件,然后再进行复制。执行步骤403,读取数据目录2的开始序列文件与结束序列文件后,执行步骤404,根据开始序列文件和结束序列文件判断数据目录2中数据文件存储的数据是否有效:如果有效,执行步骤405;如果无效,执行步骤407,将数据目录1下的数据文件全部复制到数据目录2下面。为了更好地保证数据复制的成功,可以先删除数据目录2下的所有数据文件,然后再进行复制。执行步骤405,根据数据目录1和数据目录2的开始文件序列、结束序列文件的关系,判断两个数据目录下存储的数据文件是否相同。判断的方法在后面介绍。如果两个数据目录中的数据文件是一致的,则执行步骤406,读取数据目录1中的数据文件,获取系统数据,系统开始正常工作;如果不一致,由于我们假定存储数据时首先将数据存储到数据目录1的数据文件中,因此数据目录1的数据文件中的数据比数据目录2的数据文件中的数据要新,执行步骤407,将数据目录1下的数据文件全部复制到数据目录2下面。为了更好地保证数据复制的成功,可以先删除数据目录2下的所有数据文件,然后再进行复制。执行步骤407或者步骤408后,实现了两个数据目录下的数据文件的同步,即两个数据目录下的数据文件是完全一致的,具体的操作是:1)复制开始序列文件;2)复制保存系统运行数据的数据文件;3)复制结束序列文件。为了更好地保证数据复制的成功,可以先删除目的数据目录下的所有数据文件,然后再进行复制。然后执行步骤406,读取数据目录1中的数据文件,获取系统数据,系统开始正常工作。设备第一次上电启动时,可能没有任何的数据文件,按照缺省配置数据或空数据启动了系统,则第一次存储数据时,首先需要创建两个数据目录,并在两个数据目录中分别创建开始序列文件和结束序列文件,例如我们可以对开始序列文件和结束序列文件都存储一个整数,把序列号初始化为0;然后进行具体的数据文件存储时,按照图3所示的程序流程图存储数据。
根据开始序列文件和结束序列文件判断数据目录中的数据是否有效的方法可以有很多,只要开始序列文件和结束序列文件存储的是能识别、可比较的内容,根据一些通用的算法即可判断数据目录中的数据是否有效。
下面以一种简单的方法为例进行说明:在开始序列文件和结束序列文件都保存一个相同的整数;每次进行数据存储的操作时,开始序列文件和结束序列文件存储的整数都加1。正常情况下,开始序列文件、结束序列文件的内容是完全一样的。如果设备正在将数据存储到某个数据目录中的数据文件时发生掉电等意外,当设备再次上电启动时,该数据中的开始序列文件和结束序列文件的内容是不一致的,即两个整数不相等,从而知道该数据目录中的数据文件不可用。在系统工作过程中,即使在存储数据的过程中发生异常导致设备重启动,按照图3所示的程序流程图操作,可以保证至少有一个数据目录下的开始序列文件、结束序列文件的内容是完全一样的,即该数据目录下的数据文件是有效的。而且即使设备重启动发生在刚好将数据存储到其中一个数据目录的数据文件中而准备将数据存储到另一个数据目录的数据文件中时,通过比较两个数据目录下的开始序列文件,可以判断出数据目录1下的数据文件与数据目录2下的数据文件不一致,由于我们假定先将数据存储到数据目录1的数据文件中,在设备重启动后系统会发现数据目录1中的开始序列文件的整数比数据目录2中的开始序列文件的整数大,说明数据目录1中的数据文件的内容是最新的。如果通信设备操作数据目录的顺序是随机的,也可以通过比较两个数据目录中开始序列文件存储的整数的大小可以判断出哪个数据目录的数据文件是最新的。
根据上面的介绍,同样也可以通过判断两个数据目录下的开始序列文件和结束序列文件中保存的整数是否相等从而判断两个数据目录下存储的数据文件是否相同。
Claims (4)
1.一种在通信设备中保存数据文件的方法,步骤包括:
1.1在非易失性存储媒介中创建两个数据目录用于保存数据文件,这两个数据目录下保存的数据文件在正常情况下是完全一样的;
1.2在每个数据目录中除了保存通信设备本身需要保存的数据文件之外,增加开始序列文件和结束序列文件两个数据文件;
1.3将数据文件保存到数据目录中,按照如下步骤处理:
1.3.0设定所述两个数据目录中的任一个为数据目录1,另一个为数据目录2;
1.3.1修改数据目录1中的开始序列文件内容并存储;
1.3.2存储通信设备需要保存的数据文件到数据目录1;
1.3.3修改数据目录1中的结束序列文件内容并存储;
1.3.4修改数据目录2中的开始序列文件内容并存储;
1.3.5存储通信设备需要保存的数据文件到数据目录2;
1.3.6修改数据目录2中的结束序列文件内容并存储;
1.4通信设备从数据目录中获取数据文件按以下步骤处理:
1.4.1根据数据目录1中的开始序列文件和结束序列文件判断数据目录1中的数据文件是否有效:如果有效,则执行1.4.2;如果无效,则执行1.4.5;
1.4.2根据数据目录2中的开始序列文件和结束序列文件判断数据目录2中的数据文件是否有效:如果有效,则执行1.4.3;如果无效,则执行1.4.4;
1.4.3根据数据目录1和数据目录2的开始文件序列、结束序列文件的关系,判断两个数据目录下存储的数据文件是否相同:如果相同,则执行1.4.6;如果不同,则执行1.4.4;
1.4.4把数据目录1下的数据文件全部复制到数据目录2下面,然后执行1.4.6;
1.4.5把数据目录2下的数据文件全部复制到数据目录1下面,然后执行1.4.6;
1.4.6通信设备从数据目录1读取数据文件,获取系统数据,然后开始正常工作。
2.权利要求1所述的在通信设备中保存数据文件的方法,其特征在于,所述判断数据目录中的数据文件是否有效的方法为:在每一个数据目录中,先在开始序列文件和结束序列文件都保存一个相同的整数,每次修改开始序列文件和结束序列文件时,都在所述整数的基础上加1,若开始序列文件和结束序列文件中的所述整数相同,该数据目录中的文件有效,否则无效。
3.权利要求1所述的在通信设备中保存数据文件的方法,其特征在于,判断两个数据目录下存储的数据文件是否相同的方法为:先在两个数据目录中的开始序列文件和结束序列文件中保存相同的整数,每次修改开始序列文件和结束序列文件时,都在所述整数的基础上加1,若两个数据目录的开始序列文件中的所述整数相同,则两个数据目录下的数据文件相同,否则不相同。
4.权利要求1所述的在通信设备中保存数据文件的方法,其特征在于,在把数据目录1下面的数据文件全部复制到数据目录2下面时,先删除数据目录2下的所有文件,然后再复制;或在把数据目录2下的数据文件全部复制到数据目录1下面时,先删除数据目录1下的所有文件,然后再复制。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN2005100343479A CN100407158C (zh) | 2005-04-21 | 2005-04-21 | 一种在通信设备中保存数据文件的方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN2005100343479A CN100407158C (zh) | 2005-04-21 | 2005-04-21 | 一种在通信设备中保存数据文件的方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN1855059A CN1855059A (zh) | 2006-11-01 |
| CN100407158C true CN100407158C (zh) | 2008-07-30 |
Family
ID=37195244
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN2005100343479A Expired - Fee Related CN100407158C (zh) | 2005-04-21 | 2005-04-21 | 一种在通信设备中保存数据文件的方法 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN100407158C (zh) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103092719B (zh) * | 2011-10-28 | 2016-09-07 | 浙江大华技术股份有限公司 | 一种文件系统的断电保护方法 |
| CN109104481B (zh) * | 2018-08-07 | 2021-09-21 | Oppo(重庆)智能科技有限公司 | 文件完整性检测方法、文件完整性检测装置及终端设备 |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1299484A (zh) * | 1998-03-10 | 2001-06-13 | 网络装置公司 | 高度可用的文件服务器 |
| EP0921467B1 (en) * | 1995-03-23 | 2001-06-27 | Cheyenne Advanced Technology Limited | Computer backup system operable with open files |
| US20040268129A1 (en) * | 2003-06-30 | 2004-12-30 | Archidata Inc. | Electronic file certification method and system |
| CN1605989A (zh) * | 2003-10-09 | 2005-04-13 | 国际商业机器公司 | 备份操作期间确保有效日志文件系统元数据的方法和装置 |
-
2005
- 2005-04-21 CN CN2005100343479A patent/CN100407158C/zh not_active Expired - Fee Related
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0921467B1 (en) * | 1995-03-23 | 2001-06-27 | Cheyenne Advanced Technology Limited | Computer backup system operable with open files |
| CN1299484A (zh) * | 1998-03-10 | 2001-06-13 | 网络装置公司 | 高度可用的文件服务器 |
| US20040268129A1 (en) * | 2003-06-30 | 2004-12-30 | Archidata Inc. | Electronic file certification method and system |
| CN1605989A (zh) * | 2003-10-09 | 2005-04-13 | 国际商业机器公司 | 备份操作期间确保有效日志文件系统元数据的方法和装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN1855059A (zh) | 2006-11-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6309103B2 (ja) | スナップショットおよびクローンの複製 | |
| CN102132258B (zh) | 固件更新系统、信息设备以及程序 | |
| CN111143132B (zh) | 一种bios恢复方法、装置、设备及可读存储介质 | |
| JP4833273B2 (ja) | ストレージ装置、リストア方法およびリストアプログラム | |
| CN101430705B (zh) | 基于嵌入式数据库的存储方法和装置 | |
| CN102331957A (zh) | 文件备份的方法及装置 | |
| CN101751478A (zh) | 一种文件备份方法及系统 | |
| CN116578307A (zh) | 数据预置方法、电子设备和计算机可读存储介质 | |
| CN106055430A (zh) | 云台摄像头的系统备份更新方法及装置 | |
| CN108415794A (zh) | 文件备份方法及文件备份装置 | |
| US20050262033A1 (en) | Data recording apparatus, data recording method, program for implementing the method, and program recording medium | |
| CN118152181A (zh) | 固态硬盘数据恢复方法、终端设备、电子设备及存储介质 | |
| CN100543706C (zh) | 一种实现flash芯片数据安全的方法 | |
| WO2018177193A1 (zh) | 一种软件升级方法及装置 | |
| CN100407158C (zh) | 一种在通信设备中保存数据文件的方法 | |
| CN101201768A (zh) | 数据保存的方法和模块、数据恢复的方法和模块 | |
| CN119645728A (zh) | 数据备份方法、装置、设备、存储介质和程序产品 | |
| CN111176886B (zh) | 一种数据库模式的切换方法、装置及电子设备 | |
| CN103262042B (zh) | 一种分布式存储数据恢复方法、装置及系统 | |
| CN113535482B (zh) | 云备份链数据备份方法及装置、设备、可读介质 | |
| CN116048879A (zh) | 数据存储的管理方法、装置及电子设备 | |
| JP4826610B2 (ja) | 画像処理装置および画像消去プログラム | |
| CN115509825A (zh) | 数据处理方法、装置、nfc芯片及计算机可读存储介质 | |
| CN115878381A (zh) | 基于srm盘的数据恢复方法及装置、存储介质、电子装置 | |
| CN101014940A (zh) | 由存储介质存储和读取数据 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| C14 | Grant of patent or utility model | ||
| GR01 | Patent grant | ||
| CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080730 |
|
| CF01 | Termination of patent right due to non-payment of annual fee |