CN108959517B - 文件管理方法、装置及电子设备 - Google Patents

文件管理方法、装置及电子设备 Download PDF

Info

Publication number
CN108959517B
CN108959517B CN201810687603.1A CN201810687603A CN108959517B CN 108959517 B CN108959517 B CN 108959517B CN 201810687603 A CN201810687603 A CN 201810687603A CN 108959517 B CN108959517 B CN 108959517B
Authority
CN
China
Prior art keywords
file
external memory
blocks
equal
unit
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.)
Active
Application number
CN201810687603.1A
Other languages
English (en)
Other versions
CN108959517A (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.)
Henan Thinker Track Traffic Technology Research Institute
Original Assignee
Henan Thinker Track Traffic Technology Research Institute
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 Henan Thinker Track Traffic Technology Research Institute filed Critical Henan Thinker Track Traffic Technology Research Institute
Priority to CN201810687603.1A priority Critical patent/CN108959517B/zh
Publication of CN108959517A publication Critical patent/CN108959517A/zh
Application granted granted Critical
Publication of CN108959517B publication Critical patent/CN108959517B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket

Abstract

本发明提供一种文件管理方法、装置及电子设备,涉及计算机数据处理技术领域。该方法包括:将所述可擦除块划分为多个连续的逻辑块;在所述外部存储器中构建在所述外部存储器中可执行的并且可读写的管理单元;基于所述管理单元,将接收的待处理文件写入所述多个连续的逻辑块。本方案通过管理单元,可使得存储在外部存储器中的待处理文件在存储位置可执行,可读写,而无需加载到内存中执行,有助于提高文件执行的实时性及检索效率。

Description

