CN113849494A - 一种数据更新方法及装置 - Google Patents

一种数据更新方法及装置 Download PDF

Info

Publication number
CN113849494A
CN113849494A CN202111154928.1A CN202111154928A CN113849494A CN 113849494 A CN113849494 A CN 113849494A CN 202111154928 A CN202111154928 A CN 202111154928A CN 113849494 A CN113849494 A CN 113849494A
Authority
CN
China
Prior art keywords
data
data block
updated
bios
output system
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.)
Pending
Application number
CN202111154928.1A
Other languages
English (en)
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.)
Lenovo Beijing Ltd
Original Assignee
Lenovo Beijing 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 Lenovo Beijing Ltd filed Critical Lenovo Beijing Ltd
Priority to CN202111154928.1A priority Critical patent/CN113849494A/zh
Publication of CN113849494A publication Critical patent/CN113849494A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/215Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/219Managing data history or versioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2474Sequence data queries, e.g. querying versioned data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Quality & Reliability (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Stored Programmes (AREA)

Abstract

本申请提供一种数据更新方法,包括:比较基本输入输出系统的当前版本数据与新版本数据;基于比较结果确定所述基本输入输出系统中的待更新数据区块;如果所述基本输入输出系统所在的存储区域中具有空闲区域,在不删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据的情况下,将所述待更新数据区块的新版本数据写入所述空闲区域。同时,本申请还提供一种电子设备。

Description

一种数据更新方法及装置
技术领域
本申请涉及对数据更新技术,尤其涉及一种数据更新方法及装置。
背景技术
目前用户在更新基本输入输出系统(BIOS,Basic Input Output System)时,需要先擦除闪存中存储的原有数据,再写入更新数据,但往往数据擦除过程花费的时间远大于更新数据写入的时间,导致BIOS更新速度较慢。
发明内容
有鉴于此,为解决上述技术问题的一个或多个方面,本申请的技术方案是这样实现的:
根据本申请的一方面,提供一种数据更新方法,包括:
比较基本输入输出系统的当前版本数据与新版本数据;
基于比较结果确定所述基本输入输出系统中的待更新数据区块;
如果所述基本输入输出系统所在的存储区域中具有空闲区域,在不删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据的情况下,将所述待更新数据区块的新版本数据写入所述空闲区域。
上述方案中,所述方法还包括:
确定所述空闲区域中写入所述新版本数据的起始地址;
在所述基本输入输出系统中标记所述起始地址。
上述方案中,在所述基本输入输出系统中标记所述起始地址,包括:
在所述基本输入输出系统中用于存储所述旧版本数据的数据区块中标记所述起始地址。
上述方案中,还包括:
如果所述基本输入输出系统在下一次更新事件后启动成功,删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据;
或者,确定所述新版本数据运行成功,删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据。
上述方案中,还包括:
在用户启动自我诊断程序时,对所述基本输入输出系统的各数据区块进行区块整理以形成连续数据区块,其中,所述各数据区块包括所述新版本数据所在的数据区块。
上述方案中,所述基本输入输出系统在下一次更新事件后启动成功之后,所述方法还包括:
将所述基本输入输出系统的的新版本数据备份存储到非易失性存储器;
删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据,包括:
如果所述基本输入输出系统的的新版本数据成功备份到非易失性存储器,删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据。
上述方案中,还包括:
如果所述待更新数据区块的新版本数据运行失败,恢复到所述待更新数据区块的旧版本数据。
根据本申请的第二方面,提供一种电子设备,包括:
比较单元,用于比较基本输入输出系统的当前版本数据与新版本数据;
确定单元,用于基于比较结果确定所述基本输入输出系统中的待更新数据区块;
写入单元,用于如果所述基本输入输出系统所在的存储区域中具有空闲区域,在不删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据的情况下,将所述待更新数据区块的新版本数据写入所述空闲区域。
根据本申请的第三方面,提供一种电子设备,该电子设备包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器;
其中,所述处理器用于运行所述计算机程序时,执行上述方法中任一项所述的方法步骤。
根据本申请的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器运行时,执行上述方法中任一项所述的方法。
本申请提供的一种数据更新方法及电子设备,通过比较基本输入输出系统的当前版本数据与新版本数据;基于比较结果确定所述基本输入输出系统中的待更新数据区块;如果所述基本输入输出系统所在的存储区域中具有空闲区域,在不删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据的情况下,将所述待更新数据区块的新版本数据写入所述空闲区域。由于本申请在更新BIOS时,将BIOS的更新数据写在BIOS所在的存储区域(闪存)的空闲区域,并不需要将BIOS中的原始数据进行擦除,所以提高了BIOS的更新速度。
附图说明
图1为本申请中数据更新方法的流程实现示意图;
图2为本申请中数据更新时数据区块的状态示意图一;
图3为本申请中数据更新时数据区块的状态示意图二;
图4为本申请中数据恢复时数据区块的状态示意图;
图5为本申请中电子设备的结构组成示意图一;
图6为本申请中电子设备的结构组成示意图二。
具体实施方式
以下结合说明书附图及具体实施例对本申请的技术方案做进一步的详细阐述。
图1为本申请中数据更新方法的流程实现示意图,如图1所示,该方法包括:
步骤101,比较基本输入输出系统的当前版本数据与新版本数据;
本申请中,该方法可以应用于电子设备,该电子设备可以是笔记本电脑、服务器、台式电脑等等。在该电子设备中设置有BIOS。当该BIOS中的固件需要更新升级时,该电子设备可以在该BIOS更新之前,先比较该BIOS的当前版本数据与新版本数据,以判断当前的BIOS版本是否是最新版本。
步骤102,基于比较结果确定所述基本输入输出系统中的待更新数据区块;
本申请中,如果比较结果表征该BIOS的当前版本数据与新版本数据相同,则确定当前BIOS的版本是更新后的最新版本,则退出BIOS更新程序。如果比较结果表征该BIOS的当前版本数据与新版本数据不同,则确定当前BIOS的版本是未更新过的旧版本,则进一步确定出该BIOS中需要更新的功能在该BIOS中对应的待更新数据区块。
这里,该BIOS中的待更新数据区块具体是表征该BIOS中待更新的某一固件的存储区块。
比如,当前BIOS待更新的固件的功能是管理外接设备的固件,则在确定出当前BIOS的版本数据是旧版本数据的情况下,进一步确定该BIOS中负载管理外接设备的固件所在数据区块。
这里,具体可以通过查找完整固件(FFS,Full Firmwares)的形式在BIOS的旧版本数据和新版本数据的对比中找到需要更新的功能在该BIOS中对应的待更新数据区块。
步骤103,如果所述基本输入输出系统所在的存储区域中具有空闲区域,在不删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据的情况下,将所述待更新数据区块的新版本数据写入所述空闲区域。
本申请中,该BIOS通常存储于电子设备的闪存中,当电子设备确定出该BIOS中的待更新数据区块后,该电子设备还可以进一步判断BIOS所在的存储区域(闪存)中是否具有空闲区域。具体地,该电子设备可以通过获取闪存的存储空间参数和BIOS的占用空间参数,通过将闪存的存储空间参数和BIOS的占用空间参数进行比较,可以确定出闪存中是否具有空闲区域。
比如,闪存的存储空间参数为地址,基于所述地址计算出占用的存储空间为1GB,BIOS的占用地址参数计算出占用地址空间是256MB,通过将闪存的存储空间1GB和BIOS的占用空间256MB进行比较,可以确定出闪存中具有768MB的空闲区域,或者通过占用地址和存储空间地址比较确定出空闲区域对应的地址。
本申请中,当电子设备确定出BIOS所在的存储区域具有空闲区域的情况下,还可以将该BIOS待更新数据区块的新版本数据写入该闪存的空闲区域,同时,并不会删除该待更新数据区块在BIOS中的旧版本数据。
由于本申请在对BIOS的固件进行更新时,并不会删除BIOS中的旧版本数据,所以可以大大提高BIOS的更新效率。
本申请中,该电子设备还可以确定该空闲区域中写入该新版本数据的起始地址,并且在BIOS中标记该起始地址。如此,可以基于BIOS中标记的该起始地址,快速查找到该新版本数据的存储位置。
进一步地,该电子设备在BIOS中标记新版本数据的起始地址时,具体可以在BIOS中用于存储该旧版本数据的数据区块中标记该起始地址。通过在旧版本数据的数据区块中标记新版本数据的起始地址,可以通过旧版本数据的存储区块快速查找到新版本数据的存储区域。
本申请中,该电子设备在BIOS更新成功后,如果该BIOS中即有旧版本数据又有新版本数据,则该电子设备启动时只将新版本数据加载到电子设备的内存中,以使电子设备启动时运行新版本数据。
具体地,该电子设备可以根据BIOS中用于存储旧版本数据的数据区块中标记的新版本数据的起始地址,只将新版本数据加载到电子设备的内存中,以使电子设备启动时只运行新版本数据,而不会运行旧版本数据。
本申请中,该电子设备还可以在该新版本数据运行成功后,将该新版本数据备份存储到非易失性存储器,以避免该新版本数据异常时对该新版本数据进行恢复。
由于本申请在单次更新BIOS时,跳过了擦除旧版本数据的流程,直接进入了新版本数据的写入流程,所以可以节约旧版本数据的擦除时间,优化了最花费时间的流程,极大的提高了BIOS的更新速度。另外,由于不擦除旧版本数据,所以用户对于BIOS更新的等待时间并不会太长,也不会误认为BIOS更新失败就强制断电,导致机器不能开机的现象,所以还提高了BIOS的稳定性。
本申请中,该电子设备还可以在该新版本数据运行成功后,删除该待更新数据区块在BIOS中的旧版本数据;或者,在将该新版本数据成功备份到非易失性存储器中后,删除该待更新数据区块在BIOS中的旧版本数据,以释放BIOS的存储空间。
本申请中,该电子设备还可以根据BIOS的下一次更新事件,删除BIOS中的旧版本数据。
具体地,该电子设备可以在BIOS的下一次更新事件完成后,如果BIOS能够启动成功,则删除该待更新数据区块在BIOS中的旧版本数据,以释放BIOS的存储空间。具体如图2所示。
图2为本申请中数据更新时数据区块的状态示意图一,其中,201为BIOS更新前的状态,202为BIOS更新后的状态。如201中所示,BIOS在更新前包括两个数据区块,分别是:数据区块(FFS)(FFS1)和数据区块(FFS)(FFS2)。假如此次对数据区块(FFS)(FFS1)作更新,如果数据区块(FFS)(FFS1)的新版本数据运行成功,则BIOS在一下次更新事件成功后可以将数据区块(FFS)(FFS1)的旧版本数据擦除。如202所示,BISO更新后包括三个数据区块,分别是旧版本的数据区块(FFS)(FFS1)(无效)、数据区块(FFS)(FFS2)和新版本的数据区块(FFS)(FFS1)。这里,旧版本的数据区块(FFS)(FFS1)加入一个(无效)标签,表征这块数据区块的旧版本数据已擦除,为无效区块。
图3为本申请中数据更新时数据区块的状态示意图二,如图3所示,301为BIOS更新前的状态,302为BIOS更新后的状态。其中,更新前BIOS中包括三个数据区块,分别是数据区块(FFS)(FFS1)、数据区块(FFS)(FFS2)和数据区块(FFS)(FFS3),假如本次更新的是数据区块(FFS)(FFS3),该电子设备可以确定BIOS中的各数据区块是否有空闲区块,如果数据区块(FFS)(FFS1)和数据区块(FFS)(FFS2)中有空闲区域,则将数据区块(FFS)(FFS3)的新版本数据写入数据区块(FFS)(FFS1)和数据区块(FFS)(FFS2)的空闲区域,同时保留数据区块(FFS)(FFS3)中的旧版本数据,并对旧版本的数据区块(FFS)(FFS3)加一(无效)标签。如此,通过将新版本数据写入数据区块的空闲区块,同时不擦除旧版本数据,可以加快BIOS的更新速度,同时还可以提高BIOS的稳定性。
这里,可以通过获取BIOS中各数据区块的占用空间参数和实际使用空间参数,通过将各数据区块的占用空间参数和实际使用空间参数作比较,确定对应的数据区块是否有空闲区域。比如,空间参数是存储地址,查看到数据区块(FFS)(FFS1)的占用地址是0FFF-3FFF,实际使用空间参数是0FFF-2FFF,通过将比较,确定出数据区块(FFS)(FFS1)3000-3FFF的地址空间为空闲区域。
本申请中,该电子设备在BIOS的下一次更新事件完成后,如果BIOS能在下一次更新事件后启动成功,还可以将BIOS对应于下一次更新事件的新版本数据备份存储到非易失性存储器,如果下一次更新事件对应的新版本数据成功备份存储到非易失性存储器,则删除该待更新数据区块在BIOS中的旧版本数据,以释放BIOS的存储空间。如此,可以在BIOS再次进行数据更新时能够方便将BIOS的新版本数据写入该释放的存储空间,避免无法BIOS新版本数据无法写入或写入失败的情况发生。
这里,下一次更新事件具体是指BIOS在本次版本的更新事件完成后的下一次新的版本更新事件。比如,BIOS在当前时间(比如2021年09月09日)对BIOS进行了一次数据更新,如果在下一个更新时间(比如2022年05月05日)又对BIOS进行了一次数据更新,则将下一个更新时间(比如2022年05月05日)对应的BIOS更新事件称为下一次更新事件。
本申请中,该电子设备还可以在删除BIOS中的旧版本数据之后,如果用户启动了自我诊断程序,对BIOS的各数据区块进行区块整理以形成连续数据区块,其中,各数据区块包括该新版本数据所在的数据区块。
比如,在对BIOS中的数据区块B作数据更新时,为了在不擦除数据区块B中的旧版本数据的情况下,写入数据区块B的新版本数据,本申请通过将数据区块B的新版本数据写在了闪存的空闲区域,所以BIOS的数据区块中会增加一个新的数据区块B1,那么在不删除BIOS中数据区块B中的旧版本数据之前,BIOS中各数据区块的排列为:数据区块A、数据区块B、数据区块C、数据区块B1。如果电子设备在下一次更新事件中再次对BIOS的数据区块B作更新,则BIOS的数据区块中会再增加一个新的数据区块B2,并且在下一次更新事件完成后,则可以将BIOS的数据区块B中的旧版本数据删除,如果电子设备将BIOS中数据区块B中的旧版本数据删除之后,数据区块B就变成了空闲区块,所以电子设备需要对BIOS中的各数据区块重新整理,以使BIOS中的各数据区块呈连续数据区块。BIOS中各数据区块在整理后的排列为:数据区块A、数据区块B1、数据区块C、数据区块B2。这样在BIOS的下一次数据更新时,就可以将更新的新版本数据写入到处于空闲态的数据区块B。
本申请中,该电子设备还可以在待更新数据区块的新版本数据运行失败的情况下,恢复到该待更新数据区块的旧版本数据,以使BIOS能够正常运行。具体如图4所示。
图4为本申请中数据恢复时数据区块的状态示意图,包括401和402,其中,401为BIOS更新前的状态,402为BIOS更新后的状态。假如本次更新的是数据区块(FFS)(FF1),当数据区块(FFS)(FF1)(新)的数据更新完成后,如果数据区块(FFS)(FF1)(新)的新版本数据运行失败,则恢复到数据区块(FFS)(FF1)(旧)的旧版本数据,以使BIOS能够正常运行。
本申请通过在BIOS的下一个更新事件成功之后擦除BIOS中的旧版本数据,可以在释放BIOS的存储空间的同时还可以提高BIOS的稳定性,保证BIOS的运行正常。
图5为本申请中电子设备的结构组成示意图一,如图5所示,该电子设备包括:
比较单元501,用于比较基本输入输出系统的当前版本数据与新版本数据;
确定单元502,用于基于比较结果确定所述基本输入输出系统中的待更新数据区块;
写入单元503,用于如果所述基本输入输出系统所在的存储区域中具有空闲区域,在不删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据的情况下,将所述待更新数据区块的新版本数据写入所述空闲区域。
这里,该电子设备具体可以电脑、移动电脑、手机、智能音箱、电视、游戏机等等。
本申请中,该电子设备还包括:标记单元504;
具体地,该确定单元501,还用于确定所述空闲区域中写入所述新版本数据的起始地址;并在确定出新版本数据的起始地址之后触发标记单元504;
标示单元504用于在所述基本输入输出系统中标记所述起始地址。
具本地,该标记单元504在所述基本输入输出系统中用于存储所述旧版本数据的数据区块中标记所述起始地址。
本申请中,该电子设备还包括:
删除单元505,用于如果所述基本输入输出系统在下一次更新事件后启动成功,删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据;或者,确定所述新版本数据运行成功,删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据。
本申请中,该电子设备还包括:
整理单元506,用于在删除单元506删除BIOS中的旧版本数据之后,如果用户启动自我诊断程序,对所述基本输入输出系统的各数据区块进行区块整理以形成连续数据区块,其中,所述各数据区块包括所述新版本数据所在的数据区块。
本申请中,该电子设备还包括:
存储单元507,用于备份存储所述基本输入输出系统的新版本数据;
这里,该存储单元507具体可以是非易失性存储器。
所述删除单元505,具体用于如果所述基本输入输出系统的新版本数据成功备份存储到存储单元507,则删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据。
本申请中,该电子设备还包括:
恢复单元508,用于如果所述待更新数据区块的新版本数据运行失败,恢复到所述待更新数据区块的旧版本数据。
需要说明的是:上述实施例提供的电子设备在对BIOS进行数据更新时,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将装置的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的电子设备与数据更新方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本申请实施例还提供了另一种电子设备,该电子设备包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,
其中,所述处理器用于运行所述计算机程序时,执行:比较基本输入输出系统的当前版本数据与新版本数据;
基于比较结果确定所述基本输入输出系统中的待更新数据区块;
如果所述基本输入输出系统所在的存储区域中具有空闲区域,在不删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据的情况下,将所述待更新数据区块的新版本数据写入所述空闲区域。
所述处理器还用于运行所述计算机程序时,执行:确定所述空闲区域中写入所述新版本数据的起始地址;在所述基本输入输出系统中标记所述起始地址。
所述处理器还用于运行所述计算机程序时,执行:在所述基本输入输出系统中用于存储所述旧版本数据的数据区块中标记所述起始地址。
所述处理器还用于运行所述计算机程序时,执行:如果所述基本输入输出系统在下一次更新事件后启动成功,删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据;或者,确定所述新版本数据运行成功,删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据。
所述处理器还用于运行所述计算机程序时,执行:在用户启动自我诊断程序时,对所述基本输入输出系统的各数据区块进行区块整理以形成连续数据区块,其中,所述各数据区块包括所述新版本数据所在的数据区块。
所述处理器还用于运行所述计算机程序时,执行:将所述基本输入输出系统的的新版本数据备份存储到非易失性存储器;如果所述基本输入输出系统的的新版本数据成功备份到非易失性存储器,删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据。
所述处理器还用于运行所述计算机程序时,执行:如果所述待更新数据区块的新版本数据运行失败,恢复到所述待更新数据区块的旧版本数据。
图6是本申请电子设备的结构示意图二,电子设备600可以是移动电话、计算机、数字广播终端、信息收发设备、游戏控制台、平板设备、医疗设备、健身设备、个人数字助理等。图6所示的电子设备600包括:至少一个处理器601、存储器602、至少一个网络接口604和用户接口603。电子设备600中的各个组件通过总线系统605耦合在一起。可理解,总线系统605用于实现这些组件之间的连接通信。总线系统605除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图6中将各种总线都标为总线系统605。
其中,用户接口603可以包括显示器、键盘、鼠标、轨迹球、点击轮、按键、按钮、触感板或者触摸屏等。
可以理解,存储器602可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,Electrically Erasable Programmable Read-Only Memory)、磁性随机存取存储器(FRAM,ferromagnetic random access memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,Random AccessMemory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,Synchronous Static Random Access Memory)、动态随机存取存储器(DRAM,Dynamic Random Access Memory)、同步动态随机存取存储器(SDRAM,SynchronousDynamic Random Access Memory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double Data Rate Synchronous Dynamic Random Access Memory)、增强型同步动态随机存取存储器(ESDRAM,Enhanced Synchronous Dynamic Random Access Memory)、同步连接动态随机存取存储器(SLDRAM,SyncLink Dynamic Random Access Memory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Memory)。本申请实施例描述的存储器602旨在包括但不限于这些和任意其它适合类型的存储器。
本申请实施例中的存储器602用于存储各种类型的数据以支持电子设备600的操作。这些数据的示例包括:用于在电子设备600上操作的任何计算机程序,如操作系统6021和应用程序6022;联系人数据;电话簿数据;消息;图片;视频等。其中,操作系统6021包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序6022可以包含各种应用程序,例如媒体播放器(Media Player)、浏览器(Browser)等,用于实现各种应用业务。实现本申请实施例方法的程序可以包含在应用程序6022中。
上述本申请实施例揭示的方法可以应用于处理器601中,或者由处理器601实现。处理器601可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器601中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器601可以是通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器601可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器602,处理器601读取存储器602中的信息,结合其硬件完成前述方法的步骤。
在示例性实施例中,电子设备600可以被一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,ProgrammableLogic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable Logic Device)、现场可编程门阵列(FPGA,Field-Programmable Gate Array)、通用处理器、控制器、微控制器(MCU,Micro Controller Unit)、微处理器(Microprocessor)、或其他电子元件实现,用于执行前述方法。
在示例性实施例中,本申请实施例还提供了一种计算机可读存储介质,例如包括计算机程序的存储器,上述计算机程序可由电子设备600的处理器601执行,以完成前述方法所述步骤。计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、Flash Memory、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备,如移动电话、计算机、平板设备、个人数字助理等。
一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器运行时,执行:比较基本输入输出系统的当前版本数据与新版本数据;
基于比较结果确定所述基本输入输出系统中的待更新数据区块;
如果所述基本输入输出系统所在的存储区域中具有空闲区域,在不删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据的情况下,将所述待更新数据区块的新版本数据写入所述空闲区域。
所述计算机程序被处理器运行时,还执行:确定所述空闲区域中写入所述新版本数据的起始地址;在所述基本输入输出系统中标记所述起始地址。
所述计算机程序被处理器运行时,还执行:
在所述基本输入输出系统中用于存储所述旧版本数据的数据区块中标记所述起始地址。
所述计算机程序被处理器运行时,还执行:
如果所述基本输入输出系统在下一次更新事件后启动成功,删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据;或者,确定所述新版本数据运行成功,删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据。
所述计算机程序被处理器运行时,还执行:
在用户启动自我诊断程序时,对所述基本输入输出系统的各数据区块进行区块整理以形成连续数据区块,其中,所述各数据区块包括所述新版本数据所在的数据区块。
所述计算机程序被处理器运行时,还执行:
将所述基本输入输出系统的的新版本数据备份存储到非易失性存储器;如果所述基本输入输出系统的的新版本数据成功备份到非易失性存储器,删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据。
所述计算机程序被处理器运行时,还执行:
如果所述待更新数据区块的新版本数据运行失败,恢复到所述待更新数据区块的旧版本数据。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
本申请所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
本申请所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。
本申请所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种数据更新方法,包括:
比较基本输入输出系统的当前版本数据与新版本数据;
基于比较结果确定所述基本输入输出系统中的待更新数据区块;
如果所述基本输入输出系统所在的存储区域中具有空闲区域,在不删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据的情况下,将所述待更新数据区块的新版本数据写入所述空闲区域。
2.根据权利要求1所述的方法,所述方法还包括:
确定所述空闲区域中写入所述新版本数据的起始地址;
在所述基本输入输出系统中标记所述起始地址。
3.根据权利要求2所述的方法,在所述基本输入输出系统中标记所述起始地址,包括:
在所述基本输入输出系统中用于存储所述旧版本数据的数据区块中标记所述起始地址。
4.根据权利要求1所述的方法,还包括:
如果所述基本输入输出系统在下一次更新事件后启动成功,删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据;
或者,确定所述新版本数据运行成功,删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据。
5.根据权利要求4所述的方法,还包括:
在用户启动自我诊断程序时,对所述基本输入输出系统的各数据区块进行区块整理以形成连续数据区块,其中,所述各数据区块包括所述新版本数据所在的数据区块。
6.根据权利要求4所述的方法,所述基本输入输出系统在下一次更新事件后启动成功之后,所述方法还包括:
将所述基本输入输出系统的新版本数据备份存储到非易失性存储器;
所述删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据,包括:
如果所述基本输入输出系统的新版本数据成功备份存储到非易失性存储器,删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据。
7.根据权利要求1所述的方法,还包括:
如果所述待更新数据区块的新版本数据运行失败,恢复到所述待更新数据区块的旧版本数据。
8.一种电子设备,包括:
比较单元,用于比较基本输入输出系统的当前版本数据与新版本数据;
确定单元,用于基于比较结果确定所述基本输入输出系统中的待更新数据区块;
写入单元,用于如果所述基本输入输出系统所在的存储区域中具有空闲区域,在不删除所述待更新数据区块在所述基本输入输出系统中的旧版本数据的情况下,将所述待更新数据区块的新版本数据写入所述空闲区域。
9.一种电子设备,该电子设备包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器;
其中,所述处理器用于运行所述计算机程序时,执行权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器运行时,执行权利要求1至7任一项所述的方法。
CN202111154928.1A 2021-09-29 2021-09-29 一种数据更新方法及装置 Pending CN113849494A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111154928.1A CN113849494A (zh) 2021-09-29 2021-09-29 一种数据更新方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111154928.1A CN113849494A (zh) 2021-09-29 2021-09-29 一种数据更新方法及装置

