BIOS更新系统及方法技术方案

技术编号:2852580 阅读:233 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供一种在计算机系统中用以更新BIOS的方法,其由外部计算机对待测计算机的BIOS程序进行更新。该方法包括:于待测计算机提供引导程序初始化串行端口;于外部计算机提供BIOS上传程序,其通过串行端口传送特定字符串给引导程序;所述引导程序判断在一定时间内是否接收到特定字符串;若没有接收到特定字符串,则判断待测计算机的BIOS检查码是否等于零;若BIOS检查码不等于零,则引导程序接收传送的特定字符串、BIOS更新程序及BIOS韧体至待测计算机的内存中;引导程序执行上述BIOS更新程序更新BIOS。本发明专利技术还提供由外部计算机对待测计算机的BIOS程序进行更新的系统。

【技术实现步骤摘要】

本专利技术涉及一种计算机系统中BIOS的更新系统及方法,尤指通过串行端口上传更新程序更新BIOS的系统及方法。
技术介绍
计算机BIOS负责开机时对计算机系统的各项硬件进行初始化设置和测试,以确保系统能够正常工作。若硬件不正常则立即停止工作,并把出错的设备讯息反馈给用户。BIOS是用于联系计算机硬件与软件程序之间的一组程序,该程序为计算机提供最低级及最直接的硬件控制。BIOS包含了系统加电自检(Power On System Test,POST)程序模块及系统启动自举程序模块,这些程序模块主要负责主板与其它计算机硬设备通讯的作用。当计算机接通电源后,BIOS将进行检查计算机内部所有设备,包括对微处理器(CPU)、内存、系统主板、CMOS内存、并行和串行通讯子系统、软盘和硬盘子系统以及键盘进行测试。自检测试完成后,系统将在指定的驱动器中寻找操作系统,并向内存中装入操作系统。如果BIOS出现故障,计算机系统一开机便无法执行如内存(RAM)、硬盘(HD)、中央处理器(CPU)等的检测,则计算机系统便无法顺利完成开机程序。也因为BIOS在计算机系统中具备如此重要的地位,一般将BIOS程序快速存储在一个可以长久不需电源的非挥发性内存中,如FlashROM、EEPROM等,并将此类BIOS内建于计算机系统的主板上,使其内容不受电源供应影响而可永久保存。由于现代计算机技术的不断进步,BIOS也需要不断的扩展功能以便能够管理更多的硬件设备;或者是当BIOS损坏时,需要对BIOS进行修补。因此,为了要随时更新BIOS的内容,存储BIOS的内存通常由可再写入的内存所提供,如快速存储器(Flash Memory)。BIOS的制造商会将BIOS的内容储存在一存储器中,并且提供使用者BIOS的快速程序。当BIOS的制造商发表了较新版本的BIOS,制造商便会将BIOS的快速程序与包括更新BIOS的程序代码的更新档案通过网络供使用者自行下载以更新计算机系统的BIOS。使用者将BIOS制造商所提供的快速程序与包括BIOS程序代码的更新档案(通常为一二进制档案)自网络下载至本地端的主机后,便可利用BIOS的快速程序将BIOS的更新档案再程序化(Reprogram)至BIOS内存中,以覆写原先的BIOS内容或新增的BIOS内容,完成BIOS的更新程序。一般在进行BIOS更新时,都是利用一张操作系统的引导磁盘,在执行完BIOS程序之后,加载操作系统的开机程序,再激活快速程序进行更新作业。但是,并非现今所有的操作系统都能够提供开机程序备份的功能。若无法使用操作系统的开机磁盘以执行快速程序,便无法进行BIOS的更新。中国国家知识产权局于2002年9月25日公开的公开号为CN1371051A、名称为“计算机系统中的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上传程序,其用于通过所述串行端口向上述引导程序传送特定字符串及向待测计算机内存传送BIOS更新程序及BIOS韧体。所述特定字符串包括四个字符,第一个字符是ASCII 1,即控制字符SOH;其它三个字符分别是!、S、#。所述引导程序还用于在BIOS更新程序被上传到待测计算机内存后,执行该BIOS更新程序进行BIOS更新。所述BIOS韧体是一段程序,其在BIOS进行更新后,执行开机的动作。本专利技术还揭露一种BIOS更新方法,该方法由外部计算机对待测计算机的BIOS程序进行更新。该方法包括下列步骤(a)于待测计算机的BIOS程序中提供一引导程序(BOOT),该引导程序初始化待测计算机的串行端口;(b)于外部计算机提供一BIOS上传程序,该BIOS上传程序通过上述串行端口传送特定字符串给上述引导程序;(c)所述引导程序判断在一定时间内是否接收到上述特定字符串;(d)如果没有接收到上述特定字符串,则判断BIOS检查码是否等于零;(e)如果BIOS检查码不等于零,则所述引导程序接收特定字符串;(f)BIOS上传程序通过所述串行端口传送BIOS更新程序及BIOS韧体至待测计算机内存中;(g)引导程序执行上述BIOS更新程序,进行BIOS更新,再由BIOS韧体执行开机。其中,所述特定字符串包括四个字符,第一个字符是ASCII 1,即控制字符SOH;第二个、第三个、第四个字符分别是!、S、#。如果引导程序在一定时间内接收到所述特定字符,则系统强制进入串行回复模式,引导程序接收BIOS上传程序传送的BIOS更新程序及BIOS韧体至计算机系统内存。所述BIOS检查码是指读取BIOS区域,将该区域所有资料按每四个字节进行加总,并将所得各个加总值再进行相加得一检查码,如果该检查码等于零,则表明BIOS没有错误,程序直接从引导程序跳至BIOS程序,执行开机的工作。通过本专利技术,可在BIOS更新错误,造成计算机系统无法开机时,无需从主板上拔取BIOS Flash ROM重新烧录程序,而利用串行端口上传BIOS更新程序来进行BIOS的更新。附图说明图1为本专利技术BIOS更新系统的硬件架构图。图2为本专利技术BIOS更新方法流程图。具体实施方式参阅图1所示,为本专利技术BIOS更新系统的硬件架构图。该BIOS更新系统包括一待测计算机1及一外部计算机2,其中待测计算机1为一需要进行BIOS检测及更新的计算机,外部计算机2为一对该待测计算机1进行BIOS更新的计算机。在待测计算机1中,在主板10上内建的待检测的BIOS程序11上有一引导程序(BOOT程序)12;在外部计算机2中,有一BIOS上传程序21。其中,所述BOOT程序12用于初始化串行端口13、并做接收特定字符串动作;所述BIOS上传程序用于通过该串行端口13上传特定字符串、BIOS更新程序及BIOS韧体。所述特定字符串在本实施例中总共有四个字符,第一个字符是ASC本文档来自技高网
...

【技术保护点】
一种BIOS更新系统,其特征在于,该系统包括:一需要进行BIOS检测及更新的待测计算机及对该待测计算机进行BIOS更新的外部计算机;其中该待测计算机的BIOS程序中有一引导程序,其用于初始化串行端口及接收特定字符串;外部计算机有一BIOS上传程序,其用于通过所述串行端口向上述引导程序传送特定字符串及向待测计算机内存传送BIOS更新程序及BIOS韧体。

【技术特征摘要】

【专利技术属性】
技术研发人员:陈廷贤
申请(专利权)人:鸿富锦精密工业深圳有限公司鸿海精密工业股份有限公司
类型:发明
国别省市:94[中国|深圳]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1