CN107402772A - 一种升级bios的方法 - Google Patents

一种升级bios的方法 Download PDF

Info

Publication number
CN107402772A
CN107402772A CN201610330741.5A CN201610330741A CN107402772A CN 107402772 A CN107402772 A CN 107402772A CN 201610330741 A CN201610330741 A CN 201610330741A CN 107402772 A CN107402772 A CN 107402772A
Authority
CN
China
Prior art keywords
bios
file
upgrading
data
selection signal
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
CN201610330741.5A
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.)
Shenzhen Prafly Technology Co Ltd
Original Assignee
Shenzhen Prafly 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 Prafly Technology Co Ltd filed Critical Shenzhen Prafly Technology Co Ltd
Priority to CN201610330741.5A priority Critical patent/CN107402772A/zh
Publication of CN107402772A publication Critical patent/CN107402772A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

一种升级BIOS的方法,包括:S0、将BIOS文件预先存储到存储设备中;S1、开机后检测到预设热键的触发信号并调用UEFI驱动;S2、基于EFI的设备查找协议查找UEFI驱动支持的存储设备;S3、接收用户输入的设备选择信号,基于设备选择信号确定选定的存储设备;S4、基于EFI的文件查找协议和文件夹查找协议,查找选定的存储设备中的当前路径下的文件夹和BIOS文件;S5、如果接收到用户输入的文件选择信号,则基于文件选择信号确定选定的BIOS文件作为指定的升级文件,进入S6;如果接收到用户输入的文件夹选择信号,则将该文件夹选择信号对应的文件夹的路径确定为当前路径并转S4;S6、将指定的升级文件的BIOS数据写入系统的闪存中。本发明的方法快速简单且方便。

Description