文件管理方法、装置及电子设备
技术领域
本发明涉及计算机文件处理技术领域,具体而言,涉及一种文件管理方法、装置及电子设备。
背景技术
在嵌入式系统中,可执行文件一般是加载到内存中运行。加载到内存中运行的方式,存在一个执行代码拷贝过程,如果是段页式的内存管理机制,在执行中会存在页载入和页切换,降低实时性,运行管理也较为复杂。如果不用段页式内存管理,则需要一次把执行文件全部加载到内存中,要求内存量至少能一次装入全部执行文件,若内存的剩余容量不足以容纳全部执行文件,便无法对文件执行相应操作。
发明内容
为了克服上述现有技术中的不足,本发明提供一种文件管理方法、装置及电子设备。
为了实现上述目的,本发明实施例所提供的技术方案如下所示:
第一方面,本发明实施例提供一种文件管理方法,应用于外部存储器,所述外部存储器包括多个可擦除块,所述方法包括:
将所述可擦除块划分为多个连续的逻辑块;
在所述外部存储器中构建在所述外部存储器中可执行的并且可读写的管理单元;
基于所述管理单元,将接收的待处理文件写入所述多个连续的逻辑块。
可选地,上述将接收的待处理文件写入所述多个连续的逻辑块之前,所述方法还包括:
判断所述外部存储器空闲的逻辑块的第一总容量是否大于或等于所述待处理文件的数据容量;
在所述第一总容量大于或等于所述数据容量时,判断所述外部存储器是否存在第二总容量大于或等于所述数据容量的多个连续且空闲的逻辑块,其中,所述第二总容量小于或等于所述第一总容量;
当不存在所述第二总容量大于或等于所述数据容量的多个连续且空闲的逻辑块时,将总容量大于或等于所述数据容量的各空置逻辑块的存储地址进行更改为连续的存储地址,使得更改后的多个空置的逻辑块为连续的且其总容量大于或等于所述数据容量,其中,更改后的多个空置的逻辑块用于存储所述待处理文件。
可选地,在所述第一总容量小于或等于所述数据容量时,所述方法还包括:
对至少部分非空闲的逻辑块执行擦除操作,使得在执行擦除后空闲的逻辑块的总容量大于或等于所述数据容量。
可选地,上述将接收的待处理文件写入所述多个连续的逻辑块之后,所述方法还包括:
判断所述外部存储器中是否存在与所述待处理文件的预设标识相同的历史文件;
当存在所述历史文件时,对所述历史文件执行擦除操作。
可选地,上述待处理文件包括文件头块,所述将接收的待处理文件写入所述多个连续的逻辑块,包括:
将所述文件头块写入所述多个连续的逻辑块中的起始位置的逻辑块中,并将所述待处理文件中除去所述文件头块外的其他文件依次连续写入所述起始位置的逻辑块之后的逻辑块中。
可选地,上述外部存储器包括闪存存储模块。
第二方面,本发明实施例提供一种文件管理装置,应用于外部存储器,所述外部存储器包括多个可擦除块,所述装置包括:
划分单元,用于将所述可擦除块划分为多个连续的逻辑块;
构建单元,用于在所述外部存储器中构建在所述外部存储器中可执行的并且可读写的管理单元;
写入单元,用于基于所述管理单元,将接收的待处理文件写入所述多个连续的逻辑块。
可选地,上述装置还包括判断单元及地址更改单元,在所述写入单元将接收的待处理文件写入所述多个连续的逻辑块之前,所述判断单元用于:
判断所述外部存储器空闲的逻辑块的第一总容量是否大于或等于所述待处理文件的数据容量;
在所述第一总容量大于或等于所述数据容量时,判断所述外部存储器是否存在第二总容量大于或等于所述数据容量的多个连续且空闲的逻辑块,其中,所述第二总容量小于或等于所述第一总容量;
当不存在所述第二总容量大于或等于所述数据容量的多个连续且空闲的逻辑块时,所述地址更改单元用于将总容量大于或等于所述数据容量的各空置逻辑块的存储地址进行更改为连续的存储地址,使得更改后的多个空置的逻辑块为连续的且其总容量大于或等于所述数据容量,其中,更改后的多个空置的逻辑块用于存储所述待处理文件。
可选地,上述装置还包括判断单元及擦除单元,在所述写入单元将接收的待处理文件写入所述多个连续的逻辑块之后,所述判断单元用于判断所述外部存储器中是否存在与所述待处理文件的预设标识相同的历史文件;
当存在所述历史文件时,所述擦除单元用于对所述历史文件执行擦除操作。
第三方面,本发明实施例提供一种电子设备,应用于外部存储器,所述外部存储器包括多个可擦除块,包括:
存储单元;
处理单元;及
文件管理装置,包括一个或多个存储于所述存储单元中并由所述处理单元执行的软件功能模块,所述文件管理装置包括:
划分单元,用于将所述可擦除块划分为多个连续的逻辑块;
构建单元,用于在所述外部存储器中构建在所述外部存储器中可执行的并且可读写的管理单元;
写入单元,用于基于所述管理单元,将接收的待处理文件写入所述多个连续的逻辑块。
相对于现有技术而言,本发明提供的文件管理方法、装置及电子设备至少具有以下有益效果:本发明提供的方法应用于外部存储器,所述外部存储器包括多个可擦除块。该方法包括:将所述可擦除块划分为多个连续的逻辑块;在所述外部存储器中构建在所述外部存储器中可执行的并且可读写的管理单元;基于所述管理单元,将接收的待处理文件写入所述多个连续的逻辑块。本方案通过管理单元,可使得存储在外部存储器中的待处理文件在存储位置可执行,可读写,而无需加载到内存中执行,有助于提高文件执行的实时性及检索效率。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举本发明实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍。应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例提供的电子设备的方框示意图。
图2为本发明实施例提供的文件管理方法的流程示意图。
图3为本发明实施例提供的外部存储器的逻辑块分布示意图。
图4为本发明实施例提供的文件管理装置的方框示意图。
图标:10-电子设备;11-处理单元;12-通信单元;13-存储单元;100-文件管理装置;110-划分单元;120-构建单元;130-写入单元。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。此外,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
下面结合附图,对本发明的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
请参照图1,图1为本发明实施例提供的电子设备10的方框示意图。本发明提供的电子设备10可以用于执行下述的文件管理方法的各步骤,使得文件在外部存储器(ROM)中便可被执行,可读写,而无需将文件加载到内存中执行。即,文件在存储位置便可实现运行,有助于提高文件运行或执行的实时性。
在本实施例中,电子设备10可以是,但不限于,智能手机、个人电脑(personalcomputer,PC)、平板电脑、个人数字助理(personal digital assistant,PDA)、移动上网设备(mobile Internet device,MID)等。
在本实施例中,电子设备10可以包括处理单元11、通信单元12、存储单元13以及文件管理装置100,处理单元11、通信单元12、存储单元13以及文件管理装置100各个元件之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。
处理单元11可以是中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。
通信单元12用于通过网络建立电子设备10与其他嵌入式系统(Embedded System)或设备的通信连接,并通过网络收发数据。网络可以是,但不限于,有线网络或无线网络。
存储单元13可以是,但不限于,随机存取存储器,只读存储器,可编程只读存储器,可擦除可编程只读存储器,电可擦除可编程只读存储器等。在本实施例中,存储单元13可以用于存储待处理文件。当然,存储单元13还可以用于存储程序,处理单元11在接收到执行指令后,执行该程序。
进一步地,文件管理装置100包括至少一个可以软件或固件(firmware)的形式存储于存储单元13中或固化在电子设备10操作系统(operating system,OS)中的软件功能模块。处理单元11用于执行存储单元13中存储的可执行模块,例如文件管理装置100所包括的软件功能模块及计算机程序等。
可以理解的是,图1所示的结构仅为电子设备10的一种结构示意图,电子设备10还可以包括比图1所示更多或更少的组件。图1中所示的各组件可以采用硬件、软件或其组合实现。
请参照图2,为本发明实施例提供的文件管理方法的流程示意图。本发明提供的文件管理方法可以应用于外部存储器,并由上述的电子设备10执行。其中,外部存储器可以为闪存存储模块(如FLASH存储芯片),该存储器可以包括多个可擦除块。
下面将对图2中所示的文件管理方法的各步骤进行详细阐述,在本实施例中,文件管理方法可以包括以下步骤:
步骤S210,将可擦除块划分为多个连续的逻辑块。
在本实施例中,电子设备10中的处理单元11可以将可擦除块划分为多个连续的逻辑块。被划分的可擦除逻辑块可以是外部存储器中的一部分可擦除块,也可以是外部存储器中的所有可擦除块。其中,外部存储器可以为电子设备10中的存储器,也可以是外接的嵌入式系统中的存储器。可擦除块可理解为外部存储器中的部分存储空间,逻辑块为比可擦除块容量更小的存储模块。
可理解地,若利用一个或多个逻辑块存储数据,有助于减少存储空间的浪费,提升外部存储器存储空间的利用率。
步骤S220,在外部存储器中构建在外部存储器中可执行的并且可读写的管理单元。
在本实施例中,管理单元可以用于管理逻辑块的存储地址,以及对逻辑块执行读取、写入、擦除等操作。例如,若逻辑块存储有可执行文件,管理单元可以从逻辑块中读取该可执行文件,并执行该可执行文件。
可理解地,管理单元可以为XIPFS文件系统中的一部分(XIPFS可理解为“在位置可执行的文件系统”,即eXecute In Place File System),可以用于实现可执行文件在存储位置运行的操作步骤。
步骤S230,基于管理单元,将接收的待处理文件写入多个连续的逻辑块。
在本实施例中,待处理文件包括文件头块及文件数据块。步骤S230可以包括:将文件头块写入多个连续的逻辑块中的起始位置的逻辑块中,并将待处理文件中除去文件头块外的其他文件(文件数据块)依次连续写入起始位置的逻辑块之后的逻辑块中。
请参照图3,为本发明实施例提供的外部存储器的逻辑块分布示意图。其中,图3所示的外部存储器为FLASH存储器。在本实施例中,若有待处理文件需要写入外部存储器中,管理单元需要预先知道该文件的大小,根据文件大小在FLASH的删除逻辑块和空闲逻辑块中查找能连续保存此文件的逻辑块,如果找到,则进行文件的写入操作,如果找不到连续的可用空间,并且可用的空闲逻辑块的总容量可以存放该文件,则进行碎片整理,也就是将空闲逻辑块的存储地址重新分配,使得多个散乱的空闲逻辑块为连续的逻辑块。另外,在对外部存储器新建文件的操作与写入文件的操作相类似,这里不再赘述。
可选地,在步骤S230之前,方法还包括:判断外部存储器空闲的逻辑块的第一总容量是否大于或等于待处理文件的数据容量;在第一总容量大于或等于数据容量时,判断外部存储器是否存在第二总容量大于或等于数据容量的多个连续且空闲的逻辑块,其中,第二总容量小于或等于第一总容量;当不存在第二总容量大于或等于数据容量的多个连续且空闲的逻辑块时,将总容量大于或等于数据容量的各空置逻辑块的存储地址进行更改为连续的存储地址,使得更改后的多个空置的逻辑块为连续的且其总容量大于或等于数据容量,其中,更改后的多个空置的逻辑块用于存储待处理文件。
请再次参照图3,外部存储器中设置有交换逻辑块,用于在变更存储地址(或称为碎片整理)时,暂存被交换的逻辑块存储的数据。可理解地,在进行碎片整理时,可以将散乱的非空闲逻辑块中存储的数据暂时存储于交换逻辑块中;然后对该非空闲逻辑块执行擦除操作,使得擦除后的该非空闲逻辑块作为新的空闲逻辑块;再然后,可将交换逻辑块中存储的数据写入到集中存储有数据的逻辑块相邻的空闲逻辑块中,从而使得没有存储数据的逻辑块为连续的。
当找到能存放文件的连续逻辑块后,方法还可以包括检查空闲空间(逻辑块)是否为空置的(或称为干净),如果不干净,需要对该空闲空间的擦除操作,然后写入文件。
可选地,在第一总容量小于或等于数据容量时,方法还包括:对至少部分非空闲的逻辑块执行擦除操作,使得在执行擦除后空闲的逻辑块的总容量大于或等于数据容量。
可选地,在步骤S230之后,方法还包括:判断外部存储器中是否存在与待处理文件的预设标识相同的历史文件;当存在历史文件时,对历史文件执行擦除操作。其中,预设标识可以为标识码,也可以为文件名称,可以根据实际情况进行设置,这里不作具体限定。
基于上述设计,本方案能充分利用外部存储器内的存储空间,支持类似FAT文件系统的管理,空间利用效率高,能在线更新单个文件,自动整理空间碎片,且程序文件能在存储位置运行。
请参照图4,为本发明实施例提供的文件管理装置100的方框示意图。本发明实施例提供的文件管理装置100可以应用于上述的外部存储器,用于实现上述的文件管理方法的各步骤。在本实施例中,文件管理装置100可以包括划分单元110、构建单元120及写入单元130。
划分单元110,用于将可擦除块划分为多个连续的逻辑块。
构建单元120,用于在外部存储器中构建在外部存储器中可执行的并且可读写的管理单元。
写入单元130,用于基于管理单元,将接收的待处理文件写入多个连续的逻辑块。
可选地,装置还包括判断单元及地址更改单元,在写入单元130将接收的待处理文件写入多个连续的逻辑块之前,判断单元用于:判断外部存储器空闲的逻辑块的第一总容量是否大于或等于待处理文件的数据容量;在第一总容量大于或等于数据容量时,判断外部存储器是否存在第二总容量大于或等于数据容量的多个连续且空闲的逻辑块,其中,第二总容量小于或等于第一总容量;当不存在第二总容量大于或等于数据容量的多个连续且空闲的逻辑块时,地址更改单元用于将总容量大于或等于数据容量的各空置逻辑块的存储地址进行更改为连续的存储地址,使得更改后的多个空置的逻辑块为连续的且其总容量大于或等于数据容量,其中,更改后的多个空置的逻辑块用于存储待处理文件。
可选地,装置还包括擦除单元,在写入单元130将接收的待处理文件写入多个连续的逻辑块之后,判断单元用于判断外部存储器中是否存在与待处理文件的预设标识相同的历史文件;当存在历史文件时,擦除单元用于对历史文件执行擦除操作。
可选地,在第一总容量小于或等于数据容量时,擦除单元还可以用于:对至少部分非空闲的逻辑块执行擦除操作,使得在执行擦除后空闲的逻辑块的总容量大于或等于数据容量。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的文件管理装置100的具体工作过程,可以参照前述方法中各步骤的对应过程,再次不再过多赘述。
在本实施例中,电子设备10中的文件管理装置100包括一个或多个存储于存储单元13中并由处理单元11执行的软件功能模块。例如,文件管理装置100可以包括上述的划分单元110、构建单元120及写入单元130,可以用于实现上述文件管理方法的各步骤。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现,基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施场景的方法。
综上所述,本发明提供一种文件管理方法、装置及电子设备。该方法包括:将所述可擦除块划分为多个连续的逻辑块;在所述外部存储器中构建在所述外部存储器中可执行的并且可读写的管理单元;基于所述管理单元,将接收的待处理文件写入所述多个连续的逻辑块。本方案通过管理单元,可使得存储在外部存储器中的待处理文件在存储位置可执行,可读写,而无需加载到内存中执行,有助于提高文件执行的实时性及检索效率。
在本发明所提供的实施例中,应该理解到,所揭露的装置、系统和方法,也可以通过其它的方式实现。以上所描述的装置、系统和方法实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
可以替换的,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (7)

