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

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

【技术领域】
[0001]本发明涉及计算机领域,具体涉及一种更新计算机系统中的8103固件的方法及目.0

【背景技术】
[0002]用户在更新8103固件时,需要将8103固件通过8103刷新工具更新到主板上。如果出现研发、厂商或者工厂管控不严,导致有问题的8103固件流入市场,最终被用户用于8103固件更新之后,可能会导致机台或者主板无法开机的情况,这严重影响了用户体验,甚至可能会造成客诉或者赔偿等事件,进一步造成用户和厂商双方面的经济损失。
[0003]现有技术中采用双8103固件存储芯片,8103 01818/^6(30^61^技术,或者通过外设直接刷入8103固件存储芯片来解决上述问题。然而,采用双8103固件存储芯片的方案的缺点是需要增加一个8103固件存储芯片,从而导致成本提高。此外,8103 01-1813/^600^61-7和外设直接刷入,是问题已经发生的补救措施,影响用户体验,并且需要用户具有一定的专业知识才能实现。


【发明内容】

[0004]本发明针对上述问题,提供一种更新8103固件的方法及装置。
[0005]为了实现上述目的,本发明一方面提供了一种更新计算机系统中的8103固件的方法,包括步骤:
[0006]将新版8103固件存放在内存可用区域中;
[0007]将所述新版8103固件解压成8103映像文件,并使所述8103映像文件替换位于内存特定区域中现有8103固件;
[0008]执行替换后的所述8103映像文件,以引导系统初始化;
[0009]判定执行结果是否正常;
[0010]如果判定执行结果正常,则将存放在所述内存可用区域中的新版8103固件刷入8108固件存储芯片,重启所述系统;和
[0011]如果判定执行结果异常,则提示新版8103固件未能成功刷入,重启所述系统。
[0012]作为优选,在将所述新版8103固件存放在内存可用区域之前,该方法还包括:
[0013]在用户接口提供给用户的一项或多项8103固件中,选择或指定所述新版8103固件。
[0014]作为优选,该方法还包括:
[0015]系统中断调用8103底层接口;和
[0016]通过8103底层接口将存放所述新版8103固件的所述内存可用区域的内存地址和所述新版8103固件的长度传递给8103底层。
[0017]作为优选,所述内存特定区域为内存中的%以下的高地址段的区域。
[0018]作为优选,所述判定执行结果是否正常包括:
[0019]设定计时器的阈值时间并开始计时;
[0020]如果8103完成对所述8103映像文件的所述执行,则关闭所述计时器,并判定执行结果正常;
[0021]如果所述计时器的当前计时到达所述阈值时间时,则判定执行结果异常。
[0022]本发明一方面提供了一种更新计算机系统中的8103固件的装置,包括:
[0023]转存模块,其配置为将新版8103固件存放在内存可用区域中;
[0024]解压替换模块,其配置为将所述新版8103固件解压成8103映像文件,并使所述8108映像文件替换位于内存特定区域中现有8103固件;
[0025]执行模块,其配置为执行替换后的所述8103映像文件,以引导系统初始化;
[0026]判定模块,其配置为判定执行结果是否正常;以及
[0027]处理反馈模块,其配置为如果判定执行结果正常,则将存放在所述内存可用区域中的新版8103固件刷入8103固件存储芯片,重启所述系统;和如果判定执行结果异常,则提示新版8103固件未能成功刷入,重启所述系统。
[0028]作为优选,该装置还包括:
[0029]用户接口模块,其配置为在用户接口提供给用户的一项或多项8103固件中,选择或指定所述新版8103固件。
[0030]作为优选,该装置还包括:
[0031]中断调用模块,其配置为系统中断调用8103底层接口以及通过8103底层接口将存放所述新版8103固件的所述内存可用区域的内存地址和所述新版8103固件的长度传递给8103底层。
[0032]作为优选,所述内存特定区域为内存中的%以下的高地址段的区域。
[0033]作为优选,所述判定模块包括:
[0034]计时器,用于设定计时器的阈值时间并开始计时;
[0035]第一判定单元,其配置为如果8103完成对所述8103映像文件的所述执行,则关闭所述计时器,并判定执行结果正常;
[0036]第二判定单元,其配置为如果所述计时器的当前计时到达所述阈值时间时,则判定执行结果异常。
[0037]使用本发明的更新8103固件的方法及装置,在更新8103固件时,并不是直接把8108固件刷入8103固件存储芯片。而是先将8103固件解压到内存中试运行,在验证功能没有问题后,再通过工具,比如一般常用的,刷入8103存储芯片。因此,不会出现8103固件更新失败导致机台或者主板无法开机的情况,避免不良后果。

【专利附图】

【附图说明】
[0038]图1为本发明实施例的更新8103固件的方法的流程示意图;
[0039]图2为本发明一优选实施例的更新8103固件的方法的流程示意图。

【具体实施方式】
[0040]为使本领域技术人员更好地理解本发明,下面参照附图对本发明的实施例进行详细说明。
[0041]如图1所示,本发明实施例提供一种更新8103固件的方法,包括如下步骤:
[0042]将新版8103固件存放在内存可用区域中;
[0043]将新版8103固件解压成8103映像文件,并使8103映像文件替换位于内存特定区域中现有8103固件;
[0044]执行替换后的8103映像文件,以引导系统初始化;
[0045]判定执行结果是否正常;
[0046]如果判定执行结果正常,则将存放在内存可用区域中的新版8103固件刷入8103固件存储芯片,重启系统;和
[0047]如果判定执行结果异常,则提示新版8103固件未能成功刷入,重启系统。
[0048]根据本实施例,由于没有像现有技术那样将待更新的8103固件直接刷入8103固件存储芯片,而是将其映像文件覆盖在内存中的现有8103固件,在确保待更新的8103固件的功能正常后,将该待更新的8103固件刷入固件存储芯片,使用本发明实施例的方法,不会刷入有问题的8103固件,因此不会出现机台或者主板无法开机的情况,确保了良好的用户体验度。
[0049]如图2所示,图2是本发明一优选实施例的更新8103固件的方法的流程示意图。该方法包括如下步骤:
[0050]步骤3101:给用户一个瓜(用户接口),让用户选择或指定一个新版8103固件¢01),点击开始;
[0051]步骤3102:将用户选择或指定的新版8103固件存放在内存可用区域中;
[0052]步骤3103:将该新版8103固件解压成映像文件加叫6,并使该映像文件替换在内存特定区域中的现有8103固件;该内存特定区域优选为内存中的4(}以下的高地址段的区域;
[0053]步骤3104:执行替换后的8103映像文件,以引导系统初始化;
[0054]步骤3105:设定计时器的阈值时间,开始计时;
[0055]步骤3106:如果8103完成对该映像文件的执行,则关闭计时器,判定执行结果正常,进入步骤3107 ;如果计时器的当前计时到达阈值时间,则判定执行结果异常,进入步骤8109 ;
[0056]步骤3107:通过系统中断调用8103底层接口,通过8103底层接口将存放新版8103固件的内存可用区域的内存地址和该新版8103固件的长度传递给8103底层,进入步骤3108 ;
[0057]步骤3108:将存放在内存可用区域中的新版8103固件刷入8103固件存储芯片,重启系统;
[0058]步骤3109:提示用户新版8103固件未能成功刷入,重启系统。
[0059]值得说明的是,上述各步骤的顺序并不是一定的,例如步骤3105涉及计时器的设定,其可以放在步骤3104之前,这种调整不会影响到本发明的实现,但是,本领域技术人员应当理解的是,计时器的阈值时间应当长于其开始计时的时间点到8103正常执行完8103映像文件所需的时间;例如,在本实施例中,当技术人员判定正常执行完8103映像文件所需的时间为2-3秒时,阈值时间可被较佳地设定为10秒(3) ,208 ;而,在某些实施例中,当在步骤3104之前就开始计时的时候,则应当适当地增大计时器的阈值时间,本领域技术人员可根据实际情况来具体设定该阈值时间。此外,步骤3101在某些实施例中可以不是必需的,完全可以由计算机自动选定匹配的新版8103固件,自动执行后续操作。
[0060]本发明实施例还提供了一种更新计算机系统中的8103固件的装置,包括:
[0061]转存模块,其配置为将新版8103固件存放在内存可用区域中;
[0062]解压替换模块,其配置为将新版8103固件解压成8103映像文件,并使8103映像文件替换位于内存特定区域中现有8103固件;
[0063]执行模块,其配置为执行替换后的8103映像文件,以引导系统初始化;
[0064]判定模块,其配置为判定执行结果是否正常;以及
[0065]处理反馈模块,其配置为如果判定执行结果正常,则将存放在内存可用区域中的新版8103固件刷入8103固件存储芯片,重启系统;和如果判定执行结果异常,则提示新版8108固件未能成功刷入,重启系统。
[0066]在一优选实施例中,该装置可以包括:用户接口模块,其配置为在用户接口提供给用户的一项或多项8103固件中,选择或指定新版8103固件。
[0067]此外,该装置可以包括:中断调用模块,其配置为系统中断调用8103底层接口以及通过8103底层接口将存放新版8103固件的内存可用区域的内存地址和新版8103固件的长度传递给8103底层。
[0068]其中,内存特定区域优选为内存中的4(}以下的高地址段的区域。
[0069]在一优选实施例中,判定模块可包括:
[0070]计时器,用于设定计时器的阈值时间并开始计时;
[0071]第一判定单元,其配置为如果8103完成对8103映像文件的执行,则关闭计时器,并判定执行结果正常;
[0072]第二判定单元,其配置为如果计时器的当前计时到达阈值时间时,则判定执行结果异常。
[0073]本发明不局限于上述特定实施例,在不背离本发明精神及其实质情况下,熟悉本领域的技术人员可根据本发明作出各种相应改变和变形,但这些相应改变和变形都应属于本发明所附权利要求的保护范围之内。
【权利要求】
1.一种更新计算机系统中的B1S固件的方法,包括步骤: 将新版B1S固件存放在内存可用区域中; 将所述新版B1S固件解压成B1S映像文件,并使所述B1S映像文件替换位于内存特定区域中现有B1S固件; 执行替换后的所述B1S映像文件,以引导系统初始化; 判定执行结果是否正常; 如果判定执行结果正常,则将存放在所述内存可用区域中的新版B1S固件刷入B1S固件存储芯片,重启所述系统;和 如果判定执行结果异常,则提示新版B1S固件未能成功刷入,重启所述系统。
2.如权利要求1所述的方法,在将所述新版B1S固件存放在内存可用区域之前,还包括: 在用户接口提供给用户的一项或多项B1S固件中,选择或指定所述新版B1S固件。
3.如权利要求1所述的方法,还包括: 系统中断调用B1S底层接口 ;和 通过B1S底层接口将存放所述新版B1S固件的所述内存可用区域的内存地址和所述新版B1S固件的长度传递给B1S底层。
4.如权利要求1所述的方法,其中所述内存特定区域为内存中的4G以下的高地址段的区域。
5.如权利要求1-4中任一项所述的方法,其中所述判定执行结果是否正常包括: 设定计时器的阈值时间并开始计时; 如果B1S完成对所述B1S映像文件的所述执行,则关闭所述计时器,并判定执行结果正常; 如果所述计时器的当前计时到达所述阈值时间时,则判定执行结果异常。
6.一种更新计算机系统中的B1S固件的装置,包括: 转存模块,其配置为将新版B1S固件存放在内存可用区域中; 解压替换模块,其配置为将所述新版B1S固件解压成B1S映像文件,并使所述B1S映像文件替换位于内存特定区域中现有B1S固件; 执行模块,其配置为执行替换后的所述B1S映像文件,以引导系统初始化; 判定模块,其配置为判定执行结果是否正常;以及 处理反馈模块,其配置为如果判定执行结果正常,则将存放在所述内存可用区域中的新版B1S固件刷入B1S固件存储芯片,重启所述系统;和如果判定执行结果异常,则提示新版B1S固件未能成功刷入,重启所述系统。
7.如权利要求6所述的装置,还包括: 用户接口模块,其配置为在用户接口提供给用户的一项或多项B1S固件中,选择或指定所述新版B1S固件。
8.如权利要求6所述的装置,还包括: 中断调用模块,其配置为系统中断调用B1S底层接口以及通过B1S底层接口将存放所述新版B1S固件的所述内存可用区域的内存地址和所述新版B1S固件的长度传递给B1S底层。
9.如权利要求6所述的装置,其中所述内存特定区域为内存中的4G以下的高地址段的区域。
10.如权利要求6-9中任一项所述的装置,其中所述判定模块包括: 计时器,用于设定计时器的阈值时间并开始计时; 第一判定单元,其配置为如果B1S完成对所述B1S映像文件的所述执行,则关闭所述计时器,并判定执行结果正常; 第二判定单元,其配置为如果所述计时器的当前计时到达所述阈值时间时,则判定执行结果异常。
【文档编号】G06F9/445GK104503810SQ201510010233
【公开日】2015年4月8日 申请日期:2015年1月8日 优先权日:2015年1月8日
【发明者】田硕 申请人:合肥联宝信息技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1