首页> 中国专利> 更新计算机系统中的BIOS固件的方法及装置

更新计算机系统中的BIOS固件的方法及装置

摘要

本发明公开了一种更新计算机系统中的BIOS固件的方法及装置。该方法包括步骤:将新版BIOS固件存放在内存可用区域中;将所述新版BIOS固件解压成BIOS映像文件,并使所述BIOS映像文件替换位于内存特定区域中现有BIOS固件;执行替换后的所述BIOS映像文件,以引导系统初始化;判定执行结果是否正常;如果判定执行结果正常,则将存放在所述内存可用区域中的新版BIOS固件刷入BIOS固件存储芯片,重启所述系统;和如果判定执行结果异常,则提示新版BIOS固件未能成功刷入,重启所述系统。使用该方法及装置,不会出现BIOS固件更新失败导致机台或者主板无法开机的情况,避免不良后果。

著录项

  • 公开/公告号CN104503810A

    专利类型发明专利

  • 公开/公告日2015-04-08

    原文格式PDF

  • 申请/专利权人 合肥联宝信息技术有限公司;

    申请/专利号CN201510010233.4

  • 发明设计人 田硕;

    申请日2015-01-08

  • 分类号G06F9/445;

  • 代理机构北京金信知识产权代理有限公司;

  • 代理人黄威

  • 地址 230601 安徽省合肥市经济技术开发区翠微路6号海恒大厦4楼418号

  • 入库时间 2023-12-17 04:48:46

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-03-23

    授权

    授权

  • 2015-05-06

    实质审查的生效 IPC(主分类):G06F9/445 申请日:20150108

    实质审查的生效

  • 2015-04-08

    公开

    公开

说明书

技术领域

本发明涉及计算机领域,具体涉及一种更新计算机系统中的 BIOS固件的方法及装置。

背景技术

用户在更新BIOS固件时,需要将BIOS固件通过BIOS刷新工 具更新到主板上。如果出现研发、厂商或者工厂管控不严,导致有问 题的BIOS固件流入市场,最终被用户用于BIOS固件更新之后,可 能会导致机台或者主板无法开机的情况,这严重影响了用户体验,甚 至可能会造成客诉或者赔偿等事件,进一步造成用户和厂商双方面的 经济损失。

现有技术中采用双BIOS固件存储芯片,BIOS Crisis/Recovery技 术,或者通过外设直接刷入BIOS固件存储芯片来解决上述问题。然 而,采用双BIOS固件存储芯片的方案的缺点是需要增加一个BIOS 固件存储芯片,从而导致成本提高。此外,BIOS Crisis/Recovery和 外设直接刷入,是问题已经发生的补救措施,影响用户体验,并且需 要用户具有一定的专业知识才能实现。

发明内容

本发明针对上述问题,提供一种更新BIOS固件的方法及装置。

为了实现上述目的,本发明一方面提供了一种更新计算机系统中 的BIOS固件的方法,包括步骤:

将新版BIOS固件存放在内存可用区域中;

将所述新版BIOS固件解压成BIOS映像文件,并使所述BIOS 映像文件替换位于内存特定区域中现有BIOS固件;

执行替换后的所述BIOS映像文件,以引导系统初始化;

判定执行结果是否正常;

如果判定执行结果正常,则将存放在所述内存可用区域中的新版 BIOS固件刷入BIOS固件存储芯片,重启所述系统;和

如果判定执行结果异常,则提示新版BIOS固件未能成功刷入, 重启所述系统。

作为优选,在将所述新版BIOS固件存放在内存可用区域之前, 该方法还包括:

在用户接口提供给用户的一项或多项BIOS固件中,选择或指定 所述新版BIOS固件。

作为优选,该方法还包括:

系统中断调用BIOS底层接口;和

通过BIOS底层接口将存放所述新版BIOS固件的所述内存可用 区域的内存地址和所述新版BIOS固件的长度传递给BIOS底层。