1.一种文件管理方法,其特征在于,应用于外部存储器,所述外部存储器为闪存存储模块,所述外部存储器包括多个可擦除块,所述外部存储器还包括交换逻辑块,所述方法包括:
将所述可擦除块划分为多个连续的逻辑块;
在所述外部存储器中构建在所述外部存储器中可执行并且可读写相应文件的管理单元;
判断所述外部存储器空闲的逻辑块的第一总容量是否大于或等于待处理文件的数据容量;
在所述第一总容量大于或等于所述数据容量时,判断所述外部存储器是否存在第二总容量大于或等于所述数据容量的多个连续且空闲的逻辑块,其中,所述第二总容量小于或等于所述第一总容量;
当不存在所述第二总容量大于或等于所述数据容量的多个连续且空闲的逻辑块时,将总容量大于或等于所述数据容量的各空闲逻辑块的存储地址进行更改为连续的存储地址,包括:将散乱的非空闲的逻辑块中存储的数据存储于所述交换逻辑块中,并对所述非空闲的逻辑块执行擦除操作得到新的空闲逻辑块,使得更改后的多个空闲的逻辑块为连续的且其总容量大于或等于所述数据容量,其中,更改后的多个空闲的逻辑块用于存储所述待处理文件;
基于所述管理单元,将接收的待处理文件写入所述多个连续的逻辑块,并将所述交换逻辑块中的数据写入与集中存储有数据的逻辑块相邻的空闲逻辑块,从而使得没有存储数据的逻辑块为连续的。
2.根据权利要求1所述的方法,其特征在于,在所述第一总容量小于或等于所述数据容量时,所述方法还包括:
对至少部分非空闲的逻辑块执行擦除操作,使得在执行擦除后空闲的逻辑块的总容量大于或等于所述数据容量。
3.根据权利要求1所述的方法,其特征在于,所述将接收的待处理文件写入所述多个连续的逻辑块之后,所述方法还包括:
判断所述外部存储器中是否存在与所述待处理文件的预设标识相同的历史文件;
当存在所述历史文件时,对所述历史文件执行擦除操作。
4.根据权利要求1所述的方法,其特征在于,所述待处理文件包括文件头块,所述将接收的待处理文件写入所述多个连续的逻辑块,包括:
将所述文件头块写入所述多个连续的逻辑块中的起始位置的逻辑块中,并将所述待处理文件中除去所述文件头块外的其他文件依次连续写入所述起始位置的逻辑块之后的逻辑块中。
5.一种文件管理装置,其特征在于,应用于外部存储器,所述外部存储器为闪存存储模块,所述外部存储器包括多个可擦除块,所述外部存储器还包括交换逻辑块,所述装置包括:
划分单元,用于将所述可擦除块划分为多个连续的逻辑块;
构建单元,用于在所述外部存储器中构建在所述外部存储器中可执行并且可读写相应文件的管理单元;
判断单元,用于判断所述外部存储器空闲的逻辑块的第一总容量是否大于或等于待处理文件的数据容量;
所述判断单元,还用于在所述第一总容量大于或等于所述数据容量时,判断所述外部存储器是否存在第二总容量大于或等于所述数据容量的多个连续且空闲的逻辑块,其中,所述第二总容量小于或等于所述第一总容量;
地址更改单元,用于当不存在所述第二总容量大于或等于所述数据容量的多个连续且空闲的逻辑块时,将总容量大于或等于所述数据容量的各空闲逻辑块的存储地址进行更改为连续的存储地址,包括:将散乱的非空闲的逻辑块中存储的数据存储于所述交换逻辑块中,并对所述非空闲的逻辑块执行擦除操作得到新的空闲逻辑块,使得更改后的多个空闲的逻辑块为连续的且其总容量大于或等于所述数据容量,其中,更改后的多个空闲的逻辑块用于存储所述待处理文件;
写入单元,用于基于所述管理单元,将接收的待处理文件写入所述多个连续的逻辑块,并将所述交换逻辑块中的数据写入与集中存储有数据的逻辑块相邻的空闲逻辑块,从而使得没有存储数据的逻辑块为连续的。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括判断单元及擦除单元,在所述写入单元将接收的待处理文件写入所述多个连续的逻辑块之后,所述判断单元用于判断所述外部存储器中是否存在与所述待处理文件的预设标识相同的历史文件;
当存在所述历史文件时,所述擦除单元用于对所述历史文件执行擦除操作。
7.一种电子设备,其特征在于,应用于外部存储器,所述外部存储器为闪存存储模块,所述外部存储器包括多个可擦除块,所述外部存储器还包括交换逻辑块,包括:
存储单元;
处理单元;及
文件管理装置,包括一个或多个存储于所述存储单元中并由所述处理单元执行的软件功能模块,所述文件管理装置包括:
划分单元,用于将所述可擦除块划分为多个连续的逻辑块;
构建单元,用于在所述外部存储器中构建在所述外部存储器中可执行并且可读写相应文件的管理单元;
判断单元,用于判断所述外部存储器空闲的逻辑块的第一总容量是否大于或等于待处理文件的数据容量;
所述判断单元,还用于在所述第一总容量大于或等于所述数据容量时,判断所述外部存储器是否存在第二总容量大于或等于所述数据容量的多个连续且空闲的逻辑块,其中,所述第二总容量小于或等于所述第一总容量;
地址更改单元,用于当不存在所述第二总容量大于或等于所述数据容量的多个连续且空闲的逻辑块时,将总容量大于或等于所述数据容量的各空闲逻辑块的存储地址进行更改为连续的存储地址,包括:将散乱的非空闲的逻辑块中存储的数据存储于所述交换逻辑块中,并对所述非空闲的逻辑块执行擦除操作得到新的空闲逻辑块,使得更改后的多个空闲的逻辑块为连续的且其总容量大于或等于所述数据容量,其中,更改后的多个空闲的逻辑块用于存储所述待处理文件;
写入单元,用于基于所述管理单元,将接收的待处理文件写入所述多个连续的逻辑块,并将所述交换逻辑块中的数据写入与集中存储有数据的逻辑块相邻的空闲逻辑块,从而使得没有存储数据的逻辑块为连续的。
CN201810687603.1A 2018-06-28 2018-06-28 文件管理方法、装置及电子设备 Active CN108959517B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810687603.1A CN108959517B (zh) 2018-06-28 2018-06-28 文件管理方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810687603.1A CN108959517B (zh) 2018-06-28 2018-06-28 文件管理方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN108959517A CN108959517A (zh) 2018-12-07
CN108959517B true CN108959517B (zh) 2021-06-01