一种升级BIOS的方法
技术领域
本发明涉及计算机技术领域,尤其涉及一种升级BIOS的方法。
背景技术
由于兼容性、客户需求以及设备更新的原因,操作平台常常需要更新BIOS(基本输入输出系统,Basic Input Output System)固件,例如x86平台。传统的BIOS升级在烧录数据时需要拆下BIOS芯片,然后使用专用的烧录器工具进行烧录升级;或使用BIOS专用工具,用相应的命令行来进行操作,命令行操作依赖于DOS或者EFI或操作系统环境,即使在图形界面下,也需要BIOS烧录工具、驱动和各种勾选操作,对一般用户而言,过程相当繁琐复杂。所以更新BIOS固件,一般都建议在专业人员指导下进行,否则,一旦操作出错很容易导致不开机或不稳定,需要返厂维修。另外,也有通过远程或进入品牌官网进行自动升级BIOS的方法,这些都依赖于操作系统和互联网。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种升级BIOS的方法。
本发明解决其技术问题所采用的技术方案是:构造一种升级BIOS的方法,包括:
S0、将升级涉及的BIOS数据以BIOS文件形式预先存储到系统的存储设备中;
S1、系统开机后进入上电自检阶段,检测到预设热键的触发信号并调用UEFI驱动;
S2、基于EFI的设备查找协议查找UEFI驱动支持的存储设备,并将查找到的存储设备通过设备选择界面显示;
S3、接收用户输入的设备选择信号,基于所述设备选择信号确定选定的存储设备;
S4、基于EFI的文件查找协议和文件夹查找协议,查找选定的存储设备中的当前路径下的文件夹和BIOS文件;
S5、如果接收到用户输入的文件夹选择信号,则将该文件夹选择信号对应的文件夹的路径确定为当前路径并转步骤S4;如果接收到用户输入的文件选择信号,则基于所述文件选择信号确定选定的BIOS文件作为指定的升级文件,进入步骤S6;
S6、将所述指定的升级文件的BIOS数据写入系统的闪存中。
在本发明所述的升级BIOS的方法中,所述步骤S5之后还包括:
S56、判断指定的升级文件是否符合当前平台,如果符合则执行步骤S6,否则返回至步骤S2。
在本发明所述的升级BIOS的方法中,所述UEFI驱动在编译时根据主板ID定义一个相应的ID字符串,
所述步骤S56包括:UEFI驱动将指定的升级文件读取到内存,在内存中查找ID字符串,并将其与主板ID所定义的ID字符串进行比较,如果两个ID字符串匹配,即判定该指定的升级文件符合当前平台,如果不匹配,则返回至步骤S2。
在本发明所述的升级BIOS的方法中,所述步骤S6之后还包括:
S7、对闪存中的升级后的BIOS数据进行校验。
在本发明所述的升级BIOS的方法中,所述步骤S6之后还包括:系统关机后重新开机,上电验证闪存中升级后的BIOS数据。
在本发明所述的升级BIOS的方法中,所述BIOS数据存储在闪存中的数据块中,
所述步骤S6包括:将闪存中的数据块逐个进行比对,如果某个数据块的数据与指定的升级文件中的相应的BIOS数据不同,则将该某个数据块格式化后将相应的BIOS数据写入该某个数据块,否则跳过该某个数据块。
在本发明所述的升级BIOS的方法中,所述步骤S7包括:对每一个数据块进行校验,如果某个数据块的数据与指定的升级文件中的相应的BIOS数据不同,则对该某个数据块单独执行写入操作,如相同,则校验成功。
在本发明所述的升级BIOS的方法中,所述存储设备包括U盘、移动硬盘、系统的本地硬盘。
实施本发明的升级BIOS的方法,具有以下有益效果:本发明基于UEFI在BIOS启动过程中升级BIOS,不需要专用烧录工具,也不需要联网,用户只需要选择要升级的文件即可,快速简单且方便。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是本发明的升级BIOS的方法的流程图。
具体实施方式
为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图详细说明本发明的具体实施方式。
为了克服传统BIOS升级过程受限于烧录环境以及操作繁琐的缺陷,例如,需要根据操作系统的不同输入命令行,或者需要互联网,或者需要专门的烧录工具等,本发明基于UEFI在BIOS启动过程中升级BIOS,不需要专用烧录工具,也不需要联网,用户只需要选择要升级的文件即可,快速简单且方便。
下面结合具体的实施例详细说明本发明。
实施例一:
参考图1,图1是本发明的升级BIOS的方法的流程图。本发明的升级BIOS的方法包括:
S0、将升级涉及的BIOS数据以BIOS文件形式预先存储到系统的存储设备中;
其中,BIOS文件一般是后缀为.BIN或.ROM的文件。
其中,所述存储设备包括U盘、移动硬盘、系统的本地硬盘。如果选用U盘或者移动硬盘,则将BIOS文件拷贝到U盘或者移动硬盘后,需要将U盘或者移动硬盘与系统平台连接;如果选用系统的本地硬盘,则需要先将BIOS文件拷贝到系统的本地硬盘。
S1、系统开机后进入上电自检阶段(UEFI post阶段),检测到预设热键的触发信号并调用UEFI驱动;在此步骤中,如果没有检测到预设热键的触发信号,则正常启动并结束方法;
UEFI,即Unified Extensible Firmware Interface,统一的可扩展固件接口,是一种详细描述类型接口的标准。这种接口用于操作系统自动从预启动的操作环境,加载到一种操作系统上。
其中,预设热键为F6,即用户需要按压F6才能触发进行BIOS升级。
S2、基于EFI的设备查找协议查找UEFI驱动支持的存储设备,并将查找到的存储设备通过设备选择界面显示;
EFI是UEFI的前身。设备查找协议即为EFI_DEVICE_PATH_PROTOCOL。设备选择界面可以自行设计界面外观,例如界面上提示File Browser,然后以清单形式列出查找到的所有的存储设备,比如:
File Browser
USB:KingstonDataTraveler 2.OPAMAP,Partition 1
Enter=Select,ESC=Exit
S3、接收用户输入的设备选择信号,基于所述设备选择信号确定选定的存储设备;
用户可以通过键盘上的上下箭头或者左右箭头对应的按钮选中清单中的某个设备,然后按压回车键Enter输入该设备选择信号。
如果用户想退出升级,则可以通过按压ESC按键输入取消升级信号,则系统将结束本发明的方法,并正常启动系统。
S4、基于EFI的文件查找协议和文件夹查找协议,查找选定的存储设备中的当前路径下的文件夹和BIOS文件;
文件查找协议即为EFI_FILE_PROTOCOL,文件夹查找协议即为EFI_SIMPLE_FILE_SYSTEM_PROTOCOL。该步骤将列出选定的存储设备中的所有文件夹以及所有.BIN或者.ROM的文件,例如,
S5、如果接收到用户输入的文件夹选择信号,则将该文件夹选择信号对应的文件夹的路径确定为当前路径并转步骤S4;如果接收到用户输入的文件选择信号,则基于所述文件选择信号确定选定的BIOS文件作为指定的升级文件,进入步骤S6;
同理,用户可以通过键盘上的上下箭头或者左右箭头对应的按钮选中清单中的某个.BIN文件,然后按压回车键Enter输入该文件选择信号;用户还可以通过键盘上的上下箭头或者左右箭头对应的按钮选中清单中的某个文件夹,然后按压回车键Enter输入该文件夹选择信号,此时将继续列出该文件夹下的所有子文件夹和所有的.BIN文件,以此类推。
如果用户想返回上一级重新选择设备,则可以通过按压ESC按键输入返回信号,如果在此步骤中接收到用户输入的返回信号,则跳转至步骤S2。
S6、将所述指定的升级文件的BIOS数据写入系统的闪存中。
所述BIOS数据存储在闪存中的数据块中,写入时可以针对每个数据块,都采用格式化后直接写入的方式。
优选的,为了提高写入效率,本实施例中所述步骤S6具体包括:将闪存中的数据块逐个进行比对,如果某个数据块的数据与指定的升级文件中的相应的BIOS数据不同,则将该某个数据块格式化,然后将相应的BIOS数据写入该某个数据块,如果数据相同,则可以直接跳过该某个数据块,不对其进行写入操作。
由于读取和比对的速度非常快,所消耗的时间远远少于格式化和烧录的时间,所以相对于每个数据块的格式化再烧录的方式,更快速,用时更少。
实施例二:
与实施例一的不同在于,实施例二中在所述步骤S6之后还包括:
S7、对闪存中的升级后的BIOS数据进行校验。
具体包括:对每一个数据块进行校验,如果某个数据块的数据与指定的升级文件中的相应的BIOS数据不同,则对该某个数据块单独执行写入操作,如相同,则校验成功。
本实施例中增加了校验环节,确保升级的可靠。
实施例三:
实施例三是在实施例一或者实施例二的基础上,在所述步骤S5之后还包括:
S56、判断指定的升级文件是否符合当前平台,如果符合则执行步骤S6,否则返回至步骤S2。
具体的,由于所述UEFI驱动在编译时根据主板ID定义一个相应的ID字符串,在所述步骤S56中,UEFI驱动将指定的升级文件读取到内存,在内存中查找ID字符串,并将其与主板ID所定义的ID字符串进行比较,如果两个ID字符串匹配,即判定该指定的升级文件符合当前平台,如果不匹配,则返回至步骤S2。
另外,优选的,在所述步骤S6或者S7之后还包括:系统关机后重新开机,上电验证闪存中升级后的BIOS数据。
综上所述,实施本发明的升级BIOS的方法,具有以下有益效果:本发明基于UEFI在BIOS启动过程中升级BIOS,不需要专用烧录工具,也不需要联网,用户只需要选择要升级的文件即可,快速简单且方便。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。