作为优选,所述内存特定区域为内存中的4G以下的高地址段的 区域。

作为优选,所述判定执行结果是否正常包括:

设定计时器的阈值时间并开始计时;

如果BIOS完成对所述BIOS映像文件的所述执行,则关闭所述 计时器,并判定执行结果正常;

如果所述计时器的当前计时到达所述阈值时间时,则判定执行结 果异常。

本发明一方面提供了一种更新计算机系统中的BIOS固件的装 置,包括:

转存模块,其配置为将新版BIOS固件存放在内存可用区域中;

解压替换模块,其配置为将所述新版BIOS固件解压成BIOS映 像文件,并使所述BIOS映像文件替换位于内存特定区域中现有BIOS 固件;

执行模块,其配置为执行替换后的所述BIOS映像文件,以引导 系统初始化;

判定模块,其配置为判定执行结果是否正常;以及

处理反馈模块,其配置为如果判定执行结果正常,则将存放在所 述内存可用区域中的新版BIOS固件刷入BIOS固件存储芯片,重启 所述系统;和如果判定执行结果异常,则提示新版BIOS固件未能成 功刷入,重启所述系统。

作为优选,该装置还包括:

用户接口模块,其配置为在用户接口提供给用户的一项或多项 BIOS固件中,选择或指定所述新版BIOS固件。

作为优选,该装置还包括:

中断调用模块,其配置为系统中断调用BIOS底层接口以及通过 BIOS底层接口将存放所述新版BIOS固件的所述内存可用区域的内 存地址和所述新版BIOS固件的长度传递给BIOS底层。

作为优选,所述内存特定区域为内存中的4G以下的高地址段的 区域。

作为优选,所述判定模块包括:

计时器,用于设定计时器的阈值时间并开始计时;

第一判定单元,其配置为如果BIOS完成对所述BIOS映像文件 的所述执行,则关闭所述计时器,并判定执行结果正常;

第二判定单元,其配置为如果所述计时器的当前计时到达所述阈 值时间时,则判定执行结果异常。

使用本发明的更新BIOS固件的方法及装置,在更新BIOS固件 时,并不是直接把BIOS固件刷入BIOS固件存储芯片。而是先将BIOS 固件解压到内存中试运行,在验证功能没有问题后,再通过工具,比 如一般常用的winflash,刷入BIOS存储芯片。因此,不会出现BIOS 固件更新失败导致机台或者主板无法开机的情况,避免不良后果。

附图说明

图1为本发明实施例的更新BIOS固件的方法的流程示意图;

图2为本发明一优选实施例的更新BIOS固件的方法的流程示意 图。

具体实施方式

为使本领域技术人员更好地理解本发明,下面参照附图对本发明 的实施例进行详细说明。

如图1所示,本发明实施例提供一种更新BIOS固件的方法,包 括如下步骤:

将新版BIOS固件存放在内存可用区域中;

将新版BIOS固件解压成BIOS映像文件,并使BIOS映像文件 替换位于内存特定区域中现有BIOS固件;

执行替换后的BIOS映像文件,以引导系统初始化;

判定执行结果是否正常;

如果判定执行结果正常,则将存放在内存可用区域中的新版 BIOS固件刷入BIOS固件存储芯片,重启系统;和

如果判定执行结果异常,则提示新版BIOS固件未能成功刷入, 重启系统。

根据本实施例,由于没有像现有技术那样将待更新的BIOS固件 直接刷入BIOS固件存储芯片,而是将其映像文件覆盖在内存中的现 有BIOS固件,在确保待更新的BIOS固件的功能正常后,将该待更 新的BIOS固件刷入固件存储芯片,使用本发明实施例的方法,不会 刷入有问题的BIOS固件,因此不会出现机台或者主板无法开机的情 况,确保了良好的用户体验度。

如图2所示,图2是本发明一优选实施例的更新BIOS固件的方 法的流程示意图。该方法包括如下步骤:

