CN102955735A - 基本输入输出系统测试方法 - Google Patents

基本输入输出系统测试方法 Download PDF

Info

Publication number
CN102955735A
CN102955735A CN2011102469068A CN201110246906A CN102955735A CN 102955735 A CN102955735 A CN 102955735A CN 2011102469068 A CN2011102469068 A CN 2011102469068A CN 201110246906 A CN201110246906 A CN 201110246906A CN 102955735 A CN102955735 A CN 102955735A
Authority
CN
China
Prior art keywords
bios
basic input
output system
burning
testing
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
CN2011102469068A
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.)
Inventec Corp
Original Assignee
Inventec Corp
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 Inventec Corp filed Critical Inventec Corp
Priority to CN2011102469068A priority Critical patent/CN102955735A/zh
Publication of CN102955735A publication Critical patent/CN102955735A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

一种基本输入输出系统测试方法。此测试方法包括下列步骤。在执行BIOS以初始化计算机系统完毕后,并且在操作系统被启动之前,检查一循环文件是否存在。当此循环文件不存在时,便产生此循环文件,并在此循环文件中设定总量循环数字以及当前循环数字,其中当前循环数字将被设定为0。当循环文件中当前循环数字小于总量循环数字时,便依据当前循环数字来决定BIOS的烧录版本以执行一BIOS烧录命令。以及,对此计算机系统执行一重新开机命令。藉此,此BIOS测试方法可自动进行不同BIOS固件码版本之间的循环烧录测试。

Description