Publications (1)

Publication Number Publication Date
CN113849494A true CN113849494A (zh) 2021-12-28

Family

ID=78977113

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111154928.1A Pending CN113849494A (zh) 2021-09-29 2021-09-29 一种数据更新方法及装置

Country Status (1)

Country Link
CN (1) CN113849494A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117573572A (zh) * 2024-01-12 2024-02-20 北京开源芯片研究院 重填数据的处理方法、装置、设备及存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117573572A (zh) * 2024-01-12 2024-02-20 北京开源芯片研究院 重填数据的处理方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
US7322029B2 (en) Method and system for recovering program code in a computer system
KR101636870B1 (ko) 최소 부트 이미지의 생성 방법 및 장치
CN107832099B (zh) 一种客户端版本兼容的方法、装置及存储介质
CN111258666B (zh) 计算机文件的读取方法、装置、计算机系统及存储介质
CN109614055B (zh) 快照创建方法、装置、电子设备及机器可读存储介质
CN112182010B (zh) 脏页刷新方法和装置、存储介质和电子设备
CN110825419A (zh) 一种固件刷新方法、装置及电子设备和存储介质
CN113849494A (zh) 一种数据更新方法及装置
CN106484779B (zh) 文件操作方法及装置
CN114780019A (zh) 电子设备的管理方法、装置、电子设备及存储介质
CN109408282B (zh) 应用程序备份恢复方法、设备及计算机可读存储介质
WO2000054133A1 (fr) Dispositif de traitement de donnees, procede de sauvegarde/chargement de donnees et support de memorisation de donnees
CN115061858B (zh) 数据持久化方法、装置、计算机设备及存储介质
KR20180023575A (ko) 펌웨어 자동 업데이트 방법 및 이의 방법을 기록한 컴퓨터 판독 가능한 기록 매체
CN115454570A (zh) 灾备方法、灾备恢复方法、虚拟机系统、设备及存储介质
US11249661B2 (en) Information processing apparatus, control method, and program
CN115309336A (zh) 数据写入方法、缓存信息更新方法及相关装置
CN113778485A (zh) 电子芯片的系统运行方法、装置、电子芯片和存储介质
CN110287064B (zh) 一种磁盘数据的还原方法、装置及电子设备
CN113467698A (zh) 基于文件系统的写方法、装置、计算机设备和存储介质
CN109960611B (zh) 数据恢复的方法、装置、电子设备及机器可读存储介质
CN108228299B (zh) 显示方法及电子设备
CN114675995A (zh) 数据备份方法、装置和电子设备
CN114676071B (zh) 数据处理方法、装置、电子设备及存储介质
CN113590388B (zh) 一种基于uboot的spl回滚方法及装置、存储介质、终端

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