步骤S101:给用户一个UI(用户接口),让用户选择或指定一个 新版BIOS固件(ROM),点击开始;

步骤S102:将用户选择或指定的新版BIOS固件存放在内存可用 区域中;

步骤S103:将该新版BIOS固件解压成映像文件image,并使该 映像文件替换在内存特定区域中的现有BIOS固件;该内存特定区域 优选为内存中的4G以下的高地址段的区域;

步骤S104:执行替换后的BIOS映像文件,以引导系统初始化;

步骤S105:设定计时器的阈值时间,开始计时;

步骤S106:如果BIOS完成对该映像文件的执行,则关闭计时器, 判定执行结果正常,进入步骤S107;如果计时器的当前计时到达阈 值时间,则判定执行结果异常,进入步骤S109;

步骤S107:通过系统中断SCI调用BIOS底层接口,通过BIOS 底层接口将存放新版BIOS固件的内存可用区域的内存地址和该新版 BIOS固件的长度传递给BIOS底层,进入步骤S108;

步骤S108:将存放在内存可用区域中的新版BIOS固件刷入BIOS 固件存储芯片,重启系统;

步骤S109:提示用户新版BIOS固件未能成功刷入,重启系统。

值得说明的是,上述各步骤的顺序并不是一定的,例如步骤S105 涉及计时器的设定,其可以放在步骤S104之前,这种调整不会影响 到本发明的实现,但是,本领域技术人员应当理解的是,计时器的阈 值时间应当长于其开始计时的时间点到BIOS正常执行完BIOS映像 文件所需的时间;例如,在本实施例中,当技术人员判定正常执行完 BIOS映像文件所需的时间为2-3秒时,阈值时间可被较佳地设定为 10秒(S)、20S;而,在某些实施例中,当在步骤S104之前就开始 计时的时候,则应当适当地增大计时器的阈值时间,本领域技术人员 可根据实际情况来具体设定该阈值时间。此外,步骤S101在某些实 施例中可以不是必需的,完全可以由计算机自动选定匹配的新版 BIOS固件,自动执行后续操作。

本发明实施例还提供了一种更新计算机系统中的BIOS固件的装 置,包括:

转存模块,其配置为将新版BIOS固件存放在内存可用区域中;

解压替换模块,其配置为将新版BIOS固件解压成BIOS映像文 件,并使BIOS映像文件替换位于内存特定区域中现有BIOS固件;

执行模块,其配置为执行替换后的BIOS映像文件,以引导系统 初始化;

判定模块,其配置为判定执行结果是否正常;以及

处理反馈模块,其配置为如果判定执行结果正常,则将存放在内 存可用区域中的新版BIOS固件刷入BIOS固件存储芯片,重启系统; 和如果判定执行结果异常,则提示新版BIOS固件未能成功刷入,重 启系统。

在一优选实施例中,该装置可以包括:用户接口模块,其配置为 在用户接口提供给用户的一项或多项BIOS固件中,选择或指定新版 BIOS固件。

此外,该装置可以包括:中断调用模块,其配置为系统中断调用 BIOS底层接口以及通过BIOS底层接口将存放新版BIOS固件的内存 可用区域的内存地址和新版BIOS固件的长度传递给BIOS底层。

其中,内存特定区域优选为内存中的4G以下的高地址段的区域。

在一优选实施例中,判定模块可包括:

计时器,用于设定计时器的阈值时间并开始计时;

第一判定单元,其配置为如果BIOS完成对BIOS映像文件的执 行,则关闭计时器,并判定执行结果正常;

第二判定单元,其配置为如果计时器的当前计时到达阈值时间 时,则判定执行结果异常。

本发明不局限于上述特定实施例,在不背离本发明精神及其实质 情况下,熟悉本领域的技术人员可根据本发明作出各种相应改变和变 形,但这些相应改变和变形都应属于本发明所附权利要求的保护范围 之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号