基本输入输出系统测试方法
技术领域
本发明涉及一种基本输入输出系统(Basic Input/Output System;BIOS)的固件烧录技术,尤其涉及一种利用多个版本进行BIOS测试方法。
背景技术
计算机系统中,基本输入输出系统(basic input/output system;BIOS)在开机时扮演着十分重要的角色。BIOS是计算机系统在载入过程中最基本的软件程序码,其主要功能便是在开机时进行开机自我测试(poweron self test;POST),以初始化计算机系统内的硬件装置,检测这些硬件设备的状态是否正常。BIOS的程序码通常保存在计算机系统的主机板的非易失性存储器(nonvolatile memory)中(例如:闪速存储器(flashmemory))。
当在硬件装置在初始化操作的设定值需要变更、或是希望调整BIOS固件码的部分功能时,便需要对BIOS固件码进行修改。如此一来,便会衍生出许多不同版本的BIOS固件码。在拿捏计算机系统的效能需求及稳定度时,使用者很有可能会时常进行BIOS固件码的版本调整,例如,将计算机系统的BIOS版本升级(upgrade)/降级(downgrade)。
计算机系统生产厂商为了针对主机板上的闪速存储器来进行BIOS固件码版本的升级/降级压力测试,测试人员必须以手动方式进行不同版本BIOS的循环烧录及开机验证,才能从中判断此版本的BIOS固件码是否稳定,并且在不同版本BIOS的交互烧录过程中验证其不会出现无法预期的错误。因此,如何让计算机系统可自行进行不同版本BIOS的交互烧录,并可在出现错误时能够及时告知测试人员,便是在BIOS固件更新技术中所欲待解决的问题。
发明内容
本发明提供一种BIOS测试方法,其不需进入操作系统,便可自动进行不同BIOS固件码版本之间的循环烧录测试。
本发明提出一种BIOS测试方法,此BIOS测试方法适用于计算机系统中。此BIOS测试方法包括有下列步骤。在执行BIOS以初始化计算机系统完毕后并且一操作系统在被启动之前,先行检查一循环文件是否存在。当此循环文件不存在时,便产生上述循环文件,并在此循环文件中设定一总量循环数字以及一当前循环数字,其中,总量循环数字为一正整数,且当前循环数字此时被设定为0。当上述循环文件存在时,便将当前循环数字加1。当上述当前循环数字小于上述总量循环数字时,便可依据上述当前循环数字决定此BIOS的烧录版本以执行一BIOS烧录命令。以及,执行一重新开机命令以将此计算机系统重新开机。
在本发明的一实施例中,依据当前循环数字决定BIOS的烧录版本以进行BIOS烧录命令包括有下列步骤。在上述计算机系统中预备有N个BIOS固件码,其中N为大于1的正整数。依据第(i+1)个BIOS固件码执行上述BIOS烧录命令,其中i为上述当前循环数字除以N的余数。
在本发明的一实施例中,依据上述当前循环数字决定BIOS的烧录版本以进行BIOS烧录命令包括下列步骤。在上述计算机系统中预备第一BIOS固件码及第二BIOS固件码。当上述当前循环数字为奇数时,依据第一BIOS固件码执行此BIOS烧录命令。以及,当上述当前循环数字为偶数时,便依据第二BIOS固件码执行此BIOS烧录命令。
在本发明的一实施例中,上述的BIOS测试方法还包括下列步骤。当上述循环文件内的当前循环数字等于总量循环数字时,便中止此BIOS测试方法。
在本发明的一实施例中,上述的计算机系统在BIOS执行完毕之后以及启动操作系统之前,启动程序(boot loader)执行一执行文件以进行所述BIOS测试方法。
基于上述,本发明实施例是针对多个BIOS固件码版本进行BIOS的升级/降级压力测试。也就是说,在BIOS正常执行完毕后与启动操作系统以前,计算机系统利用启动程序来执行本发明实施例所述的BIOS测试方法,便可利用自动方式测试BIOS在各种不同版本之间的循环烧录过程中是否会发生问题。此外,本实施所述的BIOS测试方法不需进入计算机系统的操作系统中便可进行BIOS烧录,因此可降低压力测试所需耗费的时间。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合附图作详细说明如下。
附图说明
图1是根据本发明一实施例说明BIOS测试方法的流程图。
图2是图1的步骤S160的详细流程图。
图3为另一实施例中图1的步骤S160的详细流程图。
附图标记:
S110~S320:步骤
具体实施方式
现将详细参考本发明的示范性实施例,在附图中说明所述示范性实施例的实例。另外,凡可能之处,在附图及实施方式中使用相同标号的元件/构件/符号代表相同或类似部分。
以现有的BIOS固件烧录技术中,BIOS烧录测试的方式通常是计算机系统在进入其操作系统后,以应用程序来进行BIOS烧录及BIOS的功能验证,上述方式亦需要进入操作系统才能执行。此外,上述BIOS烧录测试的方式通常仅能以单一版本的BIOS固件码,对计算机系统中主机板上专门储存BIOS固件码的存储单元(例如,闪速存储器)进行重复烧录测试,而无法对多个版本的BIOS固件码自动进行交叉烧录或是循环烧录。
于此,本发明实施例的精神在于,本实施例所述的BIOS测试方法可在设定完成后自动进行不同版本的BIOS固件码的循环烧录测试,并且不需要进入操作系统即可完成。图1是根据本发明一实施例说明BIOS测试方法的流程图。请参照图1,本发明实施例所述的BIOS测试方法适用于具有BIOS的计算机系统中,例如台式计算机、笔记本式计算机、部分平板计算机等计算机装置,本发明并不限制于此。
一般而言,计算机系统在执行开机动作时,其中的中央处理单元(CPU)会先进行BIOS固件码的验证,并执行BIOS固件码当中的开机自我测试(POST)程序,以初始化计算机系统内的硬件装置,并逐步检测这些硬件设备的状态是否正常。因此,如图1所示,在步骤S110中,计算机系统在开机时首先会执行BIOS,以使计算机系统中的硬件装置皆初始化完毕。
如果BIOS固件码在烧录过程中有出错、或是BIOS固件码在交互烧录验证中发生问题时,大部分会在开机自我测试(POST)程序中产生错误。因此,如果在POST程序中发生错误而形成当机、自动重开机或其他情况,就可以合理猜测这个版本的BIOS固件码可能发生问题。
接着,当BIOS执行完毕,并且计算机系统在POST程序中皆正常之后,通常会接续执行一启动程序(boot loader),这个启动程序用来引导此计算机系统的操作系统启动,以顺利启动本计算机系统。然而,于本实施例的步骤S120中,启动程序则是执行一执行文件以进行本实施例所述的BIOS测试方法,藉以检查计算机系统中是否存在一循环文件。
循环文件为本BIOS测试方法所产生的一个参数暂存处。由于假设本BIOS测试方法为第一次执行,因此并不会出现上述的循环文件。因此,便从步骤S 120进入步骤S 130以自动产生一个循环文件,这个循环文件中亦设定有两个数字,分别是总量循环数字及当前循环数字。
总量循环数字便是执行此BIOS测试方法的测试人员所希望进行BIOS烧录的循环次数。总量循环数字可在启动程序第一次执行BIOS测试方法时让测试人员或使用者进行设定,或是以预设的方式来设定此总量循环数字。于本实施例而言,可对此总量循环数字设定为″500″,但不依此为限。
相对而言,当前循环数字便是目前此BIOS测试方法所执行的次数,因此在步骤S130中便会直接将当前循环数字设定为0。在执行完步骤S130后,便进入步骤S150,判断循环文件中的当前循环数字是否小于总量循环数字。当前循环数字小于总量循环数字时,表示BIOS测试方法尚未结束,而由步骤S150进入步骤S160。
相对地,如果当前循环数字大于或等于其总量循环数字时,则表示此BIOS测试方法的循环次数已达到测试人员所指定的次数,因此便从步骤S150进入步骤S180以中止此BIOS测试方法。于本实施例中,在中止此BIOS测试方法之后,启动程序便会继续引导此计算机系统的操作系统以使其启动。
有鉴于此,本实施例所述的BIOS测试方法适用在BIOS正常执行完毕后,以及启动程序将要引导操作系统启动之前的时间区段。因此,本BIOS测试方法并不需随着操作系统的改变而随之修改其程序码,因此可适用于不同操作系统的计算机系统中。
于步骤S160中,便可依据当前循环数字来决定本次BIOS的烧录版本,藉以执行一BIOS烧录命令。于此,本发明实施例以图2来说明图1的步骤S160,图2是图1的步骤S160的详细流程图。于本BIOS测试方法的步骤S 160中,会先执行图2的步骤S210,以在计算机系统中预先准备好在此次BIOS测试方法中进行循环烧录、开机测试的BIOS固件码。本实施例以两个BIOS固件码(例如,第一BIOS固件码及第二BIOS固件码)作为举例。通常而言,测试人员会在执行本BIOS测试方法前便将所需进行循环烧录、开机测试的BIOS固件码预先准备好。
接着,步骤S220便判断当前循环数字是否是奇数(odd)还是偶数(even)。如果当前循环数字是奇数时,便进入步骤S230,以依据第一BIOS固件码执行BIOS烧录指令。相对地,如果当前循环数字是偶数时,便进入步骤S240,以依据第二BIOS固件码执行BIOS烧录指令。
回到图1,当BIOS烧录指令执行完毕后,便由步骤S160进入步骤S170,以对计算机系统进行一重新开机指令,使计算机系统自动进行重新开机。接着,计算机系统便回到步骤S110以自动执行BIOS,使计算机系统初始化完毕。然后,由于循环文件已经存在,因此由步骤S120进入步骤S140,将当前循环数字加1,藉以表示本BIOS测试方法已经进行第一次循环烧录,并接续上述本BIOS测试方法的其他步骤,在此不再赘述。
上述图2对步骤S160的实现方式仅为说明本实施例的BIOS测试方法步骤S150的其中一种方式,应用本实施例者应可依据其所需的循环烧录顺序对多个版本的BIOS固件码依此方法进行循环烧录。在此以另一实施例所述的图3的流程图来实现图1的步骤S160,图3为另一实施例中图1的步骤S160的详细流程图。
于本实施例中,步骤S310便在计算机系统中预先准备好在此次BIOS测试方法中进行循环烧录、开机测试的N个BIOS固件码,N为正整数且N大于1。然后,便可依据当前循环数字以及其预设的循环烧录规则来随之选择对应版本的BIOS固件码。例如,步骤S320便可依据第(i+1)个BIOS固件码执行上述BIOS烧录命令,其中i为当前循环数字除以N的余数。
举例而言,如果N等于5,而当前循环数字为2时,由于当前循环数字(2)除以N(5)的余数为2,因此步骤S320便可依据第3(2+1)个BIOS固件码来进行BIOS烧录命令,以将第3个BIOS固件码烧录于主机板上的存储单元中。如果N等于5,而当前循环数字为101时,由于当前循环数字(101)除以N(5)的余数为1,因此步骤S320便可依据第2(1+1)个BIOS固件码来进行BIOS烧录命令,以将第2个BIOS固件码烧录于主机板上的存储单元中。
综上所述,本发明实施例是针对多个BIOS固件码版本进行BIOS的升级/降级压力测试。也就是说,在BIOS正常执行完毕后与启动操作系统以前,计算机系统利用启动程序来执行本发明实施例所述的BIOS测试方法,便可利用自动执行的方式以测试BIOS在各种不同版本之间的循环烧录过程中是否会发生问题。此外,本实施所述的BIOS测试方法不需进入操作系统便可进行BIOS烧录,因此可降低压力测试所需耗费的时间。
虽然本发明已以实施例揭示如上,然其并非用以限定本发明,任何所属技术领域的普通技术人员,当可作些许更动与润饰,而不脱离本发明的精神和范围。

