更新固件的方法

文档序号:6334865阅读:294来源:国知局
专利名称:更新固件的方法
技术领域
本发明是有关于一种更新固件的方法,且特别是有关于一种可避免远端与本地端同时进行更新的更新固件的方法。
背景技术
所谓的固件(firmware)泛指的是嵌入在装置的硬件元件中的软件。透过固件的更新,将可以对装置的运作效率、稳定性等状态进行调整。而使用适当的固件版本可确保硬件装置发挥最佳的运作效能。而电脑系统中的基本输入输出系统(Basic Input Output System, BIOS)即是固件。一般而言,固件是用来控制相关硬件元件的程序码。众所皆知地,这类资料皆为非常重要且不容许被破坏的资料,否则将导致主机板无法正常开机或部分功能无法正常使用的情形发生。而当电子装置在硬件部分需要升级或是功能更新的时候,往往需要借由更新 (update)固件版本的动作,也就是将新版本的固件烧录至原本储存此固件的存储元件来达到此目的。但更新固件这个动作其实是具有风险。目前来说,如果远端与本地端同时进行固件更新时,便会产生不可预期的错误,而导致固件被破坏。

发明内容
本发明提供一种更新固件的方法,可避免远端装置与本地端装置同时进行固件的更新。本发明提出一种更新固件的方法。在接收到更新指令时,检查输入输出针脚是否为第一电位。其中,更新指令是由远端装置或本地端装置所发出。如果输入输出针脚为第一电位,将输入输出针脚更改为第二电位并且执行固件更新程序。如果输入输出针脚已由第一电位更改为第二电位,忽略此更新指令而不执行固件更新程序。在本发明的一实施例中,上述检查输入输出针脚是否为第一电位的步骤之后,如果输入输出针脚为第一电位,更可致能发光单元。在本发明的一实施例中,上述在执行该固件更新程序的步骤之后,更可在固件更新程序完成之后,禁能发光单元。在本发明的一实施例中,上述发光单元为基板管理控制器(BaseboardManagement Controller,BMC)上的发光二极管(Light Emitting Diode),透过智能平台管理接口 (Intelligent Platform Management Interface, IPMI)指令来致能或禁能发光单元。在本发明的一实施例中,上述在将输入输出针脚更改为第二电位并且执行固件更新程序之后,如果固件更新程序完成,将输入输出针脚由第二电位更改为第一电位。在本发明的一实施例中,上述在将输入输出针脚更改为第二电位并且执行固件更新程序之后,如果固件更新程序失败,显示更新失败讯息。在本发明的一实施例中,上述检查输入输出针脚是否为第一电位的步骤之后,如果输入输出针脚已由第一电位更改为第二电位,更可显示警示讯息,以通知使用者目前正在执行固件更新程序。基于上述,本发明利用输入输出针脚的设置与否来判断固件是否正在执行更新动作。据此,可避免远端及本地端同时进行固件更新的动作,保护固件不被破坏。


为让本发明的上述目的、特征和优点能更明显易懂,以下结合附图对本发明的具体实施方式
作详细说明,其中图1是依照本发明一实施例的更新固件的方法流程图。图2是依照本发明另一实施例的更新固件的方法流程图。主要元件符号说明S105 S120 本发明一实施例的更新固件的方法各步骤S205 S250 本发明另一实施例的更新固件的方法各步骤
具体实施例方式图1是依照本发明一实施例的更新固件的方法流程图。请参照图1,在步骤S105 中,接收更新指令。上述更新指令可以是由远端装置或本地端装置所发出。当本地端装置接收到更新指令时,如步骤SllO所示,检查输入输出针脚是否为第一电位。举例来说,利用芯片上的任一闲置的输入输出针脚(例如,通用输入输出(General Purpose I/O)针脚)的设置与否来判断目前是否正在进行固件更新程序。当接收到更新指令时,检查此输入输出针脚是否被设置(例如由低电位拉高至高电位)。如果输入输出针脚为第一电位,如步骤S115所示,将输入输出针脚更改为第二电位并且执行固件更新程序。如果输入输出针脚已由第一电位更改为第二电位,如步骤S120 所示,忽略此更新指令而不执行固件更新程序。举例来说,假设第一电位为低电位。也就是说,当输入输出针脚为低电位时代表其尚未被设置。据此,若接收到更新指令时检测到输入输出针脚为低电位,代表其尚未被设置,也就是说目前并没有在执行固件更新程序。因此便可以执行固件更新程序。相反地,若接收到更新指令时检测到输入输出针脚为高电位,代表其已被设置而由低电位被拉高至高电位,换言之,此时正好在进行固件更新程序。因此,为了避免固件被破坏便忽略此更新指令而不执行固件更新程序。底下再举一实施例来详细说明。图2是依照本发明另一实施例的更新固件的方法流程图。请参照图2,在步骤S205中,接收更新指令。上述更新指令可以是由远端装置或本地端装置所发出。当本地端装置接收到更新指令时,如步骤S210所示,检查输入输出针脚是否为第一电位。如果输入输出针脚已由第一电位更改为第二电位,如步骤S215所示,忽略此更新指令而不执行固件更新程序。也就是说,目前系统正在进行固件的更新,因此系统不会允许此更新指令,并且还可提示一警告讯息,如在步骤S220所示,借以通知本地端的使用者本地端装置目前正在执行固件更新程序。如果输入输出针脚为第一电位,如步骤S225所示,将输入输出针脚更改为第二电位并且执行固件更新程序。接着,在步骤S230中,致能发光单元。在本实施例中,发光单元例如为基板管理控制器(Baseboard ManagementController, BMC)上的发光二极管 (Light Emitting Diode),而透过智能平台管理接口 intelligent Platform Management Interface, IPMI)指令可致能或禁能此发光单元。借由基板管理控制器点量发光二极管来作为本地端装置的警示之用。之后,在步骤S235中,判断固件更新程序是否完成。如果固件更新程序完成,如步骤S240所示,将输入输出针脚由第二电位更改为第一电位。之后,在步骤S245中,禁能发光单元。反之,如果固件更新程序失败,如步骤S250所示,显示更新失败讯息。综上所述,本发明利用芯片上的任一闲置的输入输出针脚的设置与否来判断系统目前是否正在进行固件的更新。当接收到更新指令时,若检测到输入输出针脚已被设置, 表示目前系统正在进行固件的更新,因此系统不会允许此更新指令。而若检测到输入输出针脚尚位被设置,表示目前系统并没有在进行固件的更新,此时便可进行固件更新程序。据此,可避免远端或本地端同时进行更新的情况发生。虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的修改和完善,因此本发明的保护范围当以权利要求书所界定的为准。
权利要求
1.一种更新固件的方法,包括接收一更新指令,其中该更新指令是由一远端装置或一本地端装置所发出;检查一输入输出针脚是否为一第一电位;如果该输入输出针脚为该第一电位,将该输入输出针脚更改为一第二电位并且执行一固件更新程序;以及如果该输入输出针脚已由该第一电位更改为一第二电位,忽略该更新指令而不执行该固件更新程序。
2.如权利要求1所述的更新固件的方法,其特征在于,如果该输入输出针脚为该第一电位,更包括致能一发光单元。
3.如权利要求2所述的更新固件的方法,其特征在于,在执行该固件更新程序的步骤之后,更包括在该固件更新程序完成之后,禁能该发光单元。
4.如权利要求3所述的更新固件的方法,其特征在于,该发光单元为一基板管理控制器上的发光二极管,透过一智能平台管理接口指令来致能或禁能该发光单元。
5.如权利要求1所述的更新固件的方法,其特征在于,在将该输入输出针脚更改为该第二电位并且执行该固件更新程序的步骤之后,更包括在该固件更新程序完成之后,将该输入输出针脚由该第二电位更改为该第一电位。
6.如权利要求1所述的更新固件的方法,其特征在于,在将该输入输出针脚更改为该第二电位并且执行该固件更新程序的步骤之后,更包括若该固件更新程序失败,显示一更新失败讯息。
7.如权利要求1所述的更新固件的方法,其特征在于,如果该输入输出针脚已由该第一电位更改为该第二电位,更包括显示一警示讯息,以通知一使用者目前正在执行该固件更新程序。
全文摘要
本发明提出一种更新固件的方法,可避免远端装置与本地端装置同时进行固件的更新。该方法包括,在接收到更新指令时,检查输入输出针脚是否为第一电位。在此,更新指令是由远端装置或本地端装置所发出。如果输入输出针脚为第一电位,将输入输出针脚更改为第二电位并且执行固件更新程序。如果输入输出针脚已由第一电位更改为第二电位,忽略此更新指令而不执行固件更新程序。
文档编号G06F9/445GK102455924SQ201010528270
公开日2012年5月16日 申请日期2010年10月21日 优先权日2010年10月21日
发明者林大华 申请人:英业达股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1