Claims (8)

1.一种升级BIOS的方法,其特征在于,包括:
S0、将升级涉及的BIOS数据以BIOS文件形式预先存储到系统的存储设备中;
S1、系统开机后进入上电自检阶段,检测到预设热键的触发信号并调用UEFI驱动;
S2、基于EFI的设备查找协议查找UEFI驱动支持的存储设备,并将查找到的存储设备通过设备选择界面显示;
S3、接收用户输入的设备选择信号,基于所述设备选择信号确定选定的存储设备;
S4、基于EFI的文件查找协议和文件夹查找协议,查找选定的存储设备中的当前路径下的文件夹和BIOS文件;
S5、如果接收到用户输入的文件夹选择信号,则将该文件夹选择信号对应的文件夹的路径确定为当前路径并转步骤S4;如果接收到用户输入的文件选择信号,则基于所述文件选择信号确定选定的BIOS文件作为指定的升级文件,进入步骤S6;
S6、将所述指定的升级文件的BIOS数据写入系统的闪存中。
2.根据权利要求1所述的升级BIOS的方法,其特征在于,所述步骤S5之后还包括:
S56、判断指定的升级文件是否符合当前平台,如果符合则执行步骤S6,否则返回至步骤S2。
3.根据权利要求2所述的升级BIOS的方法,其特征在于,所述UEFI驱动在编译时根据主板ID定义一个相应的ID字符串,
所述步骤S56包括:UEFI驱动将指定的升级文件读取到内存,在内存中查找ID字符串,并将其与主板ID所定义的ID字符串进行比较,如果两个ID字符串匹配,即判定该指定的升级文件符合当前平台,如果不匹配,则返回至步骤S2。
4.根据权利要求1所述的升级BIOS的方法,其特征在于,所述步骤S6之后还包括:
S7、对闪存中的升级后的BIOS数据进行校验。
5.根据权利要求4所述的升级BIOS的方法,其特征在于,所述步骤S6之后还包括:系统关机后重新开机,上电验证闪存中升级后的BIOS数据。
6.根据权利要求4所述的升级BIOS的方法,其特征在于,所述BIOS数据存储在闪存中的数据块中,
所述步骤S6包括:将闪存中的数据块逐个进行比对,如果某个数据块的数据与指定的升级文件中的相应的BIOS数据不同,则将该某个数据块格式化后将相应的BIOS数据写入该某个数据块,否则跳过该某个数据块。
7.根据权利要求6所述的升级BIOS的方法,其特征在于,所述步骤S7包括:对每一个数据块进行校验,如果某个数据块的数据与指定的升级文件中的相应的BIOS数据不同,则对该某个数据块单独执行写入操作,如相同,则校验成功。
8.根据权利要求1所述的升级BIOS的方法,其特征在于,所述存储设备包括U盘、移动硬盘、系统的本地硬盘。
CN201610330741.5A 2016-05-18 2016-05-18 一种升级bios的方法 Pending CN107402772A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610330741.5A CN107402772A (zh) 2016-05-18 2016-05-18 一种升级bios的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610330741.5A CN107402772A (zh) 2016-05-18 2016-05-18 一种升级bios的方法