Claims (5)

1.一种基本输入输出系统测试方法,适用于一计算机系统,该基本输入输出系统测试方法包括:
在执行该基本输入输出系统以使该计算机系统初始化完毕后以及一操作系统被启动之前,检查一循环文件是否存在;
当该循环文件不存在时,产生该循环文件,并在该循环文件中设定一总量循环数字以及一当前循环数字,其中该总量循环数字为一正整数且该当前循环数字设定为0;
当该循环文件存在时,将该当前循环数字加1;
当该循环文件中该当前循环数字小于该总量循环数字时,依据该当前循环数字决定该基本输入输出系统的烧录版本以执行一基本输入输出系统烧录命令;以及
对该计算机系统执行一重新开机命令。
2.根据权利要求1所述的基本输入输出系统测试方法,其中依据该当前循环数字决定该基本输入输出系统的烧录版本以进行该基本输入输出系统烧录命令包括下列步骤:
在该计算机系统中预备N个基本输入输出系统固件码,其中N为大于1的正整数;以及
依据第i+1个基本输入输出系统固件码执行该基本输入输出系统烧录命令,其中i为该当前循环数字除以N的余数。
3.根据权利要求1所述的基本输入输出系统测试方法,其中依据该当前循环数字决定该基本输入输出系统的烧录版本以进行该基本输入输出系统烧录命令包括下列步骤:
在该计算机系统中预备一第一基本输入输出系统固件码及一第二基本输入输出系统固件码;
当该当前循环数字为奇数时,依据该第一基本输入输出系统固件码执行该基本输入输出系统烧录命令;以及
当该当前循环数字为偶数时,依据该第二基本输入输出系统固件码执行该基本输入输出系统烧录命令。
4.根据权利要求1所述的基本输入输出系统测试方法,其中还包括:
当该循环文件中该当前循环数字等于该总量循环数字时,中止该基本输入输出系统测试方法。
5.根据权利要求1所述的基本输入输出系统测试方法,其中该计算机系统在该基本输入输出系统执行完毕后及启动该操作系统前,一启动程序执行一执行文件以进行该基本输入输出系统测试方法。
CN2011102469068A 2011-08-24 2011-08-24 基本输入输出系统测试方法 Pending CN102955735A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2011102469068A CN102955735A (zh) 2011-08-24 2011-08-24 基本输入输出系统测试方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011102469068A CN102955735A (zh) 2011-08-24 2011-08-24 基本输入输出系统测试方法

