[go: up one dir, main page]

TWI796082B - Method of keeping bios setup data - Google Patents

Method of keeping bios setup data Download PDF

Info

Publication number
TWI796082B
TWI796082B TW111101002A TW111101002A TWI796082B TW I796082 B TWI796082 B TW I796082B TW 111101002 A TW111101002 A TW 111101002A TW 111101002 A TW111101002 A TW 111101002A TW I796082 B TWI796082 B TW I796082B
Authority
TW
Taiwan
Prior art keywords
bios
setting
variable
storage unit
processing unit
Prior art date
Application number
TW111101002A
Other languages
Chinese (zh)
Other versions
TW202328918A (en
Inventor
曹登雲
Original Assignee
神雲科技股份有限公司
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 神雲科技股份有限公司 filed Critical 神雲科技股份有限公司
Priority to TW111101002A priority Critical patent/TWI796082B/en
Application granted granted Critical
Publication of TWI796082B publication Critical patent/TWI796082B/en
Publication of TW202328918A publication Critical patent/TW202328918A/en

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Electrotherapy Devices (AREA)

Abstract

A method of keeping BIOS setup data is implemented by a computing device and includes: (A) for each bios setup variable, comparing a set value of the bios setup variable storing in the computing device and a default vale of the bios setup variable so as to obtain at least one changing bios setup variable; (B) for each changing bios setup variable, obtaining a hash value of the changing bios setup variable based on variable name of the changing bios setup variable and structure name of structure corresponding to the changing bios setup variable; and (C) for each changing bios setup variable, storing the hash value and the set value of the changing bios setup variable.

Description

基本輸入輸出系統設定資料保存及沿用方法 Basic input and output system setting data storage and inheritance method

本發明是有關於一種資料保存沿用方法,特別是指一種用於沿用保存基本輸入輸出系統設定資料的基本輸入輸出系統設定資料保存及沿用方法。 The present invention relates to a method for saving and reusing data, in particular to a method for saving and reusing basic input and output system setting data for reusing and saving basic input and output system setting data.

當電腦的電源開啟,BIOS(Basic Input/Output System)就會被載入執行,以進行一開機自我檢測(POST),藉此來測試和初始化CPU、RAM、直接記憶體存取控制器、晶片組、鍵盤、軟碟、硬碟等裝置。因應不同的使用需求,系統管理者有時須變更BIOS的設定,然而,在BIOS被更新後,先前系統管理者所變更的BIOS設定會隨著BIOS之更新而遺失,實屬不便。 When the power of the computer is turned on, the BIOS (Basic Input/Output System) will be loaded and executed to perform a power-on self-test (POST), thereby testing and initializing the CPU, RAM, direct memory access controller, chip Group, keyboard, floppy disk, hard disk and other devices. In response to different usage requirements, the system administrator sometimes needs to change the BIOS settings. However, after the BIOS is updated, the BIOS settings changed by the previous system administrator will be lost with the BIOS update, which is really inconvenient.

由是,現有技術提出事先將BIOS設定資料儲存於儲存裝置,在BIOS更新完後,自儲存裝置取出BIOS設定資料來回復先前的BIOS設定,藉此,以避免因更新BIOS程式碼而破壞BIOS設定資料,造成系統管理者先前已變更之BIOS設定遺失。 Therefore, the prior art proposes to store the BIOS setting data in the storage device in advance, and after the BIOS is updated, take out the BIOS setting data from the storage device to restore the previous BIOS setting, thereby avoiding destroying the BIOS setting due to updating the BIOS code data, resulting in the loss of BIOS settings previously changed by the system administrator.

然而,現有技術在儲存BIOS設定資料時,不論BIOS設定選項所對應之值有無更動,都會將所有的BIOS設定選項之值保存起來,此將造成儲存空間之浪費,此外,現有技術在儲存BIOS設定資料時,係儲存BIOS設定選單中的BIOS設定選項名稱及其對應的設定值,若BIOS設定選項的命名做更動則將造成新的BIOS設定選單無法查找到先前所儲存之設定選項名稱,使得先前的設定無法沿用。 However, when the prior art stores the BIOS setting data, no matter whether the value corresponding to the BIOS setting option is changed or not, the values of all the BIOS setting options will be saved, which will cause a waste of storage space. When data is saved, the name of the BIOS setting option and its corresponding setting value in the BIOS setting menu are saved. If the name of the BIOS setting option is changed, it will cause the new BIOS setting menu to find Settings from cannot be inherited.

因此,本發明的目的,即在提供一種節省儲存空間且不受選項文字敘述之改變而功能失效的基本輸入輸出系統設定資料保存方法。 Therefore, the object of the present invention is to provide a basic input output system setting data storage method that saves storage space and is not subject to functional failure due to changes in the text description of the options.

於是,本發明基本輸入輸出系統設定資料保存方法,藉由一電腦裝置來實施,該電腦裝置包括一儲存有一BIOS程式的第一儲存單元、一第二儲存單元及一電連接該第一儲存單元與該第二儲存單元的處理單元,該基本輸入輸出系統設定資料保存方法包含以下步驟:(A)對於每一BIOS設定變數,藉由該處理單元比對該BIOS設定變數儲存於該第一儲存單元之設定值與其原先的預設值,以獲得至少一變更的BIOS設定變數;(B)對於每一變更的BIOS設定變數,藉由該處理單元根 據該變更的BIOS設定變數的變數名稱及該變更的BIOS設定變數所對應之結構的結構名稱,獲得該變更的BIOS設定變數所對應的一雜湊值;及(C)對於每一變更的BIOS設定變數,藉由該處理單元儲存該變更的BIOS設定變數所對應的該雜湊值及所變更的該設定值於該第二儲存單元。 Therefore, the basic input output system setting data storage method of the present invention is implemented by a computer device, and the computer device includes a first storage unit storing a BIOS program, a second storage unit, and an electrical connection to the first storage unit With the processing unit of the second storage unit, the BIOS setting data preservation method includes the following steps: (A) For each BIOS setting variable, the BIOS setting variable is stored in the first storage by the processing unit The setting value of the unit and its original default value to obtain at least one changed BIOS setting variable; (B) for each changed BIOS setting variable, by the processing unit root According to the variable name of the changed BIOS setting variable and the structure name of the structure corresponding to the changed BIOS setting variable, a hash value corresponding to the changed BIOS setting variable is obtained; and (C) for each changed BIOS setting variables, storing the hash value corresponding to the changed BIOS setting variable and the changed setting value in the second storage unit through the processing unit.

本發明的功效在於:藉由該處理單元僅儲存有變更的BIOS設定變數所對應的該雜湊值及所變更的該設定值,且所儲存之資料僅為資料型態簡易的數值型態,因此可大幅節省儲存空間,此外,所儲存的雜湊值是由BIOS設定變數的資料結構名稱以及變數名稱所獲得的,因此不受BIOS設定選項名稱之改變而功能失效,如此即能使設定可以持續沿用下去。 The effect of the present invention is: the processing unit only stores the hash value corresponding to the changed BIOS setting variable and the changed setting value, and the stored data is only a simple numerical type of data type, so It can greatly save storage space. In addition, the stored hash value is obtained from the data structure name and variable name of the BIOS setting variable, so the function will not be invalidated by changing the name of the BIOS setting option, so that the setting can be continuously used go down.

11:電腦裝置 11:Computer device

111:第一儲存單元 111: the first storage unit

112:第二儲存單元 112: the second storage unit

113:處理單元 113: Processing unit

12:遠端裝置 12: Remote device

21~26:步驟 21~26: Steps

31~40:步驟 31~40: Steps

331~332:子步驟 331~332: sub-steps

本發明的其他的特徵及功效,將於參照圖式的實施方式中清楚地呈現,其中:圖1是一方塊圖,說明實施本發明基本輸入輸出系統設定資料保存及沿用方法之實施例的一電腦裝置與一遠端裝置連接;圖2是一流程圖,說明本發明基本輸入輸出系統設定資料保存及沿用方法之實施例的一BIOS設定資料保存程序; 圖3是一流程圖,說明本發明基本輸入輸出系統設定資料保存及沿用方法之實施例的一BIOS設定資料沿用程序;及圖4是一流程圖,說明該電腦裝置如何修改其BIOS設定。 Other features and effects of the present invention will be clearly presented in the implementation manner with reference to the drawings, wherein: Fig. 1 is a block diagram illustrating an embodiment of implementing the method for saving and continuing to use the basic input and output system setting data of the present invention The computer device is connected with a remote device; Fig. 2 is a flow chart illustrating a BIOS setting data saving program of an embodiment of the present invention's basic input and output system setting data saving and continuing use method; Fig. 3 is a flowchart illustrating a BIOS setting data follow-up program of an embodiment of the present invention's BIOS setting data preservation and use method; and Fig. 4 is a flow chart illustrating how the computer device revises its BIOS settings.

參閱圖1,本發明基本輸入輸出系統設定資料保存及沿用方法的實施例藉由一電腦裝置11來實施,該電腦裝置11包括一儲存有一BIOS程式的第一儲存單元111、一第二儲存單元112及一電連接該第一儲存單元111與該第二儲存單元112的處理單元113。該BIOS程式包含多個BIOS設定變數及其對應之值。該電腦裝置11還經由一通訊網路100與一遠端裝置12連接,該遠端裝置12用於傳送一相關於該電腦裝置11之BIOS的設定修改需求以遠端修改該電腦裝置11之BIOS的設定。 Referring to Fig. 1, the embodiment of the present invention's basic input output system setting data preservation and continued use method is implemented by a computer device 11, and this computer device 11 includes a first storage unit 111 storing a BIOS program, a second storage unit 112 and a processing unit 113 electrically connected to the first storage unit 111 and the second storage unit 112 . The BIOS program includes multiple BIOS setting variables and their corresponding values. The computer device 11 is also connected to a remote device 12 via a communication network 100, and the remote device 12 is used to transmit a configuration modification request related to the BIOS of the computer device 11 to remotely modify the BIOS of the computer device 11. set up.

在本實施例中,該電腦裝置11之實施態樣可為一個人電腦、一筆記型電腦,或一伺服器等,該第一儲存單元111之實施態樣例如為一NVRAM,該第二儲存單元112之實施態樣例如為一EEPROM。該遠端裝置12之實施態樣可為一個人電腦、一筆記型電腦、一伺服器、一平板電腦,或一智慧型手機等。 In this embodiment, the implementation of the computer device 11 can be a personal computer, a notebook computer, or a server, etc., the implementation of the first storage unit 111 is, for example, an NVRAM, and the second storage unit The implementation of 112 is, for example, an EEPROM. The implementation of the remote device 12 can be a personal computer, a notebook computer, a server, a tablet computer, or a smart phone.

以下將藉由本發明基本輸入輸出系統設定資料保存及沿用方法之實施例來說明該電腦裝置11與該遠端裝置12中各元件之 作動,該實施例包含一BIOS設定資料保存程序及一BIOS設定資料沿用程序。 The following will illustrate the relationship between the computer device 11 and the components in the remote device 12 by using an embodiment of the present invention's BIOS setting data storage and follow-up method. In action, this embodiment includes a BIOS setting data saving program and a BIOS setting data inheriting program.

參閱圖1與圖2,該BIOS設定資料保存程序說明了如何保存BIOS設定資料,並包含下列步驟。 Referring to FIG. 1 and FIG. 2, the BIOS setting data saving program illustrates how to save the BIOS setting data, and includes the following steps.

在步驟21中,該處理單元113判定是否進入BIOS設定選單。當該處理單元113判定出進入BIOS設定選單時,流程進行步驟22;當該處理單元113判定出不進入BIOS設定選單時,流程結束。 In step 21, the processing unit 113 determines whether to enter the BIOS setting menu. When the processing unit 113 determines to enter the BIOS setting menu, the process proceeds to step 22; when the processing unit 113 determines not to enter the BIOS setting menu, the process ends.

在步驟22中,該處理單元113判定是否接收到一相關於該電腦裝置11之BIOS的設定儲存需求(例如,系統管理者是否觸發BIOS設定選單中的儲存選項)。當該處理單元113判定出有接收到該設定儲存需求時,流程進行步驟23;當該處理單元113判定出未接收到該設定儲存需求時,流程進行步驟26。 In step 22, the processing unit 113 determines whether a configuration storage request related to the BIOS of the computer device 11 is received (for example, whether the system administrator triggers the storage option in the BIOS configuration menu). When the processing unit 113 determines that the setting storage request has been received, the process proceeds to step 23 ; when the processing unit 113 determines that the setting storage request is not received, the process proceeds to step 26 .

在步驟23中,對於每一BIOS設定變數,該處理單元113比對該BIOS設定變數儲存於該第一儲存單元111之設定值與其原先的預設值,以獲得至少一變更的BIOS設定變數。值得一提的是,該BIOS程式還會包含每一BIOS設定變數的原廠預設值,以便於回復原廠設定。 In step 23, for each BIOS setting variable, the processing unit 113 compares the setting value of the BIOS setting variable stored in the first storage unit 111 with its original default value to obtain at least one changed BIOS setting variable. It is worth mentioning that the BIOS program will also include the original factory default values of each BIOS setting variable, so as to restore the original factory settings.

在步驟24中,對於每一變更的BIOS設定變數,該處理單元113根據該變更的BIOS設定變數的變數名稱及該變更的BIOS設定變數所對應之結構的結構名稱,獲得該變更的BIOS設定變數 所對應的一雜湊值。 In step 24, for each changed BIOS setting variable, the processing unit 113 obtains the changed BIOS setting variable according to the variable name of the changed BIOS setting variable and the structure name of the structure corresponding to the changed BIOS setting variable corresponding to a hash value.

在步驟25中,對於每一變更的BIOS設定變數,該處理單元113儲存該變更的BIOS設定變數所對應的該雜湊值及所變更的該設定值於該第二儲存單元112。由於所儲存的雜湊值是由BIOS設定變數的資料結構名稱以及變數名稱所獲得的,因此不受BIOS設定選項名稱之改變而功能失效,如此即能使設定可以持續沿用下去。舉例來說,BIOS設定變數的BIOS設定選項名稱例如為CPU FAN Speed,BIOS設定變數的變數名稱例如為Fanspeed,BIOS 設定變數所對應之結構的結構名稱例如為FanStruct,該第二儲存單元112所儲存之對應BIOS設定變數的資料係為由BIOS設定變數的資料結構名稱“FanStruct”以及變數名稱“Fanspeed”計算出的雜湊值,即便BIOS設定變數的BIOS設定選項名稱改為CPU Min FAN Speed,所計算出之雜湊值也不會因BIOS設定選項名稱之改變而功能失效。 In step 25 , for each changed BIOS setting variable, the processing unit 113 stores the hash value corresponding to the changed BIOS setting variable and the changed setting value in the second storage unit 112 . Since the stored hash value is obtained from the data structure name and variable name of the BIOS setting variable, the function will not be invalidated due to the change of the BIOS setting option name, so that the setting can be continuously used. For example, the BIOS setting option name of the BIOS setting variable is CPU FAN Speed, the variable name of the BIOS setting variable is Fanspeed, the structure name of the structure corresponding to the BIOS setting variable is FanStruct, and the second storage unit 112 stores The data corresponding to the BIOS setting variable is a hash value calculated from the data structure name "FanStruct" of the BIOS setting variable and the variable name "Fanspeed". Even if the BIOS setting option name of the BIOS setting variable is changed to CPU Min FAN Speed, the calculated The output hash value will not lose its function due to the change of the name of the BIOS setting option.

在步驟26中,該處理單元113判定是否離開BIOS設定選單。當該處理單元113判定出離開BIOS設定選單時,流程結束;當該伺服器14判定出不離開BIOS設定選單時,流程回到步驟22。 In step 26, the processing unit 113 determines whether to leave the BIOS setup menu. When the processing unit 113 determines to leave the BIOS setup menu, the process ends; when the server 14 determines not to leave the BIOS setup menu, the process returns to step 22 .

藉由該BIOS設定資料保存程序之執行,每一變更的BIOS設定變數所對應的該雜湊值及所變更的該設定值即可被保存在該第二儲存單元112,如此一來,即便該BIOS程式被更新也不會 影響到儲存於該第二儲存單元112的BIOS設定資料。 Through the execution of the BIOS setting data saving program, the hash value corresponding to each changed BIOS setting variable and the changed setting value can be stored in the second storage unit 112, so that even if the BIOS The program is updated and will not It affects the BIOS setting data stored in the second storage unit 112 .

參閱圖1與圖3,該BIOS設定資料沿用程序說明了如何沿用所保存的BIOS設定資料,並包含下列步驟。 Referring to FIG. 1 and FIG. 3 , the BIOS setting data inheriting program illustrates how to inherit the saved BIOS setting data, and includes the following steps.

在步驟31中,該處理單元113執行該開機自我檢測,並判定此次開機自我檢測是否為該BIOS程式被更新後的第一次開機自我檢測。當該處理單元113判定出此次開機自我檢測為該BIOS程式被更新後的第一次開機自我檢測時,流程進行步驟32;當該處理單元113判定出此次開機自我檢測非為該BIOS程式被更新後的第一次開機自我檢測時,流程進行步驟34。 In step 31 , the processing unit 113 executes the POST and determines whether the POST is the first POST after the BIOS program is updated. When the processing unit 113 determines that the POST is the first POST after the BIOS program is updated, the flow proceeds to step 32; when the processing unit 113 determines that the POST is not the BIOS program When the updated POST is performed for the first time, the process proceeds to step 34 .

在步驟32中,該處理單元113自該第二儲存單元112獲得每一變更的BIOS設定變數所對應的雜湊值及設定值。 In step 32 , the processing unit 113 obtains a hash value and a setting value corresponding to each changed BIOS setting variable from the second storage unit 112 .

在步驟33中,該處理單元113根據每一變更的BIOS設定變數所對應的雜湊值及設定值,修改該電腦裝置11之BIOS的設定,並重新啟動該電腦裝置11。 In step 33 , the processing unit 113 modifies the BIOS setting of the computer device 11 according to the hash value and the setting value corresponding to each changed BIOS setting variable, and restarts the computer device 11 .

值得一提的是,步驟33包含以下子步驟(見圖4)。 It is worth mentioning that step 33 includes the following sub-steps (see Figure 4).

在子步驟331中,對於每一變更的BIOS設定變數所對應的雜湊值,藉由該處理單元113根據該雜湊值,自該第一儲存單元111所儲存之BIOS設定變數獲得對應於該雜湊值的待設定BIOS設定變數。 In sub-step 331, for the hash value corresponding to each changed BIOS setting variable, the processing unit 113 obtains the corresponding hash value from the BIOS setting variable stored in the first storage unit 111 according to the hash value The BIOS setting variable to be set.

在子步驟332中,對於每一待設定BIOS設定變數,藉由 該處理單元113將該待設定BIOS設定變數之值設定為該待設定BIOS設定變數所對應之雜湊值所對應的設定值,並重新啟動該電腦裝置11。 In sub-step 332, for each BIOS setting variable to be set, by The processing unit 113 sets the value of the BIOS setting variable to be set as the setting value corresponding to the hash value corresponding to the BIOS setting variable to be set, and restarts the computer device 11 .

在步驟34中,對於每一BIOS設定變數,該處理單元113比對該BIOS設定變數儲存於該第一儲存單元111之設定值與其原先的預設值,以獲得至少一更動的BIOS設定變數。 In step 34, for each BIOS setting variable, the processing unit 113 compares the setting value of the BIOS setting variable stored in the first storage unit 111 with its original default value to obtain at least one modified BIOS setting variable.

在步驟35中,對於每一更動的BIOS設定變數,該處理單元113根據該更動的BIOS設定變數的變數名稱及該更動的BIOS設定變數所對應之結構的結構名稱,獲得該更動的BIOS設定變數所對應的一雜湊值。 In step 35, for each changed BIOS setting variable, the processing unit 113 obtains the changed BIOS setting variable according to the variable name of the changed BIOS setting variable and the structure name of the structure corresponding to the changed BIOS setting variable corresponding to a hash value.

在步驟36中,對於每一更動的BIOS設定變數,該處理單元113判定該更動的BIOS設定變數儲存於該第一儲存單元111之設定值是否相同於儲存於該第二儲存單元112之設定值,其中,該更動的BIOS設定變數儲存於該第二儲存單元112之設定值係為儲存於該第二儲存單元112中對應該更動的BIOS設定變數之雜湊值的設定值。當該處理單元113判定出該更動的BIOS設定變數儲存於該第一儲存單元111之設定值不相同於儲存於該第二儲存單元112之設定值時,流程進行步驟37;當該處理單元113判定出該更動的BIOS設定變數儲存於該第一儲存單元111之設定值相同於儲存於該第二儲存單元112之設定值時,流程進行步驟38。 In step 36, for each changed BIOS setting variable, the processing unit 113 determines whether the changed BIOS setting variable stored in the first storage unit 111 is the same as the set value stored in the second storage unit 112 , wherein, the set value of the changed BIOS setting variable stored in the second storage unit 112 is the set value stored in the second storage unit 112 corresponding to the hash value of the changed BIOS setting variable. When the processing unit 113 determines that the changed BIOS setting variable is stored in the first storage unit 111 and the setting value stored in the second storage unit 112 is not the same as the setting value stored in the second storage unit 112, the process proceeds to step 37; when the processing unit 113 When it is determined that the set value of the modified BIOS setting variable stored in the first storage unit 111 is the same as the set value stored in the second storage unit 112 , the process proceeds to step 38 .

在步驟37中,該處理單元113將該第二儲存單元112所存之該更動的BIOS設定變數所對應的該設定值更新為該更動的BIOS設定變數在該第一儲存單元111所存之設定值,並將未儲存於該第二儲存單元112之更動的BIOS設定變數所對應的該雜湊值及其儲存於該第一儲存單元111之設定值儲存於該第二儲存單元112,接著進行步驟38。 In step 37, the processing unit 113 updates the setting value corresponding to the changed BIOS setting variable stored in the second storage unit 112 to the setting value stored in the first storage unit 111 by the changed BIOS setting variable, And store the hash value corresponding to the modified BIOS setting variable not stored in the second storage unit 112 and the setting value stored in the first storage unit 111 in the second storage unit 112 , and then proceed to step 38 .

在步驟38中,該處理單元113判定是否接收到來自該遠端裝置12的該設定修改需求。當該處理單元113判定出有接收到來自該遠端裝置12的該設定修改需求時,流程進行步驟39;當該處理單元113判定出無接收到來自該遠端裝置12的該設定修改需求時,流程進行步驟40。 In step 38 , the processing unit 113 determines whether the configuration modification request from the remote device 12 is received. When the processing unit 113 determines that the setting modification request from the remote device 12 is received, the process proceeds to step 39; when the processing unit 113 determines that the setting modification request from the remote device 12 is not received , the process proceeds to step 40.

在步驟39中,該處理單元113根據該設定修改需求修改該電腦裝置11之BIOS的設定,並重新啟動該電腦裝置11。 In step 39 , the processing unit 113 modifies the BIOS settings of the computer device 11 according to the configuration modification requirement, and restarts the computer device 11 .

值得一提的是,由於該電腦裝置11可能會接收到來自遠端的設定修改需求,而遠端的設定修改需求所修改的BIOS設定變數可能不限於步驟21~26中的該至少一變更的BIOS設定變數,還可能包含其他的BIOS設定變數,因此需進行步驟34以重新確定有被遠端設定更動到的BIOS設定變數,當有更動到其他的BIOS設定變數時,在步驟37中,還進一步將未儲存於該第二儲存單元112之更動的BIOS設定變數所對應的該雜湊值及其儲存於該第一儲存單 元111之設定值儲存於該第二儲存單元112,以確保遠端的設定修改需求也能被保存於該第二儲存單元112。 It is worth mentioning that since the computer device 11 may receive a configuration modification request from a remote end, the BIOS configuration variable modified by the remote configuration modification request may not be limited to the at least one changed in steps 21-26. The BIOS setting variables may also include other BIOS setting variables. Therefore, step 34 is required to re-determine the BIOS setting variables changed by the remote setting. When other BIOS setting variables are changed, in step 37, also Further store the hash value corresponding to the modified BIOS setting variable that is not stored in the second storage unit 112 and store it in the first storage unit The setting value of the unit 111 is stored in the second storage unit 112 , so as to ensure that the modification requirements of remote settings can also be stored in the second storage unit 112 .

在步驟40中,該處理單元113繼續執行該開機自我檢測。 In step 40, the processing unit 113 continues to perform the POST.

以下利用三個使用情境來說明該BIOS設定資料沿用程序之執行。 The following uses three usage scenarios to illustrate the execution of the BIOS setting data inheritance program.

在第一種使用情境下,該電腦裝置11在該BIOS程式被更新後進行第一次開機,此時,在進行步驟31之判定時,該處理單元113判定出此次開機自我檢測為該BIOS程式被更新後的第一次開機自我檢測,於是,該處理單元113接著執行步驟32~33以沿用之前保存於該第二儲存單元112的BIOS設定資料,接著即重新啟動該電腦裝置11。 In the first usage scenario, the computer device 11 is booted for the first time after the BIOS program is updated. At this time, when performing the determination in step 31, the processing unit 113 determines that the boot self-test is the BIOS. The first boot self-test after the program is updated, so the processing unit 113 then executes steps 32 to 33 to continue to use the BIOS setting data previously stored in the second storage unit 112, and then restarts the computer device 11.

在第二種使用情境下,該電腦裝置11在該BIOS程式被更新後第二次開機,此時,在進行步驟31之判定時,該處理單元113判定出此次開機自我檢測非為該BIOS程式被更新後的第一次開機自我檢測,於是該處理單元113接著執行步驟34~36,由於第二次開機前,該電腦裝置11尚未接收到來自該遠端裝置12的該設定修改需求,因此,每一更動的BIOS設定變數儲存於該第一儲存單元111之設定值就是在前一次(亦即,第一次)開機時沿用之前保存於該第二儲存單元112的設定值,故在進行步驟36之判定時,該處理單元113判定出每一更動的BIOS設定變數儲存於該第一儲存單元 111之設定值相同於儲存於該第二儲存單元112之設定值,於是,流程接著進行步驟38,若該處理單元113判定出有接收到來自該遠端裝置12的該設定修改需求時,該處理單元113接著進行步驟39,若該設定修改需求有變更到任一更動的BIOS設定變數儲存於該第一儲存單元111之設定值時,在下一次開機進行步驟36時,該處理單元113即會判定出每一更動的BIOS設定變數儲存於該第一儲存單元111之設定值非皆相同於儲存於該第二儲存單元112之設定值,以下在第三種使用情境詳述後續之流程。 In the second use situation, the computer device 11 is turned on for the second time after the BIOS program is updated. At this time, when the judgment in step 31 is performed, the processing unit 113 determines that the self-test of the boot is not the BIOS. After the program is updated, the first power-on self-test is performed, so the processing unit 113 then executes steps 34-36. Since the computer device 11 has not received the setting modification request from the remote device 12 before the second power-on, Therefore, the setting value stored in the first storage unit 111 by the BIOS setting variable of each change is exactly the setting value stored in the second storage unit 112 before the previous (that is, the first time) startup, so in When performing the determination of step 36, the processing unit 113 determines that the BIOS setting variables for each change are stored in the first storage unit The setting value of 111 is the same as the setting value stored in the second storage unit 112, so the flow proceeds to step 38, if the processing unit 113 determines that the setting modification request from the remote device 12 is received, the The processing unit 113 proceeds to step 39. If the setting modification requirement has changed to any modified BIOS setting variable and is stored in the set value of the first storage unit 111, the processing unit 113 will immediately perform step 36 when the next boot is performed. It is determined that the setting values stored in the first storage unit 111 for each modified BIOS setting variable are not all the same as the setting values stored in the second storage unit 112 , and the following process will be described in detail in the third usage scenario.

在第三種使用情境下,該電腦裝置11在該BIOS程式被更新後第三次開機,此時,在進行步驟31之判定時,該處理單元113判定出此次開機自我檢測非為該BIOS程式被更新後的第一次開機自我檢測,於是該處理單元113接著執行步驟34~36,由於第三次開機前,該電腦裝置11已接收過來自該遠端裝置12的該設定修改需求,而有變更到任一更動的BIOS設定變數儲存於該第一儲存單元111之設定值,因此,該處理單元113即會判定出每一更動的BIOS設定變數儲存於該第一儲存單元111之設定值非皆相同於儲存於該第二儲存單元112之設定值,於是流程進行步驟37,該處理單元113將該第二儲存單元112所存之該更動的BIOS設定變數所對應的該設定值更新為該變更的BIOS設定變數在該第一儲存單元111所存之設定值,並將未儲存於該第二儲存單元112之更動的 BIOS設定變數所對應的該雜湊值及其儲存於該第一儲存單元111之設定值儲存於該第二儲存單元112,以更新該第二儲存單元112所保存的BIOS設定資料,藉此,該遠端裝置12所傳送的該設定修改需求也會同步被更新到該第二儲存單元112所保存的BIOS設定資料,流程接著進行步驟38,類似地,若該處理單元113判定出有接收到來自該遠端裝置12的該設定修改需求時,該處理單元113接著進行步驟39,後續開機的情境依此類推。 In the third usage scenario, the computer device 11 is turned on for the third time after the BIOS program is updated. At this time, when the judgment in step 31 is performed, the processing unit 113 determines that the self-test of the boot is not the BIOS. After the program is updated, the first power-on self-test is performed, so the processing unit 113 proceeds to execute steps 34-36. Since the computer device 11 has received the setting modification request from the remote device 12 before the third power-on, And any changed BIOS setting variable is stored in the setting value of the first storage unit 111, therefore, the processing unit 113 will determine that each changed BIOS setting variable is stored in the setting of the first storage unit 111 The values are not all the same as the set value stored in the second storage unit 112, so the flow proceeds to step 37, the processing unit 113 updates the set value corresponding to the modified BIOS setting variable stored in the second storage unit 112 as The changed BIOS setting variable is stored in the first storage unit 111 and will not be stored in the second storage unit 112. The hash value corresponding to the BIOS setting variable and the setting value stored in the first storage unit 111 are stored in the second storage unit 112, so as to update the BIOS setting data stored in the second storage unit 112, thereby, the The setting modification request transmitted by the remote device 12 will also be updated synchronously to the BIOS setting data stored in the second storage unit 112, and the process proceeds to step 38. Similarly, if the processing unit 113 determines that a request from When the setting modification of the remote device 12 is required, the processing unit 113 then proceeds to step 39 , and so on for subsequent power-on scenarios.

綜上所述,本發明基本輸入輸出系統設定資料保存及沿用方法,藉由該處理單元113僅儲存有變更的BIOS設定變數所對應的該雜湊值及所變更的該設定值,且所儲存之資料僅為資料型態簡易的數值型態,因此可大幅節省該第二儲存單元112的儲存空間,此外,所儲存的雜湊值是由BIOS設定變數的資料結構名稱以及變數名稱所獲得的,因此不受BIOS設定選項名稱之改變而功能失效,如此即能使設定可以持續沿用下去,再者,該遠端裝置12所傳送的該設定修改需求也會同步被更新到該第二儲存單元112所保存的BIOS設定資料,故確實能達成本發明的目的。 To sum up, in the method for saving and continuing to use the BIOS setting data of the present invention, the processing unit 113 only stores the hash value corresponding to the changed BIOS setting variable and the changed setting value, and the stored The data is only a simple numerical type of the data type, so the storage space of the second storage unit 112 can be greatly saved. In addition, the stored hash value is obtained by the data structure name and the variable name of the BIOS setting variable, so The function is not invalid due to the change of the name of the BIOS setting option, so that the setting can be continuously used. Moreover, the setting modification request sent by the remote device 12 will also be updated to the second storage unit 112 synchronously. The stored BIOS setting data can indeed achieve the purpose of the present invention.

惟以上所述者,僅為本發明的實施例而已,當不能以此限定本發明實施的範圍,凡是依本發明申請專利範圍及專利說明書內容所作的簡單的等效變化與修飾,皆仍屬本發明專利涵蓋的範圍內。 But the above-mentioned ones are only embodiments of the present invention, and should not limit the scope of the present invention. All simple equivalent changes and modifications made according to the patent scope of the present invention and the content of the patent specification are still within the scope of the present invention. Within the scope covered by the patent of the present invention.

21~26:步驟 21~26: Steps

Claims (7)

一種基本輸入輸出系統設定資料保存方法,藉由一電腦裝置來實施,該電腦裝置包括一儲存有一BIOS程式的第一儲存單元、一第二儲存單元及一電連接該第一儲存單元與該第二儲存單元的處理單元,該基本輸入輸出系統設定資料保存方法包含以下步驟:(O)藉由該處理單元判定是否接收到一相關於該電腦裝置之BIOS的設定儲存需求,其中,當該處理單元判定出有接收到一相關於該電腦裝置之BIOS的設定儲存需求時,步驟(A)被執行;(A)對於每一BIOS設定變數,藉由該處理單元比對該BIOS設定變數儲存於該第一儲存單元之設定值與其原先的預設值,以獲得至少一變更的BIOS設定變數;(B)對於每一變更的BIOS設定變數,藉由該處理單元根據該變更的BIOS設定變數的變數名稱及該變更的BIOS設定變數所對應之結構的結構名稱,獲得該變更的BIOS設定變數所對應的一雜湊值;及(C)對於每一變更的BIOS設定變數,藉由該處理單元儲存該變更的BIOS設定變數所對應的該雜湊值及所變更的該設定值於該第二儲存單元。 A basic input output system setting data storage method, implemented by a computer device, the computer device includes a first storage unit storing a BIOS program, a second storage unit, and an electrical connection between the first storage unit and the second storage unit Two processing units of the storage unit, the basic input output system setting data storage method includes the following steps: (O) determine whether a setting storage requirement related to the BIOS of the computer device is received by the processing unit, wherein when the processing When the unit determines that a setting storage requirement related to the BIOS of the computer device has been received, step (A) is executed; (A) for each BIOS setting variable, the processing unit compares the BIOS setting variable stored in The set value of the first storage unit and its original preset value are used to obtain at least one changed BIOS set variable; (B) for each changed BIOS set variable, by the processing unit according to the changed BIOS set variable variable name and the structure name of the structure corresponding to the BIOS setting variable of the change, obtain a hash value corresponding to the BIOS setting variable of the change; and (C) for each changed BIOS setting variable, store by the processing unit The hash value corresponding to the changed BIOS setting variable and the changed setting value are stored in the second storage unit. 一種沿用如請求項1之保存的基本輸入輸出系統設定資料的方法,包含以下步驟:(D)藉由該處理單元,執行一開機自我檢測,並判定此次開機自我檢測是否為該BIOS程式被更新後的第一次 開機自我檢測;(E)當該處理單元判定出此次開機自我檢測為該BIOS程式被更新後的第一次開機自我檢測時,藉由該處理單元自該第二儲存單元獲得每一變更的BIOS設定變數所對應的雜湊值及設定值;及(F)藉由該處理單元根據每一變更的BIOS設定變數所對應的雜湊值及設定值,修改該電腦裝置之BIOS的設定。 A method for continuing to use the saved basic input and output system setting data as in claim 1, comprising the following steps: (D) performing a power-on self-test by the processing unit, and determining whether the power-on self-test is the result of the BIOS program being activated first time after update POST; (E) when the processing unit determines that the POST is the first POST after the BIOS program is updated, the processing unit obtains the information of each change from the second storage unit The hash value and the setting value corresponding to the BIOS setting variable; and (F) modifying the BIOS setting of the computer device according to the hash value and setting value corresponding to each changed BIOS setting variable by the processing unit. 如請求項2所述的基本輸入輸出系統設定資料沿用方法,在步驟(F)後,還包含一步驟(G),重新啟動該電腦裝置。 The method for inheriting the setting data of the basic input and output system as described in claim 2, after the step (F), further includes a step (G) of restarting the computer device. 如請求項2所述的基本輸入輸出系統設定資料沿用方法,該第一儲存單元所儲存之該BIOS程式包含每一BIOS設定變數及其對應之值,其中,步驟(F)包含以下子步驟:(F-1)對於每一變更的BIOS設定變數所對應的雜湊值,藉由該處理單元根據該雜湊值,自該第一儲存單元所儲存之BIOS設定變數獲得對應於該雜湊值的待設定BIOS設定變數;(F-2)對於每一待設定BIOS設定變數,藉由該處理單元將該待設定BIOS設定變數之值設定為該待設定BIOS設定變數所對應之雜湊值所對應的設定值。 According to the basic input and output system setting data inheritance method described in claim 2, the BIOS program stored in the first storage unit includes each BIOS setting variable and its corresponding value, wherein step (F) includes the following sub-steps: (F-1) For the hash value corresponding to each changed BIOS setting variable, the processing unit obtains the corresponding hash value to be set from the BIOS setting variable stored in the first storage unit according to the hash value BIOS setting variable; (F-2) For each BIOS setting variable to be set, the processing unit sets the value of the BIOS setting variable to be the setting value corresponding to the hash value corresponding to the BIOS setting variable to be set . 如請求項2所述的基本輸入輸出系統設定資料沿用方法,該第一儲存單元所儲存之該BIOS程式包含每一BIOS設定變數及其對應之值,在步驟(D)之後,還包含以下步 驟:(H)當該處理單元判定出此次開機自我檢測非為該BIOS程式被更新後的第一次開機自我檢測時,對於每一BIOS設定變數,該處理單元比對該BIOS設定變數儲存於該第一儲存單元之設定值與其原先的預設值,以獲得至少一更動的BIOS設定變數;(I)對於每一更動的BIOS設定變數,該處理單元根據該更動的BIOS設定變數的變數名稱及該更動的BIOS設定變數所對應之結構的結構名稱,獲得該更動的BIOS設定變數所對應的一雜湊值;(J)對於每一更動的BIOS設定變數,藉由該處理單元判定該更動的BIOS設定變數儲存於該第一儲存單元之設定值是否相同於儲存於該第二儲存單元之設定值;及(K)對於每一更動的BIOS設定變數,當該處理單元判定出該更動的BIOS設定變數儲存於該第一儲存單元之設定值不相同於儲存於該第二儲存單元之設定值時,該處理單元將該第二儲存單元所存之該更動的BIOS設定變數所對應的該設定值更新為該更動的BIOS設定變數在該第一儲存單元所存之設定值,並將未儲存於該第二儲存單元之更動的BIOS設定變數所對應的該雜湊值及其儲存於該第一儲存單元之設定值儲存於該第二儲存單元。 As the basic input and output system setting data inheritance method described in claim 2, the BIOS program stored in the first storage unit includes each BIOS setting variable and its corresponding value, after step (D), it also includes the following steps Step: (H) When the processing unit determines that this POST is not the first POST after the BIOS program is updated, for each BIOS setting variable, the processing unit compares the BIOS setting variable stored The setting value of the first storage unit and its original default value, to obtain at least one changed BIOS setting variable; (1) for each changing BIOS setting variable, the processing unit is based on the variable of the changed BIOS setting variable Name and the structure name of the structure corresponding to the BIOS setting variable of the change, obtain a hash value corresponding to the BIOS setting variable of the change; (J) for each BIOS setting variable of the change, determine the change by the processing unit Whether the setting value of the BIOS setting variable stored in the first storage unit is the same as the setting value stored in the second storage unit; and (K) for each changed BIOS setting variable, when the processing unit determines that the changed When the setting value of the BIOS setting variable stored in the first storage unit is different from the setting value stored in the second storage unit, the processing unit stores the setting corresponding to the modified BIOS setting variable stored in the second storage unit The value is updated to the set value stored in the first storage unit by the changed BIOS setting variable, and the hash value corresponding to the changed BIOS setting variable that is not stored in the second storage unit is stored in the first storage unit. The setting value of the unit is stored in the second storage unit. 如請求項5所述的基本輸入輸出系統設定資料沿用方法,該電腦裝置還經由一通訊網路與一遠端裝置連接,該遠端裝置用於傳送一相關於該電腦裝置之BIOS的設定修 改需求以遠端修改該電腦裝置之BIOS的設定,在步驟(K)之後,還包含以下步驟:(L)藉由該處理單元判定是否接收到來自該遠端裝置的該設定修改需求;及(M)當該處理單元判定出有接收到來自該遠端裝置的該設定修改需求時,藉由該處理單元根據該設定修改需求修改該電腦裝置之BIOS的設定。 According to the basic input and output system setting data inheritance method described in claim 5, the computer device is also connected to a remote device through a communication network, and the remote device is used to transmit a configuration modification related to the BIOS of the computer device. Modifying the requirement to remotely modify the setting of the BIOS of the computer device, after the step (K), also includes the following steps: (L) determining whether the setting modification request from the remote device is received by the processing unit; and (M) When the processing unit determines that the setting modification request from the remote device is received, the processing unit modifies the BIOS setting of the computer device according to the setting modification request. 如請求項6所述的基本輸入輸出系統設定資料沿用方法,在步驟(M)後,還包含一步驟(N),重新啟動該電腦裝置。 The method for inheriting the setting data of the basic input and output system as described in claim 6, after the step (M), further includes a step (N) of restarting the computer device.
TW111101002A 2022-01-10 2022-01-10 Method of keeping bios setup data TWI796082B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW111101002A TWI796082B (en) 2022-01-10 2022-01-10 Method of keeping bios setup data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW111101002A TWI796082B (en) 2022-01-10 2022-01-10 Method of keeping bios setup data

Publications (2)

Publication Number Publication Date
TWI796082B true TWI796082B (en) 2023-03-11
TW202328918A TW202328918A (en) 2023-07-16

Family

ID=86692231

Family Applications (1)

Application Number Title Priority Date Filing Date
TW111101002A TWI796082B (en) 2022-01-10 2022-01-10 Method of keeping bios setup data

Country Status (1)

Country Link
TW (1) TWI796082B (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040268106A1 (en) * 2003-06-27 2004-12-30 American Megatrends, Inc. Method and system for detecting the validity of and recovering configuration data
US20070061561A1 (en) * 2005-09-01 2007-03-15 Yokogawa Electric Corporation OS starting method and apparatus using the same
TW200842627A (en) * 2007-02-22 2008-11-01 Microsoft Corp Techniques to cross-synchronize data
CN102982265A (en) * 2011-09-07 2013-03-20 宏碁股份有限公司 Authentication method for setting access basic input/output system
TW201935234A (en) * 2017-10-25 2019-09-01 香港商阿里巴巴集團服務有限公司 Bios flashing method and bios image file processing method
CN113434202A (en) * 2020-09-18 2021-09-24 阿里巴巴集团控股有限公司 Starting method and device of equipment, electronic equipment and computer storage medium

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040268106A1 (en) * 2003-06-27 2004-12-30 American Megatrends, Inc. Method and system for detecting the validity of and recovering configuration data
US20070061561A1 (en) * 2005-09-01 2007-03-15 Yokogawa Electric Corporation OS starting method and apparatus using the same
TW200842627A (en) * 2007-02-22 2008-11-01 Microsoft Corp Techniques to cross-synchronize data
CN102982265A (en) * 2011-09-07 2013-03-20 宏碁股份有限公司 Authentication method for setting access basic input/output system
TW201935234A (en) * 2017-10-25 2019-09-01 香港商阿里巴巴集團服務有限公司 Bios flashing method and bios image file processing method
CN113434202A (en) * 2020-09-18 2021-09-24 阿里巴巴集团控股有限公司 Starting method and device of equipment, electronic equipment and computer storage medium

Also Published As

Publication number Publication date
TW202328918A (en) 2023-07-16

Similar Documents

Publication Publication Date Title
CN106201563B (en) Configuration method and device of starting parameters and method and device for starting mainboard
US9098301B2 (en) Electronic device and booting method
US10402189B2 (en) Electronic apparatus and firmware update method thereof
US10642623B1 (en) Preserving firmware settings during firmware updates
US11030047B2 (en) Information handling system and method to restore system firmware to a selected restore point
US20150074386A1 (en) Boot method and boot system
CN105808270A (en) Firmware variable updating method
US11321077B1 (en) Live updating of firmware behavior
WO2023098052A1 (en) Server operation and maintenance method and apparatus, and device and storage medium
WO2017219861A1 (en) Method and device for controlling system start-up mode
JP2019204488A (en) Update of firmware by remote utility
CN117130672A (en) Server startup process control method, system, terminal and storage medium
CN113360257B (en) A BIOS-based information operation method, device, storage medium and equipment
CN101241442A (en) Computer system with double-opener program code area and starting method thereof
TWI796082B (en) Method of keeping bios setup data
CN108958823B (en) How to Modify the Setting Value of Basic Input Output System
CN115589379B (en) Network card PXE function test method, system, electronic equipment and storage medium
TWI726524B (en) Electronic processing devices and memory control methods thereof
CN111142961B (en) Basic input/output system setting method
CN116610486A (en) Setting data using method for basic input output system
CN114461282A (en) A configuration verification method of GPIO under BIOS and related components
CN119902810B (en) Data processing method, device, electronic device, storage medium and program product
WO2018058717A1 (en) Non-volatile storage device, method, computer system, and standby or hibernate implementation method
TWI733284B (en) Hardware setting device and hardware setting method thereof
CN112988207A (en) BIOS updating method, device, equipment and readable storage medium based on Setup interface