Publications (1)

Publication Number Publication Date
CN107402772A true CN107402772A (zh) 2017-11-28

Family

ID=60394540

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610330741.5A Pending CN107402772A (zh) 2016-05-18 2016-05-18 一种升级bios的方法

Country Status (1)

Country Link
CN (1) CN107402772A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109343886A (zh) * 2018-12-12 2019-02-15 广东浪潮大数据研究有限公司 一种升级bios的方法、装置以及设备
CN111240705A (zh) * 2020-01-02 2020-06-05 福建升腾资讯有限公司 一种uefi模式下实现升级bios的方法及系统
CN111258617A (zh) * 2019-12-31 2020-06-09 联想(北京)有限公司 一种电子设备
CN111309358A (zh) * 2020-02-26 2020-06-19 浪潮电子信息产业股份有限公司 一种cpld固件升级方法、装置、设备及可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1936840A (zh) * 2005-09-23 2007-03-28 联想(北京)有限公司 一种不依赖操作系统更新软件数据的计算机系统及方法
US20120191960A1 (en) * 2011-01-20 2012-07-26 Mark Piwonka Booting computing devices
CN103294499A (zh) * 2012-03-05 2013-09-11 联想(北京)有限公司 一种信息处理的方法及电子设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1936840A (zh) * 2005-09-23 2007-03-28 联想(北京)有限公司 一种不依赖操作系统更新软件数据的计算机系统及方法
US20120191960A1 (en) * 2011-01-20 2012-07-26 Mark Piwonka Booting computing devices
CN103294499A (zh) * 2012-03-05 2013-09-11 联想(北京)有限公司 一种信息处理的方法及电子设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
笑遍世界: "通过UEFI升级BIOS", 《HTTP://SMILEJAY.COM/2012/09/UPDATE_BIOS_WITH_UEFI/》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109343886A (zh) * 2018-12-12 2019-02-15 广东浪潮大数据研究有限公司 一种升级bios的方法、装置以及设备
CN111258617A (zh) * 2019-12-31 2020-06-09 联想(北京)有限公司 一种电子设备
CN111258617B (zh) * 2019-12-31 2022-03-25 联想(北京)有限公司 一种电子设备
CN111240705A (zh) * 2020-01-02 2020-06-05 福建升腾资讯有限公司 一种uefi模式下实现升级bios的方法及系统
CN111309358A (zh) * 2020-02-26 2020-06-19 浪潮电子信息产业股份有限公司 一种cpld固件升级方法、装置、设备及可读存储介质

Similar Documents

Publication Publication Date Title
CN107402772A (zh) 一种升级bios的方法
US8751783B2 (en) Booting computing devices with EFI aware operating systems
US7975223B2 (en) Move tracking with conflict resolution
US7725613B2 (en) Device installation with host controller consideration
CN101421701B (zh) 用于引导非易失性存储器的方法、设备和系统
US7873960B2 (en) Generic packaging tool for packaging application and component therefor to be installed on computing device
CN104679540A (zh) 计算机系统与计算机系统启动方法
CN103150231A (zh) 计算机开机的方法与计算机系统
WO2016091071A1 (zh) 加载Linux内核驱动的方法及装置
US20060195833A1 (en) Data-burning method and system thereof based on auto-detection of computer platform
CN101548265B (zh) 便携式多平台引导系统及架构
US20100049961A1 (en) Update method for basic input/output system and update system thereof
US6829705B2 (en) System information display method and apparatus
US20130080751A1 (en) Method and device for updating bios program for computer system
CN110135163B (zh) 一种基于目标应用的安全检测方法、装置及系统
US20070061802A1 (en) Automatic installation of PC game
US20100162234A1 (en) Method for installing application and computer system thereof
CN102184115B (zh) 升级系统软件的方法及终端设备
CN106648742B (zh) 一种php运行环境的一键部署方法及系统
US20110060898A1 (en) Computer motherboard with basic input output system capable of built-in bios fresh
US20050172236A1 (en) System and method for using short captions to map user interfaces
CN114625399A (zh) 系统升级方法及相关装置、设备和存储介质
CN101655800B (zh) 基本输入输出系统的更新方法及其更新系统
US20160041782A1 (en) Storage Device Copying of a larger system to a smaller system
CN106445737A (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
AD01 Patent right deemed abandoned

Effective date of abandoning: 20210312

AD01 Patent right deemed abandoned