Publications (1)

Publication Number Publication Date
CN102955735A true CN102955735A (zh) 2013-03-06

Family

ID=47764559

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011102469068A Pending CN102955735A (zh) 2011-08-24 2011-08-24 基本输入输出系统测试方法

Country Status (1)

Country Link
CN (1) CN102955735A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104346271A (zh) * 2013-07-23 2015-02-11 昆达电脑科技(昆山)有限公司 自动验证系统开机的测试方法
CN104572225A (zh) * 2015-02-04 2015-04-29 浪潮电子信息产业股份有限公司 一种新型测试bios在线更新稳定性的方法
CN105550008A (zh) * 2016-02-04 2016-05-04 浪潮电子信息产业股份有限公司 一种基于Linux自动反复升降级刷新BIOS+ME的方法
CN107066387A (zh) * 2017-04-14 2017-08-18 广东浪潮大数据研究有限公司 一种在Windows系统下刷新BIOS压力的测试方法
CN108829407A (zh) * 2018-06-15 2018-11-16 深圳市网心科技有限公司 电子设备的系统引导方法、电子设备及存储介质
CN108958823A (zh) * 2017-05-18 2018-12-07 佛山市顺德区顺达电脑厂有限公司 修改基本输入输出系统设定值的方法
CN115495373A (zh) * 2022-10-08 2022-12-20 深圳市华曦达科技股份有限公司 基于Android系统的自动化升级测试方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5778169A (en) * 1995-08-07 1998-07-07 Synopsys, Inc. Computer system having improved regression testing
JP2010267291A (ja) * 1998-11-16 2010-11-25 Myriad Group Ag コンピュータ・システム、コンピュータ読取り可能な記憶媒体および同媒体を動作させる方法、およびコンピュータ・システムを動作させる方法
CN102023910A (zh) * 2009-09-10 2011-04-20 英业达股份有限公司 固件切换的检测方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5778169A (en) * 1995-08-07 1998-07-07 Synopsys, Inc. Computer system having improved regression testing
JP2010267291A (ja) * 1998-11-16 2010-11-25 Myriad Group Ag コンピュータ・システム、コンピュータ読取り可能な記憶媒体および同媒体を動作させる方法、およびコンピュータ・システムを動作させる方法
CN102023910A (zh) * 2009-09-10 2011-04-20 英业达股份有限公司 固件切换的检测方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104346271A (zh) * 2013-07-23 2015-02-11 昆达电脑科技(昆山)有限公司 自动验证系统开机的测试方法
CN104572225A (zh) * 2015-02-04 2015-04-29 浪潮电子信息产业股份有限公司 一种新型测试bios在线更新稳定性的方法
CN105550008A (zh) * 2016-02-04 2016-05-04 浪潮电子信息产业股份有限公司 一种基于Linux自动反复升降级刷新BIOS+ME的方法
CN107066387A (zh) * 2017-04-14 2017-08-18 广东浪潮大数据研究有限公司 一种在Windows系统下刷新BIOS压力的测试方法
CN108958823A (zh) * 2017-05-18 2018-12-07 佛山市顺德区顺达电脑厂有限公司 修改基本输入输出系统设定值的方法
CN108829407A (zh) * 2018-06-15 2018-11-16 深圳市网心科技有限公司 电子设备的系统引导方法、电子设备及存储介质
CN108829407B (zh) * 2018-06-15 2022-04-01 深圳市网心科技有限公司 电子设备的系统引导方法、电子设备及存储介质
CN115495373A (zh) * 2022-10-08 2022-12-20 深圳市华曦达科技股份有限公司 基于Android系统的自动化升级测试方法及装置