Family

ID=64487485

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810687603.1A Active CN108959517B (zh) 2018-06-28 2018-06-28 文件管理方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN108959517B (zh)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1308836C (zh) * 2003-05-27 2007-04-04 智邦科技股份有限公司 数据储存的方法及系统
US20060184719A1 (en) * 2005-02-16 2006-08-17 Sinclair Alan W Direct data file storage implementation techniques in flash memories
CN101169760B (zh) * 2006-10-26 2011-09-28 北京华旗资讯数码科技有限公司 电子硬盘的存储空间的管理方法
CN103246610B (zh) * 2012-02-14 2016-06-15 中国科学院上海微系统与信息技术研究所 基于单类型存储器的嵌入式系统的动态存储管理方法
CN104834477B (zh) * 2014-02-11 2019-11-26 腾讯科技(深圳)有限公司 基于闪存的数据写入方法和装置
CN107870739B (zh) * 2017-03-15 2021-03-19 珠海市杰理科技股份有限公司 磁盘文件存储方法和系统

Also Published As

Publication number Publication date
CN108959517A (zh) 2018-12-07

Similar Documents

Publication Publication Date Title
US11281377B2 (en) Method and apparatus for managing storage system
JP5425286B2 (ja) データ処理システムのメモリ使用状況を追跡する方法
US11080143B2 (en) Systems and processes for data backup and recovery
CN110096227B (zh) 数据存储方法、数据处理方法、装置、电子设备及计算机可读介质
EP3260993A1 (en) File operation method and device
CN108733306B (zh) 一种文件合并方法及装置
CN111324303B (zh) Ssd垃圾回收方法、装置、计算机设备及存储介质
US10922276B2 (en) Online file system check
CN107329704B (zh) 一种缓存镜像方法及控制器
CN109804359A (zh) 用于将数据回写到存储设备的系统和方法
CN111309267B (zh) 存储空间的分配方法、装置、存储设备及存储介质
CN110908927A (zh) 数据储存装置及其删除命名空间的方法
CN110673789B (zh) 固态硬盘的元数据存储管理方法、装置、设备及存储介质
US11237761B2 (en) Management of multiple physical function nonvolatile memory devices
CN112835528A (zh) 脏页刷新方法和装置、电子设备和存储介质
US20060036663A1 (en) Method and apparatus for effective data management of files
CN105988875B (zh) 一种运行进程的方法及装置
CN112463058B (zh) 一种碎片数据整理方法、装置及存储节点
CN108205559B (zh) 一种数据管理方法及其设备
CN112965661A (zh) 数据存储方法、装置、设备及存储介质
CN108959517B (zh) 文件管理方法、装置及电子设备
CN112269665B (zh) 内存的处理方法和装置、电子设备和存储介质
US11226738B2 (en) Electronic device and data compression method thereof
CN115543859A (zh) 多分区ssd的磨损均衡优化方法、装置、设备及介质
CN109002265B (zh) 一种数据处理的方法以及相关装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant