计算机开机预设值的加载方法

文档序号:6598123阅读:662来源:国知局
专利名称:计算机开机预设值的加载方法
技术领域
本发明涉及一种计算机开机预设值的加载方法,尤其涉及具有一个非易失性内存的计算机系统,使该计算机系统在其BIOS程序更新时将开机预设值自动加载的方法。
背景技术
为了顺应计算机系统处理效率及周边硬件装置研发技术日新月异的发展,使计算机制造商不断设计出不同版本的基本输入输出系统(Basic Input/Output System,以下简称为BIOS)程序,使计算机系统可明确判定出其目前所搭配的周边硬件装置是什么,据此让这些周边硬件装置与该计算机系统之间可正常运作,进而提供计算机系统使用者或BIOS程序测试人员对计算机系统进行正常操作。
尽管BIOS程序不断更新,但是,对于BIOS更新后所需的开机预设值(Default)的加载程序而言,要通过BIOS程序所提供的设置(Setup)功能,或利用该计算机系统主机板上的开关(Switch)进行设定后方可加载开机预设值。因此,计算机系统使用者或BIOS程序测试人员均需以手动方式来加载BIOS程序开机预设值至计算机系统中。然而,以手动方式加载开机预设值,使用者或测试人员容易忽略,因而导致计算机系统于运作过程中产生错误。
因此,在计算机系统的BIOS程序更新后,如何有效避免因忽略BIOS程序开机预设值的设定程序而导致系统不正常运作,以及提供一种可自动加载开机预设值的方法,是目前需要解决的问题。

发明内容
鉴于上述现有技术的缺点,本发明的主要目的在于提供一种计算机开机预设值的加载方法,用以让计算机系统在BIOS程序更新后可自动加载BIOS程序开机预设值,以有效避免因人工易于忽略BIOS程序开机预设值的设定程序而导致系统不正常运作。
本发明的另一目的在于提供一种计算机开机预设值的加载方法,可适用于一般具有非易失性内存(例如NVRAM)的计算机系统中,通过该非易失性内存来储存BIOS程序更新后的相关信息,以供该计算机系统判定是否需自动加载BIOS程序开机预设值,因此,不须增加额外的硬件成本即可达到自动加载开机预设值的功能。
为达到上述目的,本发明提供了一种计算机开机预设值的加载方法。该预设值的加载方法,适用于具有一个非易失性内存的计算机系统中,该非易失性内存用以储存计算机系统前次开机所使用的BIOS程序的前BIOS程序状态值,且该计算机系统至少包括一个用以储存BIOS程序及开机预设值的主记忆单元,该加载方法至少包含令该计算机系统从该主记忆单元中读取BIOS程序以进行开机程序,且取出该BIOS程序的版本及日期资料;接着,令该计算机系统根据该取得的版本及日期资料求出该BIOS程序状态值,且从该非易失性内存中取出前BIOS程序状态值,并将根据该主记忆单元中的BIOS程序而求得的BIOS程序状态值与前BIOS程序状态值进行比较;如果两值相同,则该计算机系统不须将主存储器中所储存的BIOS程序加载其开机预设值,进而根据该非易失性内存的BIOS程序执行POST程序;反之,若两值不同,则将该根据主记忆单元所求得的BIOS程序状态值存储在该非易失性内存中,以作为下次开机程序时的状态值比较,且将该主存储器所储存的开机预设值加载至非易失性内存中,并使该计算机系统根据加载于非易失性内存的开机预设值进行POST程序。


图1表示本发明的计算机开机预设值的加载方法所需的基本应用结构方块图;图2A表示本发明的计算机开机预设值的加载方法所需执行的各步骤流程图;图2B表示图2A中步骤S7的进一步的处理流程图。
图中的符号说明1 计算机系统10CPU11北桥芯片12南桥芯片110 SRAM111 DRAM112 Cache120 BIOS ROM121 NVRAM存取控制器122 NVRAM123 I/O控制器以及CMOS单元124 键盘/鼠标125 VGA具体实施方式
以下配合附图,详细说明本发明的计算机开机预设值的加载方法的实施例。
图1表示本发明的计算机开机预设值的加载方法所需的基本应用结构方块图。如图所示,本发明的计算机开机预设值的加载方法适用于一个计算机系统1中,例如笔记本计算机或台式计算机等,该计算机系统1至少包括一个中央处理器10(Central Processing Unit;以下将简称为CPU)、一个北桥芯片11、一个南桥芯片12、一个静态随机存取内存110(Static Random Access Memory;以下简称为SRAM)、一个动态随机存取内存111(Dynamic Random Access Memory;以下简称为DRAM)、一个高速缓存1 12(以下简称为cache)、一个BIOS ROM120、一个非易失性随机存取内存(Non-Volatile Random Access Memory;以下简称为NVRAM)存取控制器121、一个NVRAM122、一个I/O控制器以及CMOS单元123、一个键盘/鼠标124以及一个VGA(Video GraphicsArray)125。其中,该北桥芯片11主要负责与该CPU10、SRAM110、DRAM111及cache112等内存进行数据传输处理,以负责较高速的协调工作;而该南桥芯片12主要负责与BIOS ROM120、NVRAM存取控制器121、I/O控制器以及CMOS单元123、VGA125等周边硬件装置的信号控制,以负责较慢速的协调工作。由于上述各芯片、各内存等都是计算机技术人员所熟知的,因此,在此将不对其功能及内部结构作进一步详细说明,以下仅说明与本发明相关的部分。
该NVRAM122是一种可在中断电源时仍能保存资料的随机存取内存,用以储存该计算机系统1前次开机所用的BIOS程序的前BIOS程序状态值N,而该BIOS程序状态值N是通过一个转换公式而来的,该转换公式根据该次开机所用的BIOS程序的日期及版本进行编码运算以产生一个特定位数,以将该求得的特定位数作为BIOS程序状态值N。在此举例说明该BIOS程序状态值N的取得方式,由于BIOS程序一般均具有版本日期,以mm/dd/yy表示,以及版本号码,以Vn.ab表示,在本实施例中假设该BIOS程序状态值N=f(BIOS程序版本日期,BIOS程序版本)=10×mm+dd+n+(a÷10)+(b÷100),例如若BIOS程序相关信息包括Compiled 11/29/99、Version 5.28时,即BIOS程序状态值N=10×11+29+5+(2÷10)+(8÷100)=144.28,因此,一般而言,不同版本的BIOS程序间的BIOS程序状态值N很难相同。在此须特别说明的是,该转换公式除以上述BIOS程序版本日期及BIOS程序版本作为参数外,还可加入其它参数例如开机日期,也就是说,该转换公式的参数可根据所需的实施情况而定。
利用本发明的计算机开机预设值的加载方法,使该计算机装置1在开机时,将由该南桥芯片12从BIOS ROM120中读取BIOS程序以进行系统自我测试工作(Power-On Self Test;以下简称为POST),在此需要说明的是,该POST程序是一般计算机系统所需执行的必要程序,因此在此不再赘述。首先,由该计算机装置1从该BIOS ROM120中读取其所储存的BIOS程序的BIOS程序版本日期及BIOS程序版本,并根据可求出BIOS程序状态值N的转换公式求得目前的BIOS程序状态值N’;接着,以该求得的BIOS程序状态值N’与预储于该NVRAM122中的前BIOS程序状态值N进行比较,若不同,就表示目前开机用的BIOS程序版本已更新,并令BIOS ROM120中所储存的开机预设值自动储存于NVRAM122以及I/O控制器及CMOS单元123中。
这样,在该计算机装置1判定BIOS程序更新时即可自动加载开机预设值,而不需通过人工方式用主机板上的开关装置或由BIOS程序所提供的设置功能(Setup)来进行开机预设值的加载程序。
图2A表示本发明的计算机开机预设值的加载方法所需执行的各步骤流程图。如图所示,若该计算机装置1开机后,将由该南桥芯片12从BIOS ROM120中读取BIOS程序并进行系统自我测试工作(Power-On SelfTest;以下简称为POST)以取得计算机系统1上相关的硬件信息,其中该POST程序如步骤S1及步骤S2所示,在步骤S1中,由该计算机装置1设定各芯片例如南、北桥芯片(11、12)以及各控制器例如NVRAM存取控制器、I/O控制器(121、123)等,以供该计算机系统1取得各周边硬件装置的种类、机型及特性,接着进行步骤S2。
在步骤S2中,由该计算机装置1设定各内存例如SRAM、DRAM以及cache(110、111、112)等,以供该计算机系统1取得各内存的容量大小,接着进行步骤S3。
在步骤S3中,进行BIOS程序状态值转换处理,包括步骤S30以及步骤S31,首先进行步骤S30,计算机系统1从BIOS ROM120中取得目前开机用的BIOS程序的版本日期以及版本,例如日期为11月29日,版本为5.28,接着进行步骤S31。
在步骤S31中,通过一个预设的转换公式(其可预存于该BIOSROM120中以供该计算机系统1在求取BIOS程序状态值时使用)以根据在该步骤S30中所取得的版本日期以及版本进行目前BIOS程序状态值N’的转换,例如该BIOS程序状态值N’的转换公式为10×月部分+日部分+版本个位数+(版本小数点后第一位÷10)+(版本小数点后第二位÷100),也就是说,目前BIOS程序状态值N’=10×11+29+5+(2÷10)+(8÷100)=144.28,接着进行步骤S4。
在步骤S4中,由该计算机系统1从NVRAM122中取出上次BIOS程序开机后所预存的前BIOS程序状态值N(该状态值的取得方式与上述步骤S30及该步骤S31相同,在此不再赘述),接着进行步骤S5。
在步骤S5中,由该计算机系统1判断根据BIOS ROM120内的BIOS程序所转换的BIOS程序状态值N’是否与该NVRAM122所预存的前BIOS程序状态值N相同,若两值相同,则进行步骤S7;反之,则进行步骤S6。
在步骤S6中,由该计算机系统1建立一个预设值加载标志,且将其值设为1并储存在该NVRAM122中,以及将该取得的目前BIOS程序状态值N’储存在该NVRAM122中。这样,当计算机系统1读取该预设值加载标志的值为1时,即可判断出目前BIOS程序已更新,因而需自动加载开机预设值(default)以防止计算机系统1在运作过程中产生错误;再者,将取得的目前BIOS程序状态值N’储存在该NVRAM122中以供下次开机时,作为BIOS程序版本比对之用。接着进行步骤S7。
在步骤S7中,当该计算机系统1在开机且对其BIOS程序版本完成状态值转换、比对等相关处理程序之后,就继续进行后续的POST程序。接下来,参见图2B所示上述图2A中步骤S7的进一步的处理流程,如图所示,若该计算机系统1以该BIOS ROM120内的BIOS程序进行开机且根据该BIOS程序的版本日期及版本完成状态值转换以及比对等相关处理程序之后,随即进行步骤S70,由该计算机系统1从该NVRAM122中读取该预设值加载标志值是否为1,若为1,则进行步骤S71;反之,则进行步骤S72。
在步骤S71中,由该计算机系统1将该BIOS ROM120中的BIOS程序所提供的BIOS程序开机预设值(default)自动加载于I/O控制器及CMOS单元123以及NVRAM122中,接着进行步骤S72。
在步骤S72中,令该计算机系统1根据储存于I/O控制器及CMOS单元123以及NVRAM122中的开机预设值进行POST程序。
根据本发明的计算机开机预设值的加载方法,不须额外的硬件成本,只需利用计算机系统1一般现有的NVRAM122来储存前次开机的BIOS程序状态值,进而供该计算机系统1判定此次开机用的BOIS程序的版本更新与否,以作为自动加载开机预设值的依据。以提供使用者或测试人员一种可改善人工加载开机预设值的不便以及可有效避免因人工加载易于忽略而导致计算机系统运作不正常的开机预设值的加载方法。
以上所述只是本发明的较佳实施例,并不构成对本发明的实质技术内容的范围的限制,该BIOS程序状态值的转换公式并不限于以BIOS程序的版本日期或版本作为转换参数,还可加入其它具有识别BIOS程序信息的参数。本发明的实质技术内容广义地定义于本发明的权利要求书中,任何他人所完成的技术实体或方法,如与本发明的权利要求书中所定义的完全相同,或者是其等效变更,均被视为涵盖于此权利要求之中。
权利要求
1.一种计算机开机预设值的加载方法,其特征在于,可以让一个计算机系统以不同BIOS程序开机而将开机预设值自动加载的方法,该计算机系统至少包括一个用以储存前次开机用的BIOS程序的前BIOS程序状态值的第一记忆单元以及一个用以储存BIOS程序及开机预设值的第二记忆单元,该加载方法包含令该计算机系统从第二记忆单元中读取BIOS程序以进行开机程序,且取出该BIOS程序的相关资料;以及令该计算机系统根据该取得的相关资料求出该BIOS程序状态值,且从该第一记忆单元中取出前BIOS程序状态值,并将根据第二记忆单元的BIOS程序而求得的BIOS程序状态值与前BIOS程序状态值进行比较;若两值相同,则该计算机系统不须将第二内存所储存的BIOS程序加载其开机预设值,进而根据该第一内存的BIOS程序执行POST程序;反之,若两值不同,则将该根据第二记忆单元所求得的BIOS程序状态值存于该第一记忆单元中,以作为下次开机程序时的状态值对比,且将该第二内存所储存的开机预设值加载至第一记忆单元中,并使该计算机系统根据加载于第一记忆单元的开机预设值进行POST程序。
2.如权利要求1所述的计算机开机预设值的加载方法,其特征在于,所述相关资料至少包括BIOS程序的版本及日期。
3.如权利要求1所述的计算机开机预设值的加载方法,其特征在于,由所述计算机系统在第二记忆单元中设定一个预设值加载标志,以供该计算机系统作为在判定BIOS程序更新后可否加载开机预设值的依据。
4.如权利要求3所述的计算机开机预设值的加载方法,其特征在于,若所述由第二记忆单元而求得的BIOS程序状态值与第一记忆单元所储存的前BIOS程序状态值不同时,就由该计算机系统设定该预设值加载标志值为特定准位信号,以供该计算机系统在判定BIOS程序更新后可加载开机预设值的依据。
5.如权利要求4所述的计算机开机预设值的加载方法,其特征在于,若所述计算机系统将该预设值加载标志值设为特定准位信号时,将该第二内存所储存的开机预设值加载至第一记忆单元中,并使该计算机系统根据第一记忆单元的开机预设值进行POST程序。
6.如权利要求1所述的计算机开机预设值的加载方法,其特征在于,该特定准位信号是指高准位信号以及低准位信号其中之一。
7.如权利要求1所述的计算机开机预设值的加载方法,其特征在于,所述BIOS程序状态值是通过一个转换公式取得的。
8.如权利要求7所述的计算机开机预设值的加载方法,其特征在于,所述转换公式是根据该BIOS程序的相关资料进行编码运算以产生一个特定位数,该求得的特定位数将作为该BIOS程序的BIOS程序状态值。
9.如权利要求1所述的计算机开机预设值的加载方法,其特征在于,该第一记忆单元是指非易失性的记忆单元。
10.如权利要求9所述的计算机开机预设值的加载方法,其特征在于,所述非易失性的记忆单元是指NVRAM(Non-Volatile Random AccessMemory)。
11.如权利要求1所述的计算机开机预设值的加载方法,其特征在于,所述计算机系统为台式计算机及笔记本计算机其中任一种。
全文摘要
一种计算机开机预设值的加载方法,适用于具有一个非易失性内存的计算机系统中,该非易失性内存用以储存计算机系统前次开机用的BIOS程序状态值,其中,BIOS程序状态值是根据BIOS程序的相关信息与一个预设的转换公式求出的。该加载方法是由计算机系统从BIOSROM中读取目前BIOS程序以进行开机程序,且取出相关信息通过转换公式求出BIOS程序状态值;接着,将求出的状态值与储存于该非易失性内存内的状态值比较,若不同,则将求得的状态值存于非易失性内存中,作为下次开机时的BIOS程序状态值的对比,且将该BIOS ROM中所储存的开机预设值加载至非易失性内存中。
文档编号G06F11/22GK1501241SQ02149009
公开日2004年6月2日 申请日期2002年11月18日 优先权日2002年11月18日
发明者陈志伟 申请人:英业达股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1