Similar Documents

Publication Publication Date Title
CN102955735A (zh) 基本输入输出系统测试方法
US8751783B2 (en) Booting computing devices with EFI aware operating systems
US8429390B2 (en) Method for performing quick boot and general boot at bios stage
KR101626433B1 (ko) 시스템 변경 후 컴퓨팅 장치의 적절한 동작을 확인하는 방법 및 시스템
CN101504704B (zh) 由星型信任链支持的嵌入式平台应用程序完整性验证方法
US20050125396A1 (en) Electronic apparatus and file search method thereof
US20190079746A1 (en) Software updating methods and systems
US7962736B1 (en) Interactive pre-OS firmware update with repeated disabling of interrupts
CN104572206A (zh) 应用程序自更新和备份恢复的方法
US20130080752A1 (en) Method and apparatus for implementing compatiblity of different processors
US9513889B2 (en) System and method of automating installation of applications
CN105677409B (zh) 一种系统升级方法及装置
US8516506B2 (en) Method and system for restoring an application in a dynamically linked environment
US20110296072A1 (en) System and method for controlling pci-e slots of computer
CN108304140B (zh) 闪存数据管理方法、装置及微控制器
US20150019852A1 (en) Verification method for system execution environment
TWI623834B (zh) 電腦系統的開機方法
CN114528557A (zh) 一种嵌入式soc芯片自适应启动方法
CN109814932A (zh) 显卡驱动安装方法、计算设备
CN104035776A (zh) 一种操作系统的启动方法
CN102915246A (zh) 终端设备以及支持多固件加载的方法
WO2014112973A1 (en) Server-platform simulation service
CN111399926A (zh) 下载启动程序的方法和装置
TW201310232A (zh) Bios測試方法
CN112667444A (zh) 一种系统升级方法、存储介质及终端设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C05 Deemed withdrawal (patent law before 1993)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130306