CN101710373B - 嵌入式系统的文件操作方法 - Google Patents

嵌入式系统的文件操作方法 Download PDF

Info

Publication number
CN101710373B
CN101710373B CN2009101887401A CN200910188740A CN101710373B CN 101710373 B CN101710373 B CN 101710373B CN 2009101887401 A CN2009101887401 A CN 2009101887401A CN 200910188740 A CN200910188740 A CN 200910188740A CN 101710373 B CN101710373 B CN 101710373B
Authority
CN
China
Prior art keywords
file
read
write
field name
subregion
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
Application number
CN2009101887401A
Other languages
English (en)
Other versions
CN101710373A (zh
Inventor
景麟
乔木
吕巧
黄双彩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Skyworth Digital Technology Co Ltd
Original Assignee
Shenzhen Skyworth Digital Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Skyworth Digital Technology Co Ltd filed Critical Shenzhen Skyworth Digital Technology Co Ltd
Priority to CN2009101887401A priority Critical patent/CN101710373B/zh
Publication of CN101710373A publication Critical patent/CN101710373A/zh
Application granted granted Critical
Publication of CN101710373B publication Critical patent/CN101710373B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开一种嵌入式系统的文件操作方法,其包括步骤:将嵌入式系统中需要进行读写的操作数据存放在Flash存储器的可读写分区,且将Flash存储器的其他分区设置为只读分区;从只读分区中将第一文件复制到内存,在内存中生成第二文件;从可读写分区读取操作数据,以该操作数据更新第二文件;由应用程序的应用需要修改第二文件中的数据,以修改后的第二文件对可读写分区中操作数据进行对应更新处理。通过将需要修改数据和不修改数据分开以文件方式分开保存,仅仅对文件中需要的数据进行写操作,从而避免了破坏嵌入式设备的文件系统,提高了嵌入式设备的文件安全性能。

Description

嵌入式系统的文件操作方法
技术领域
本发明涉及文件保护方法,尤其是涉及嵌入式系统中保护文件安全的文件操作方法。
背景技术
嵌入式系统的Flash存储器一般设置分区:引导加载程序(boofloader)分区、内核(kernel)分区、根文件系统(rootfs)分区,甚至还设有应用分区(usrfs),需要读写的文件根据存放在根文件系统分区或应用分区。当然,个别嵌入式系统的Flash存储器设有专门的分区用于存放需要读写的文件,应用程序在该分区中直接对文件进行读写操作。
另外,嵌入式设备的文件系统(以下简称嵌入式文件系统)在使用中需要读写的文件很少,且需要进行读写操作的文件(比如配置文件),存放在嵌入式系统中挂载了Flash存储器分区的目录中,或存放在Flash存储器的专门分区中。
因此,目前嵌入式系统的对文件操作存在如下缺陷:
1、容易出现存放文件的分区被损坏、甚至文件系统被破坏。
现有文件系统中需要读写的文件如果都分开存在Flash存储器分区的目录或根文件系统分区,对这些文件的读写操作在某些情况下可能会导致整个分区被破坏,甚至导致整个文件系统被破坏。即使设有专门的分区存放需要进行读写操作的文件,由于现有的方法是整个文件可进行读写操作的,如果嵌入式系统的底层驱动不稳定或文件系统不稳定或其他原因会导致读写文件操作时整个分区被损坏、文件丢失等严重后果。
2、现有对文件系统的修复方法比较麻烦,所需时间也比较长。
如果需要进行读写操作的文件丢失,现有的修复方法可能是在Flash存储器上保存该分区的文件系统镜像的备份,或者从网络上下载一个文件镜像烧录至该分区。
发明内容
本发明提出一种嵌入式系统的文件操作方法,通过将需要修改数据和不修改数据分开以文件方式分开保存,仅仅对需要修改的数据文件进行写操作,从而避免了破坏嵌入式设备的文件系统。
本发明采用了如下技术方案来实现:一种嵌入式系统的文件操作方法,其包括步骤:
将嵌入式系统中需要进行读写的操作数据存放在Flash存储器的可读写分区,且将Flash存储器的其他分区设置为只读分区;
从只读分区中将第一文件复制到内存,在内存中生成第二文件;
从可读写分区读取操作数据,以该操作数据更新第二文件;
由应用程序的应用需要修改第二文件中的数据,以修改后的第二文件对可读写分区中操作数据进行对应更新处理。
其中,所述嵌入式系统的文件操作方法还包括步骤,监控对可读写分区进行读写操作是否正常的,若不正常,则:
a、擦除可读写分区的信息;
b、在可读写分区中新建需要进行读写的操作数据的各个字段名,且各个字段名的参数值取初始值或默认值;
c、根据内存中修改后的第二文件中各个字段名的参数值对可读写分区中操作数据包含的各个字段名的参数值进行对应进行更新处理。
其中,对可读写分区中操作数进行更新处理的步骤包括:
根据第二文件中被修改参数值的字段名,在可读写分区的操作数据中查找对应的字段名;
若找到该字段名,则将该字段名的参数值替换为第二文件中相应字段名的参数值;
若未找到该字段名,则在可读写分区中先新建字段名,且将该字段名的参数值替换为第二文件中相应字段名的参数值。
其中,第一文件包括多个标准格式文件,每个标准格式文件是将一个或多个需要进行读写操作的文件按文件模板配置而成。
其中,每个标准格式文件具有不同的文件名。
其中,包含在同一个标准格式文件中的任意两个字段名均不相同。
其中,操作数据以字符串格式存储在可读写分区中。
其中,操作数据以数据文件格式存储在可读写分区中。
与现有技术相比,本发明具有如下有益效果:
本发明可以保证嵌入式设备中的文件系统不被频繁的写文件而破坏掉,即使写操作时破坏了可读写分区,但可读写分区的信息可以在下次使用时根据内存中保存信息再生,而无需修复可读写分区。因此,本发明保证了文件系统的不会被破坏,提高了嵌入式设备的文件安全性能。
附图说明
图1是本发明Flash存储器与内存交互信息的流程示意图;
图2是本发明文件操作的流程示意图。
具体实施方式
本发明提出一种在嵌入式设备的Flash存储器中,将需要读写的文件中要修改数据和不修改数据分开以文件方式保存;不需要修改的数据文件设置为只读,而需要修改的数据文件先在嵌入式设备的内存中进行修改,再更新至Flash存储器的可读写分区。
在嵌入式设备的文件系统中,需要进行读写操作的文件一般包含:系统配置文件、版本文件、服务器地址记录文件或用户上次操作记录文件等。配置文件中一般存放IP地址、用户名和密码等用户信息。版本文件一般存放版本号和更新时间等。其他文件一般存放服务器地址、升级服务器地址等。为了方便应用程序的查找,这些文件在记录的时候一般都会有固定的格式,一般以字段名加等号的形式出现,比如:
Usrname=xxx
Passwd=xxxx
IP=xxx.xxx.xxx.xxx
如图1所示,将Flash存储器1中,除开可读写分区外,其他分区均设置成只读。而所有要进行读写操作的文件按文件模板配置成标准格式文件,并将标准格式文件中各参数(对应前述提到的字段名)赋上初始值。比如,将用户名、密码、IP地址和升级服务器地址的信息赋上初始值,按文件模板配置在一个名为usr.conf的标准格式文件中,该文件格式:
Usrname=xxx
Passwd=xxx
Ip=0.0.0.0
Upgradeserver=0.0.0.0
在嵌入式设备中,每个应用程序具有特定的功能,因此,每个应用程序需要使用哪些标准格式文件是确定的,在运行过程中可能涉及标准格式文件中哪些数据修改也是可预知的。故,本发明把各个标准格式文件中需要进行修改的操作数据存放在Flash存储器1的一个特定的可读写分区中。比如,该可读写分区中记录各个标准格式文件中需要进行修改的操作数据,其存储格式如下:
Usr.conf“Username=xxxxx,Passwd=xxxx,IP=xxx.xxx.xxx.xxx,...”
xxx.conf“Server=...,...”
比如,上述实例中操作数据含义为:在Usr.conf文件中,字段名为Username、Passwd、IP需要进行修改操作,且记录了该每个字段名的最新参数值;在xxx.conf文件中,字段名为Server需要进行修改操作。当然,操作数据在可读写分区中以字符串、文件或其他方便读写的方式存储。但注意不要有重复的关键字,如:各个标准格式文件的文件名不能重复,且同一个标准格式文件中不要有重复的字段关键字。
由于Flash存储器1中,除可读写分区以后,其他分区的文件系统为只读,因而,需要借助嵌入式设备的内存2对可读写分区中的标准格式文件进行修改操作。结合图2所示,嵌入式设备的应用程序对各个标准格式文件操作方式如下:
步骤S1:嵌入式设备开机后,将Flash存储器1的应用分区中的应用程序读入内存2,且从根文件系统分区将应用程序需要读写的各个标准格式文件A复制到内存,在内存中记为标准格式文件B。
步骤S2:应用程序从标准格式文件B中读取各个字段信息,并记录下字段名和参数值。
步骤S3:读取数据时判断可读写分区是否正常,数据是否合法。若是,转入步骤S4,否则转入步骤S7。
步骤S4:由应用程序向可读写分区读取的对应字段名的操作数据,以便于依据此操作数据中每个字段名的对应值更新标准格式文件B,使更新后的标准格式文件B成为应用程序的可操作文件。
步骤S5:查找该分区中是否有所找字段名,若是,转入步骤S6,否则转入步骤S8。
步骤S6:找到该字段名,用所取得的参数值更新文件B中对应字段名的参数值,生成标准格式文件C。
步骤S7:则擦除该可读写分区。
步骤S8:在可读写分区中新建该字段并把标准格式文件B中该字段名的参数值做为初始值赋给该字段名。
步骤S9:在运行应用程序的过程中,应用程序根据使用需要修改文件C中的信息。比如,应用程序为一个用于提供用户修改用户名和密码的应用程序,其根据用户输入的用户名和密码,在内存2中修改文件C中字段名分别为“用户名”和“密码”的对应参数值。修改后的字段名的参数值需要写到可读写分区中。
步骤S10:操作可读写分区是否成功,若是,转入步骤S11,否则转入步骤S12。
步骤S11:根据修改的操作数据的字段名来查找可读写分区的对应的字段名,并将该字段名的参数值按标准格式文件C修改。
步骤S12:擦除可读写分区。
步骤S13:在刚擦除的可读写分区中创建修改的操作数据的字段,并把新的操作数据赋给这个字段。
由于本发明将需要修改的数据与不需要修改的数据分别以不同文件方式保存,在Flash存储器仅仅将保存需要修改的数据的可读写分区设置为可读可写的,其他分区均设置为只读的。每次启动嵌入式设备时,从可读写分区读取操作数据在内存中更新标准格式文件B而形成应用程序可以使用的操作文件;而当应用程序在运行过程中修改了标准格式文件B时,仅仅需要将修改的信息更新至可读写分区。这样,可以保证嵌入式设备中的文件系统不被频繁的写文件而破坏掉,即使写操作时破坏了可读写分区,但可读写分区的信息可以在下次使用时根据内存中保存信息再生,而无需修复可读写分区。因此,本发明保证了文件系统的不会被破坏,提高了嵌入式设备的文件安全性能。

Claims (8)

1.一种嵌入式系统的文件操作方法,其特征在于,包括步骤:
将嵌入式系统中需要进行读写的操作数据存放在Flash存储器的可读写分区,且将Flash存储器的其他分区设置为只读分区;
从只读分区中将第一文件复制到内存,在内存中生成第二文件;
从可读写分区读取操作数据,以该操作数据更新第二文件;
由应用程序的应用需要修改第二文件中的数据,以修改后的第二文件对可读写分区中操作数据进行对应更新处理。
2.根据权利要求1所述嵌入式系统的文件操作方法,其特征在于,还包括步骤,监控对可读写分区进行读写操作是否正常的,若不正常,则:
a、擦除可读写分区的信息;
b、在可读写分区中新建需要进行读写的操作数据的各个字段名,且各个字段名的参数值取初始值或默认值;
c、根据内存中修改后的第二文件中各个字段名的参数值对可读写分区中操作数据包含的各个字段名的参数值进行对应更新处理
3.根据权利要求1所述嵌入式系统的文件操作方法,其特征在于,对可读写分区的操作数据进行对应更新处理的步骤包括:
根据第二文件中被修改参数值的字段名,在可读写分区的操作数据中查找对应的字段名;
若找到该字段名,则将该字段名的参数值替换为第二文件中相应字段名的参数值;
若未找到该字段名,则在可读写分区中先新建字段名,且将该新建的字段名的参数值替换为第二文件中相应字段名的参数值。
4.根据权利要求1所述嵌入式系统的文件操作方法,其特征在于,第一文件包括多个标准格式文件,每个标准格式文件是将一个或多个需要进行读写操作的文件按文件模板配置而成。
5.根据权利要求4所述嵌入式系统的文件操作方法,其特征在于,每个标准格式文件具有不同的文件名。
6.根据权利要求4所述嵌入式系统的文件操作方法,其特征在于,包含在同一个标准格式文件中的任意两个字段名均不相同。
7.根据权利要求1所述嵌入式系统的文件操作方法,其特征在于,操作数据以字符串格式存储在可读写分区中。
8.根据权利要求1所述嵌入式系统的文件操作方法,其特征在于,操作数据以数据文件格式存储在可读写分区中。
CN2009101887401A 2009-12-04 2009-12-04 嵌入式系统的文件操作方法 Expired - Fee Related CN101710373B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009101887401A CN101710373B (zh) 2009-12-04 2009-12-04 嵌入式系统的文件操作方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009101887401A CN101710373B (zh) 2009-12-04 2009-12-04 嵌入式系统的文件操作方法

Publications (2)

Publication Number Publication Date
CN101710373A CN101710373A (zh) 2010-05-19
CN101710373B true CN101710373B (zh) 2013-10-09

Family

ID=42403159

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009101887401A Expired - Fee Related CN101710373B (zh) 2009-12-04 2009-12-04 嵌入式系统的文件操作方法

Country Status (1)

Country Link
CN (1) CN101710373B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102375760B (zh) * 2010-08-24 2016-01-20 中兴通讯股份有限公司 嵌入式系统及其中的文件系统的倒换方法
CN101930466B (zh) * 2010-08-31 2012-08-15 北京捷通华声语音技术有限公司 跨平台内存文件的管理方法及管理系统
CN102693283B (zh) * 2012-05-07 2015-10-28 深圳市共进电子股份有限公司 一种嵌入式系统的数据分区存储方法及系统引导启动方法
CN104239080B (zh) * 2013-06-17 2017-11-17 华为技术有限公司 异构系统程序启动方法和装置
CN104468340A (zh) * 2013-11-08 2015-03-25 成都万创科技有限责任公司 利用计算机程序控制物联网网关设备运行的方法
CN105740736A (zh) * 2014-12-12 2016-07-06 北京元心科技有限公司 实现文件系统安全操作的方法和装置
CN109496301A (zh) * 2017-05-19 2019-03-19 深圳配天智能技术研究院有限公司 嵌入式系统中管理文件的方法、嵌入式设备及其存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101170435A (zh) * 2007-09-20 2008-04-30 中兴通讯股份有限公司 一种解决非对称数字用户线调制解调器软件丢失的方法
CN101477482A (zh) * 2008-10-14 2009-07-08 深圳市共进电子有限公司 一种嵌入式Linux系统中的断电时恢复闪存数据的方法
CN101512485A (zh) * 2006-09-29 2009-08-19 诺基亚公司 用于作为后台任务更新固件的方法和装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6961833B2 (en) * 2003-01-24 2005-11-01 Kwok-Yan Leung Method and apparatus for protecting data in computer system in the event of unauthorized data modification
KR100652506B1 (ko) * 2004-09-24 2006-12-06 삼성전자주식회사 시스템 운용 데이터 자가 복구 장치 및 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101512485A (zh) * 2006-09-29 2009-08-19 诺基亚公司 用于作为后台任务更新固件的方法和装置
CN101170435A (zh) * 2007-09-20 2008-04-30 中兴通讯股份有限公司 一种解决非对称数字用户线调制解调器软件丢失的方法
CN101477482A (zh) * 2008-10-14 2009-07-08 深圳市共进电子有限公司 一种嵌入式Linux系统中的断电时恢复闪存数据的方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
一种嵌入式Linux下混合文件系统的实现技术;韦安;《计算机工程》;20070731;第33卷(第14期);57-58,61页 *
韦安.一种嵌入式Linux下混合文件系统的实现技术.《计算机工程》.2007,第33卷(第14期),57-58,61页.

Also Published As

Publication number Publication date
CN101710373A (zh) 2010-05-19

Similar Documents

Publication Publication Date Title
CN101710373B (zh) 嵌入式系统的文件操作方法
US5778389A (en) Method and system for synchronizing computer file directories
RU2483349C2 (ru) Поэтапная, облегченная система резервного копирования
US7334157B1 (en) Restore of data to a computer system having different hardware
CN102142024B (zh) 在分布式数据库中使用递增捕捉来进行逻辑数据备份和回退
US6851073B1 (en) Extensible system recovery architecture
US7913044B1 (en) Efficient incremental backups using a change database
US7509544B2 (en) Data repair and synchronization method of dual flash read only memory
US20080126446A1 (en) Systems and methods for backing up user settings
US9846621B1 (en) Disaster recovery—multiple restore options and automatic management of restored computing devices
CN107463467B (zh) 一种可快速还原虚拟化平台的方法及系统
CN101996109A (zh) 计算机系统及其控制方法和存储计算机程序的记录介质
US20110099150A1 (en) Method for a cloning process to enable cloning a larger System drive to a smaller system
US11176089B2 (en) Systems and methods for implementing dynamic file systems
US10564894B2 (en) Free space pass-through
CN100504787C (zh) 一种软件安装的虚拟执行方法及系统
US11620136B2 (en) Space snapshots
JP2003280963A (ja) 文書管理システム、復旧方法、復旧を実行させるためのプログラム、該プログラムを記録した記録媒体
JP2010225109A (ja) 仮想アプライアンスサーバ管理方法及びシステム、並びに仮想アプライアンスサーバ管理システム用プログラム、及びそれを格納した仮想アプライアンスサーバ管理システム用記録媒体
JP4086600B2 (ja) ロールバック可能fatファイルシステム及びプログラム
JP2016162465A (ja) 不揮発性記憶デバイス及び不揮発性記憶デバイスの処理方法
JP4066406B2 (ja) ファイルシステム管理方式、管理方法及び管理プログラム並びに記憶媒体
JP4937862B2 (ja) パーソナルコンピュータのデータ管理システム
JP7087087B2 (ja) オペレーティングシステムをコンピュータ可読媒体上に記憶するためのbiosコード
JP6644427B2 (ja) Fatファイルシステム及びそのプログラム

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
C56 Change in the name or address of the patentee

Owner name: SHENZHEN SKYWORTH DIGITAL TECHNOLOGY CO., LTD.

Free format text: FORMER NAME: SKY-WORTH DIGITAL TECHNOLOGY CO., LTD.;SHENZHEN CITY

CP01 Change in the name or title of a patent holder

Address after: 518057 Guangdong city of Shenzhen province Nanshan District Gao Xin Road SKYWORTH building A14

Patentee after: Shenzhen Skyworth Digital Technology Co., Ltd.

Address before: 518057 Guangdong city of Shenzhen province Nanshan District Gao Xin Road SKYWORTH building A14

Patentee before: Shenzhen Skyworth Digital Technology Co., Ltd.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20131009

Termination date: 20191204