TW201525862A - 計算機系統與計算機系統啓動方法 - Google Patents

計算機系統與計算機系統啓動方法 Download PDF

Info

Publication number
TW201525862A
TW201525862A TW102146582A TW102146582A TW201525862A TW 201525862 A TW201525862 A TW 201525862A TW 102146582 A TW102146582 A TW 102146582A TW 102146582 A TW102146582 A TW 102146582A TW 201525862 A TW201525862 A TW 201525862A
Authority
TW
Taiwan
Prior art keywords
computer system
hardware device
hardware
boot
hardware devices
Prior art date
Application number
TW102146582A
Other languages
English (en)
Other versions
TWI518594B (zh
Inventor
zhong-ying Qu
yun-long Yang
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 TW102146582A priority Critical patent/TWI518594B/zh
Publication of TW201525862A publication Critical patent/TW201525862A/zh
Application granted granted Critical
Publication of TWI518594B publication Critical patent/TWI518594B/zh

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

一種計算機系統啟動方法,其步驟流程如下所述。根據多個硬體裝置的BIOS啟動規格目錄的順序建立對應的中斷向量的順序。當這些硬體裝置進行初始化時,記憶體將預留多個空白空間,如果初始化的硬體裝置是第一硬體裝置,將第一硬體裝置的BIOS啟動規格目錄插入到多個空白空間中。將除了第二硬體裝置之外的其他硬體裝置進行啟動項禁能。從第二硬體裝置啟動PXE,並將遠端的作業系統選擇安裝到某一第一硬體裝置上,安裝完成之後重新啟動計算機系統。計算機系統重新從第二硬體裝置啟動PXE時,在PXE環境下選擇從已安裝作業系統的第一硬體裝置啟動作業系統。

Description

計算機系統與計算機系統啟動方法
本發明有關於一種計算機系統與計算機系統啟動方法,且特別是有關於一種適用於具有預先啟動執行環境(preboot execution environment,PXE)的計算機系統與計算機系統啟動方法。
隨著網路傳輸速度的不斷提升,現今對於網路的應用不再只是侷限於瀏覽網頁或傳輸資料而已,舉例來說,目前已可利用網路來進行計算機系統(例如桌上型電腦、筆記型電腦或網路電腦)的作業系統(operating system,亦稱操作系統)安裝,或者是利用網路從遠端伺服器中抓取計算機系統運行所需的資料。
一般來說,利用網路來連結遠端伺服器之技術係採用預啟動執行環境(preboot execution environment,PXE)之技術。此預啟動執行環境技術除了可以擷取遠端伺服器的資料來支援計算機系統以進行開機的動作外,預啟動執行環境技術也可以利用遠端伺服器來進行對計算機系統的作業系統或應用程式的安裝。於實務上,為了能實現上述遠端操作的功能,會將預啟動執行環境燒錄至網路卡(network card,亦稱網路介面卡、網路介面控制 器)上的快閃記憶體(Flash memory)中。
在計算機系統欲透過具有預啟動執行環境的網路卡安裝作業系統之前,使用者必須先將具有預啟動執行環境的網路卡設置為啟動選單20中的第一啟動項(Boot Option #1),例如第1A圖所示。第1A圖係為習知之主機裝置於安裝作業系統前的啟動選單的設定示意圖。於第1A圖中,啟動選單20係位於基本輸入輸出系統(basic input output system,BIOS)之介面中,且具有預啟動執行環境的網路卡之型號為[IBA XE Slot 0400 v2196]。另外,區塊30為用以供使用者了解按鍵之功能的註解。
接著,在透過具有預啟動執行環境的網路卡安裝完作業系統後,使用者還必須將作業系統所在之硬碟(hard disk drive,HDD)設置為啟動選單20中的第一啟動項(例如第1B圖所示),才能讓計算機系統順利進入作業系統,否則計算機系統將會一直重複安裝作業系統之程序。第1B圖係為習知之主機裝置於安裝完作業系統後的啟動選單的設定示意圖。
然而,習知之計算機系統於安裝完作業系統的方法中,除了需要多次修改啟動選單20中的啟動項之優先順序之外,在具有預啟動執行環境的網路卡啟動失敗時,就會啟動到啟動選單20中的第一啟動項之後的其他硬體裝置,例如第1A圖的啟動選單20中第二啟動項(Boot Option #2)所指示的[HDD]或第三啟動項(Boot Option #3)所指示的[USB]。此外,在遠端伺服器數量較多的情況下,當計算機系統透過具有預啟動執行環境的網路卡 安裝作業系統時,由於具有預啟動執行環境的網路卡係隨機性地透過某個遠端伺服器安裝作業系統,將會導致無法準確得知計算機系統中的所有硬體裝置之資訊。
有鑑於以上的問題,本揭露提出一種計算機系統與計算機系統啟動方法,使得計算機系統於安裝作業系統時只會啟動到具有預先啟動執行環境的硬體裝置,且又能在預先啟動執行環境中識別到其他的硬體裝置。
根據本揭露一實施例中的一種計算機系統啟動方法,此計算機系統啟動方法適用於計算機系統,其中此計算機系統包括複數個硬體裝置,每一個硬體裝置提供BIOS啟動規格目錄。計算機系統啟動方法的步驟流程依序如下所述。計算機系統於執行基本輸入輸出系統的上電檢測時,根據所述多個硬體裝置的BIOS啟動規格目錄的順序來建立對應的中斷的中斷向量的順序,當這些硬體裝置進行初始化時,計算機系統的記憶體中的用於存放值這些硬體裝置的BIOS啟動規格目錄的第一位址空間將預留多個空白空間,其中這些空白空間為連續或者非連續空間。初始化的該些硬體裝置如果是複數個第一硬體裝置,則將這些第一硬體裝置的BIOS啟動規格目錄按特定順序插入到所述多個空白空間中,如果不是所述多個第一硬體裝置其中之一,則將這些硬體裝置的BIOS啟動規格目錄依次插入到第一位址空間中所述多個空白空間之外的空間中,以使得該些第一硬體裝置的該BIOS 啟動規格目錄按照相對連續的特定順序排布。接著,基本輸入輸出系統將除了這些硬體裝置中的第二硬體裝置之外的其他硬體裝置進行啟動項禁能,以使得在基本輸入輸出系統的設置(setup)介面中的啟動選項中只保留第二硬體裝置,則計算機系統固定只能從第二硬體裝置啟動。然後,計算機系統從第二硬體裝置啟動預先啟動執行環境(PXE),將遠端的作業系統選擇安裝到計算機系統的某一個第一硬體裝置上,安裝完成之後計算機系統進行重新啟動。最後,計算機系統重新從第二硬體裝置啟動PXE時,在PXE環境下選擇從已安裝作業系統的某一個第一硬體裝置啟動作業系統。
根據本揭露一實施例中的一種計算機系統,此計算機系統包括複數個硬體裝置、記憶體以及基本輸入輸出系統晶片。所述多個硬體裝置設置於計算機系統,且至少包括第一硬體裝置與第二硬體裝置,每一個硬體裝置提供BIOS啟動規格目錄。記憶體中的用於存放所述多個硬體裝置的BIOS啟動規格目錄的第一位址空間預留有多個空白空間。基本輸入輸出系統晶片用以執行基本輸入輸出系統。其中,於計算機系統開機並執行基本輸入輸出系統的上電檢測時,根據這些硬體裝置的BIOS啟動規格目錄的順序來建立對應的中斷的中斷向量的順序。當這些硬體裝置進行初始化時,記憶體中的第一位址空間將預留多個空白空間,這些空白空間為連續或者非連續空間。初始化的這些硬體裝置如果是第一硬體裝置,則將第一硬體裝置的BIOS啟動規格目 錄按特定順序插入到所述多個空白空間中,以使得基本輸入輸出系統獲取此時產生的這些硬體裝置的中斷向量以進項排序;如果不是第一硬體裝置,則將這些硬體裝置的BIOS啟動規格目錄依次插入到第一位址空間中的這些空白空間之外的空間中,以使得第一硬體裝置的BIOS啟動規格目錄按照相對連續的特定順序排布。接著,基本輸入輸出系統將除了這些硬體裝置中的第二硬體裝置之外的其他硬體裝置進行啟動項禁能,以使得在基本輸入輸出系統的設置介面中的啟動選項中只保留第二硬體裝置,則計算機系統固定只能從第二硬體裝置啟動。然後,計算機系統從第二硬體裝置啟動PXE,將遠端的作業系統選擇安裝到計算機系統的某一個第一硬體裝置上,安裝完成之後計算機系統進行重新啟動。最後,計算機系統重新從第二硬體裝置啟動PXE時,在PXE環境下選擇從已安裝作業系統的某一個第一硬體裝置啟動作業系統,以達成無需多次重新啟動以及修改啟動項順序,並且第二硬體裝置啟動失敗時不會引導到其他硬體裝置以順利完成作業系統的啟動。
綜合以上所述,本揭露提供一種計算機系統與計算機系統啟動方法,其透過預留多個空白空間於第一位址空間之中,並且於初始化到欲第一個被識別到的硬體裝置時,將對應於此硬體裝置的啟動規格目錄之內容插入至第一個空白空間中,使得此硬體裝置的中斷指令的入口位元址會最先被調用,進而使此硬體裝置於預先啟動執行環境中會第一個被識別到。此外,由於 在啟動選單中禁能了除具有預先啟動執行環境的硬體裝置之外的其他硬體裝置,而僅保留了具有預先啟動執行環境的硬體裝置,使得主機裝置於安裝作業系統時只會啟動到具有預先啟動執行環境的硬體裝置,且又能在預先啟動執行環境中識別到其他的硬體裝置並按照已排布好的順序啟動硬體裝置。
以上之關於本揭露內容之說明及以下之實施方式之說明係用以示範與解釋本發明之精神與原理,並且提供本發明之專利申請範圍更進一步之解釋。
1‧‧‧計算機系統
10‧‧‧第一硬體裝置
12‧‧‧第二硬體裝置
14‧‧‧記憶體
140‧‧‧第一位址空間
1400‧‧‧空白空間
1402‧‧‧第一位址空間中的空白空間以外的位址空間
16‧‧‧基本輸入輸出系統晶片
20‧‧‧啟動選單
30‧‧‧註解
S600~S608‧‧‧步驟流程
第1A圖係為習知之主機裝置於安裝作業系統前的啟動選單的設定示意圖。
第1B圖係為習知之主機裝置於安裝完作業系統後的啟動選單的設定示意圖。
第2圖係為根據本揭露一實施例之計算機系統的功能方塊圖。
第3圖係為根據本揭露一實施例之第一位置空間的示意圖。
第4圖係為根據本揭露一實施例之主機裝置的啟動選單的設定示意圖。
第5圖係為根據本揭露一實施例之主機裝置於磁碟作業系統的介面示意圖。
第6圖係為根據本揭露一實施例之計算機系統啟動方法的步驟流程圖。
以下在實施方式中詳細敘述本發明之詳細特徵以及優點,其內容足以使任何熟習相關技藝者了解本發明之技術內容並據以實施,且根據本說明書所揭露之內容、申請專利範圍及圖式,任何熟習相關技藝者可輕易地理解本發明相關之目的及優點。以下之實施例係進一步詳細說明本發明之觀點,但非以任何觀點限制本發明之範疇。
〔計算機系統之一實施例〕
請參照第2圖,第2圖係為根據本揭露一實施例之計算機系統的功能方塊圖。如第2圖所示,計算機系統1例如可以為桌上型電腦、筆記型電腦、一體成型電腦(All-In-One PC,AIO PC)或網路電腦,但不以此為限。計算機系統1主要包括第一硬體裝置10、第二硬體裝置12、記憶體14以及基本輸入輸出系統晶片16,其中基本輸入輸出系統晶片16電性連接第一硬體裝置10、第二硬體裝置12與記憶體14。以下將分別就計算機系統1中的各部功能模組作詳細的說明。
第一硬體裝置(hardware peripheral)10與第二硬體裝置12皆設置於計算機系統1中,且每一個硬體裝置皆提供一個BIOS啟動規格目錄(BIOS boot specification table,BBS_table)。此BIOS啟動規格目錄的排序可用來表示硬體裝置的啟動順序的 排序。
於實務上,第一硬體裝置10可以為電腦系統主機板直接連接的SATA硬碟、SAS硬碟以及主機板通過外接存儲擴展卡電性連接的SATA硬碟、SAS硬碟和PCIE硬碟,也可以為通用序列匯流排(universal serial bus,USB),而第二硬體裝置12可以為一種具有預先啟動執行環境(preboot execute environment,PXE,亦即可網路)的網路卡(network card,亦稱網路介面卡、網路介面控制器),換句話說,第二硬體裝置12為一種可以網路開機之網路卡。需先一提的是,預先載入執行環境係為網路技術中遠端程式載入(remote program load,RPL)技術之延伸,此預先載入執行環境適用於主機裝置本身並無開機系統或根本沒有硬碟時可透過遠端伺服器執行開機,以使用遠端之系統,且預先載入執行環境也可透過遠端伺服器來執行作業系統或應用程式之安裝。
此外,本發明在此不以限制主機裝置中的硬體裝置之數目,換句話說,主機裝置除了可以具有第一硬體裝置10與第二硬體裝置12之外,更可以具有其他硬體裝置,且這些硬體裝置可以為硬碟、軟碟(floppy disk,FD)、光碟機(亦稱光盤驅動器)、顯示卡與網路卡等介面卡(interface card、adapter)以及通用序列匯流排(universal serial bus,USB)與IEEE 1394(亦稱火線,FireWire)等匯流排。
記憶體14用以儲存主機裝置之資料,且記憶體14中的用於存放所述多個硬體裝置的BIOS啟動規格目錄的第一位 址空間140中預留有多個空白空間1400,如第3圖所示。第3圖係為根據本揭露一實施例之第一位置空間的示意圖。於實務上,記憶體14可以為一種可程式化唯讀記憶體(programmable read-only memory,PROM)、可擦可程式化唯讀記憶體(erasable programmable read-only memory,EPROM)、可電擦可程式化唯讀記憶體(electrically erasable programmable read-only memory,EEPROM)、快閃記憶體(flash memory)等非揮發性記憶體(non-volatile memory),或者是可以為一種動態隨機存取記憶體(dynamic random access memory,DRAM)、靜態隨機存取記憶體(static random access memory,SRAM)等揮發性記憶體(volatile memory)。此外,上述的空白空間1400可以為連續空間或者非連續空間,本發明在此不加以限制。
基本輸入輸出系統晶片16用以執行基本輸入輸出系統。於實際的操作中,當計算機系統1開機並執行基本輸入輸出系統的上電檢測(BIOS POST,亦稱開機檢測)時,基本輸入輸出系統晶片16會根據這些硬體裝置(包括第一硬體裝置10與第二硬體裝置12)的BIOS啟動規格目錄的順序來建立對應的中斷的中斷向量(interrupt vector)的順序。
當這些硬體裝置進行初始化(initialization)時,記憶體14中的第一位址空間140將預留多個空白空間1400,如果初始化的該些硬體裝置是第一硬體裝置10的話,則將第一硬體裝置10的BIOS啟動規格目錄按特定順序插入到此空白空間1400中, 以使得基本輸入輸出系統獲取此時產生的這些硬體裝置的中斷向量以進項排序;如果初始化的該些硬體裝置不是第一硬體裝置10的話,則將這些硬體裝置的BIOS啟動規格目錄依次插入到第一位址空間140中的空白空間1400之外的空間(即位址空間1402)中,以使得第一硬體裝置10為複數個的話,所述多個第一硬體裝置10的BIOS啟動規格目錄可以按照相對連續的特定順序排布。
換句話說,本發明之計算機系統1係在用以儲存所有的硬體裝置的BIOS啟動規格目錄的位址空間1402之前預留多個空白的位址空間(即空白空間1400),而所有的硬體裝置的BIOS啟動規格目錄都是在第一位址空間142中進行排序。當計算機系統1初始化到第一硬體裝置10時,則將對應於第一硬體裝置10的啟動規格目錄之內容插到上述的空白空間1400中,據以使得第一硬體裝置10的中斷(例如INT 13h)的入口位址(entry address)會最先被調用,進而使第一硬體裝置10於預先啟動執行環境中會第一個被識別(抓取)到。
更詳細來說,基本輸入輸出系統會根據BIOS啟動規格目錄中的中斷的入口位址來調用此中斷,並將第一硬體裝置10的主啟動記錄(master bootstrap record,MBR)複製到記憶體14的第二位址空間(未繪示於圖式),以使此主啟動記錄內部的第一階段引導程式(master bootstrap loader,MBL)得到控制權並尋找現用分區(active partition),當此第一階段引導程式尋找到上述的現用分區時,第一階段引導程式會將控制權轉交給現用分區內部的 第二階段引導程式,以啟動計算機系統1的作業系統。於實務上,上述的第二位址空間係為記憶體14的位址空間中的0000h:7C00h。
此外,本發明在此不加以限制空白空間1400中所能儲存的硬體裝置的啟動規格目錄之內容的數目,換句話說,空白空間1400可儲存至少一硬體裝置的啟動規格目錄之內容。此外,上述的中斷係為INT 13,是基本輸入輸出系統提供的硬碟基本輸入輸出中斷,一般來說,INT 13h用以提供硬碟讀寫及格式化等服務。
接著,基本輸入輸出系統將除了這些硬體裝置中的第二硬體裝置12之外的其他硬體裝置進行啟動項禁能,以使得在基本輸入輸出系統的設置(setup)介面中的啟動選項中只保留第二硬體裝置,則計算機系統1固定只能從第二硬體裝置12啟動,如第4圖所示。第4圖係為根據本揭露一實施例之主機裝置的啟動選單的設定示意圖。第4圖中的基本輸入輸出系統之介面的啟動選單20包括有啟動項的優先順序(Boot Option Priorities)以及表示啟動順序的第一啟動項(Boot Option #1)、第二啟動項(Boot Option #2)與第三啟動項(Boot Option #3),其中第二啟動項與第三啟動項皆被設定為禁能(disabled),而僅保留第一啟動項。換句話說,基本輸入輸出系統將除了第二硬體裝置12之外的其他硬體裝置進行禁能的過程,是採用通過在每一個硬體裝置提供的可擴展固件介面載入選項(EFI_LOAD_OPTION)中的屬性(Attributes) 設置為0來實現,此設置是在基本輸入輸出系統的固件代碼內執行。此外,第一啟動項中的[IBA XE Slot 0400 v2196]僅係表示具有預先啟動執行環境的網路卡(即第二硬體裝置12)之型號,但並非用以限制第二硬體裝置12的型號。另外,區塊30為基本輸入輸出系統之介面用以供使用者了解按鍵之功能的註解。
然後,計算機系統1從第二硬體裝置12啟動預先啟動執行環境,並將遠端的作業系統選擇安裝到計算機系統1的某一個第一硬體裝置10上,安裝完成之後計算機系統1進行重新啟動。最後,計算機系統1重新從該第二硬體裝置啟動PXE時,在PXE環境下選擇從已安裝作業系統的某一個第一硬體裝置10來啟動作業系統,如果作業系統並沒有安裝到已經排序好的第一個第一硬體裝置時,則此重新啟動啟動到第一個第一硬體裝置時會失敗並接著按順序往後尋找其他的第一硬體裝置直到尋找到並從已安裝作業系統的第一硬體裝置啟動,以達成無需多次重新啟動以及修改啟動項順序,並且在第二硬體裝置12啟動失敗時不會引導(boot)到其他硬體裝置以順利完成作業系統的啟動。換句話說,計算機系統1從第二硬體裝置12啟動預先啟動執行環境時,遠端的作業系統將被安裝到計算機系統1的排布第一的第一硬體裝置10上,安裝完成之後計算機系統1進行重新啟動,計算機系統1重新從第二硬體裝置12啟動預先啟動執行環境時,在預先啟動執行環境下從已安裝作業系統的排布第一的第一硬體裝置10啟動作業系統。
藉此,本發明之計算機系統1於執行作業系統或應用程式的安裝時僅會啟動到具有預先啟動執行環境的網路卡(即第二硬體裝置12),而又能在預先啟動執行環境中識別出對應於空白空間1400的所有硬體裝置(包括第一硬體裝置10),例如第5圖所示。第5圖係為根據本揭露一實施例之主機裝置於磁碟作業系統的介面示意圖。換句話說,計算機系統1在預先啟動執行環境的磁碟作業系統(disk operating system,DOS)下獲取到計算機系統1上所有的第一硬體裝置10的資訊以及根據此資訊選擇某一個第一硬體裝置10來安裝作業系統。一般情況下會選擇排序第一的第一硬體裝置來安裝作業系統,並且啟動時也從第一個第一硬體裝置來啟動,此外,第5圖僅係用以表示主機裝置於磁碟作業系統的介面中所能抓取到的硬體裝置之示意圖。
此外,第二硬體裝置12於執行預先啟動執行環境啟動所需的選項唯讀記憶體是包含在基本輸入輸出系統中或者第二硬體裝置12的韌體(即網路卡固件)中。值得一提的是,基本輸入輸出系統根據這些硬體裝置的BIOS啟動規格目錄來建立對應的中斷的中斷向量的順序的處理程式,是在計算機系統1執行基本輸入輸出系統的上電檢測的DXE(driver execution environment,亦稱驅動程式執行環境)階段;基本輸入輸出系統將除了第二硬體裝置12之外的其他硬體裝置進行禁能的處理程式,是在計算機系統1執行基本輸入輸出系統的上電檢測的BDS(boot device selection,亦稱啟動裝置選擇)階段。由於作業系統的啟動程序(包 括基本輸入輸出系統的上電檢測)已被於所屬技術領域具有通常知識者所知悉,故不再特別贅述。
〔計算機系統啟動方法之一實施例〕
請一併參照第2圖至第6圖,第6圖係為根據本揭露一實施例之計算機系統啟動方法的步驟流程圖。如第6圖所示,此計算機系統啟動方法適用於計算機系統1,此計算機系統包括複數個硬體裝置(包括第一硬體裝置10與第二硬體裝置12),每一個硬體裝置提供BIOS啟動規格目錄。
首先,在步驟S600,計算機系統1會根據多個硬體裝置的BIOS啟動規格目錄的順序來建立對應的中斷的中斷向量的順序。其中,上述的中斷係為INT 13,是基本輸入輸出系統提供的硬碟基本輸入輸出中斷。在步驟S602中,當這些硬體裝置進行初始化時,計算機系統1的記憶體14中的用於存放這些硬體裝置的BIOS啟動規格目錄的第一位址空間140將預留多個空白空間1400(如第3圖所示)。如果初始化的硬體裝置是第一硬體裝置10的話,則將第一硬體裝置10的BIOS啟動規格目錄按特定順序插入到此空白空間1400中;如果初始化的硬體裝置不是第一硬體裝置10的話,則將些硬體裝置的BIOS啟動規格目錄依次插入到第一位址空間中的空白空間1400之外的空間(即位址空間1402)中,以使得第一硬體裝置10的BIOS啟動規格目錄可以按照相對連續的特定順序排布。
在步驟S604中,基本輸入輸出系統將除了第二硬體 裝置12之外的其他硬體裝置進行啟動項禁能,以使得在基本輸入輸出系統的設置(setup)介面中的啟動選項中只保留第二硬體裝置12,則計算機系統1固定只能從第二硬體裝置12啟動,例如第4圖所示。在步驟S606中,計算機系統1從第二硬體裝置12啟動預先啟動執行環境(PXE),並將遠端的作業系統選擇安裝到計算機系統1的第一硬體裝置10上,並在安裝完成之後重新啟動計算機系統1。此外,若計算機系統1具有多個第一硬體裝置10的話,則用戶可選擇所述多個第一硬體裝置10其中之一來進行遠端作業系統的安裝。
在步驟S608中,當計算機系統1重新從第二硬體裝置12啟動PXE時,在PXE環境下選擇從已安裝作業系統的第一硬體裝置10來啟動作業系統。值得注意的是,若計算機系統1具有多個硬碟且作業系統沒有安裝到啟動順序為第一啟動項的硬碟時,則在PXE環境下的工具啟動第一啟動項的硬碟時會失敗,直到啟動到安裝作業系統的那個硬碟時才會開啟作業系統。於其中一實施例中,基本輸入輸出系統根據BIOS啟動規格目錄中的中斷的入口位址調用中斷,並將第一硬體裝置的主啟動記錄複製到記憶體14的第二位址空間,以使主啟動記錄內部的第一階段引導程式得到控制權並尋找現用分區。當第一階段引導程式尋找到現用分區時,第一階段引導程式將控制權轉交給現用分區內部的第二階段引導程式,以啟動該計算機系統的作業系統。其中,上述的第二位址空間係為記憶體14的位址空間中的0000h:7C00h。
於其中一實施例中,計算機系統1在預先啟動執行環境的磁碟作業系統下獲取到計算機系統1上所有的第一硬體裝置10的資訊以及根據上述資訊選擇某一個第一硬體裝置10來安裝作業系統。於其中一實施例中,基本輸入輸出系統將除了第二硬體裝置12之外的其他硬體裝置進行禁能的步驟(即步驟S604),係採用通過在每一個硬體裝置所提供的可擴展固件介面載入選項(EFI_LOAD_OPTION)中的屬性(Attributes)設置為0來實現,此設置是固定在基本輸入輸出系統的固件代碼內。
於其中一實施例中,第一硬體裝置10係為硬碟,而第二硬體裝置12係為具有預先啟動執行環境的網路卡。於其中一實施例中,第二硬體裝置12於執行預先啟動執行環境啟動所需的選項唯讀記憶體是包含在基本輸入輸出系統中或者是在網路卡固件中。於其中一實施例中,計算機系統1從第二硬體裝置12啟動預先啟動執行環境時,遠端的作業系統將被安裝到計算機系統1的排布第一的第一硬體裝置10上,安裝完成之後計算機系統1進行重新啟動,計算機系統1重新從第二硬體裝置12啟動預先啟動執行環境時,在預先啟動執行環境下從已安裝作業系統的排布第一的第一硬體裝置10啟動作業系統。
此外,基本輸入輸出系統根據這些硬體裝置的BIOS啟動規格目錄來建立對應的中斷的中斷向量的順序的步驟(即步驟S600)是在計算機系統1執行基本輸入輸出系統的上電檢測的DXE階段;基本輸入輸出系統將除了第二硬體裝置12之外的其 他硬體裝置進行禁能的步驟(即步驟S604)是在計算機系統執行基本輸入輸出系統的上電檢測的BDS階段。
〔實施例的可能功效〕
綜合以上所述,本發明實施例提供一種計算機系統與計算機系統啟動方法,其透過預留多個空白空間於第一位址空間之中,並且於初始化到欲第一個被識別到的硬體裝置時,將對應於此硬體裝置的啟動規格目錄之內容插入至第一個空白空間中,使得此硬體裝置的中斷指令的入口位址會最先被調用,進而使此硬體裝置於預先啟動執行環境中會第一個被識別到。此外,由於在啟動選單中禁能了除具有預先啟動執行環境的硬體裝置之外的其他硬體裝置,而僅保留了具有預先啟動執行環境的硬體裝置,使得主機裝置於安裝作業系統時只會啟動到具有預先啟動執行環境的硬體裝置,且又能在預先啟動執行環境中識別到其他的硬體裝置並按照已排布好的順序啟動硬體裝置。藉此,本發明之計算機系統與計算機系統啟動方法於安裝作業系統時無須多次重新啟動以及修改啟動項的啟動順序,且在預先啟動執行環境啟動失敗的情況下不會啟動到其他的硬體裝置,而是會一直重複地啟動具有預先啟動執行環境的硬體裝置,以及能更方便地獲取主機裝置上的所有硬體裝置的資訊,十分具有實用性。
雖然本發明以上述之實施例揭露如上,然其並非用以限定本發明。在不脫離本發明之精神和範圍內,所為之更動與潤飾,均屬本發明之專利保護範圍。關於本發明所界定之保護範 圍請參考所附之申請專利範圍。
S600~S608‧‧‧步驟流程

Claims (10)

  1. 一種計算機系統啟動方法,適用於一計算機系統,該計算機系統包括複數個硬體裝置,每一該硬體裝置提供一BIOS啟動規格目錄(BBS_table),該計算機系統啟動方法包括:該計算機系統於執行一基本輸入輸出系統的上電檢測(BIOS POST)時,根據該些硬體裝置的該BIOS啟動規格目錄的順序來建立對應的一中斷的中斷向量的順序,當該些硬體裝置進行初始化時,該計算機系統的一記憶體中的用於存放該些硬體裝置的該BIOS啟動規格目錄的一第一位址空間將預留多個空白空間,該些空白空間為連續或者非連續空間,初始化的該些硬體裝置如果是複數個第一硬體裝置,則將該些第一硬體裝置的該BIOS啟動規格目錄按特定順序插入到該多個空白空間中,如果不是某一該第一硬體裝置,則將該些硬體裝置的該BIOS啟動規格目錄依次插入到該第一位址空間中該些空白空間之外的空間中,以使得該些第一硬體裝置的該BIOS啟動規格目錄按照相對連續的特定順序排布;該基本輸入輸出系統將除了該些硬體裝置中的一第二硬體裝置之外的其他硬體裝置進行啟動項禁能以使得在該基本輸入輸出系統的設置(setup)介面中的啟動選項中只保留該第二硬體裝置,則該計算機系統固定只能從該第二硬體裝置啟動; 該計算機系統從該第二硬體裝置啟動預先啟動執行環境(PXE),將遠端的作業系統選擇安裝到該計算機系統的某一該第一硬體裝置上,安裝完成之後該計算機系統進行重新啟動;以及該計算機系統重新從該第二硬體裝置啟動預先啟動執行環境時,在預先啟動執行環境下選擇從已安裝作業系統的某一該第一硬體裝置啟動作業系統。
  2. 如請求項1所述之計算機系統啟動方法,更包括該基本輸入輸出系統根據該BIOS啟動規格目錄中的該中斷的入口位址調用該中斷,將該第一硬體裝置的一主啟動記錄複製到該記憶體的一第二位址空間,以使該主啟動記錄內部的一第一階段引導程式得到控制權並尋找一現用分區,當該第一階段引導程式尋找到該現用分區時,該第一階段引導程式將控制權轉交給該現用分區內部的一第二階段引導程式,啟動該計算機系統的作業系統。
  3. 如請求項1所述之計算機系統啟動方法,其中該計算機系統從該第二硬體裝置啟動預先啟動執行環境(PXE),遠端的作業系統將被安裝到該計算機系統的一排布第一的第一硬體裝置上,安裝完成之後該計算機系統進行重新啟動,該計算機系統重新從該第二硬體裝置啟動預先啟動執行環境時,在預先啟動執行環境下從已安裝作業系統的該排布第一的第一硬體裝置啟動作業系統。
  4. 如請求項1所述之計算機系統啟動方法,其中該計算機系統在預先啟動執行環境的磁碟作業系統下獲取到該計算機系統上所有的該第一硬體裝置的資訊以及根據該資訊選擇某一該第一硬體裝置安裝作業系統。
  5. 如請求項1所述之計算機系統啟動方法,其中該基本輸入輸出系統將除了該些硬體裝置中的一第二硬體裝置之外的其他硬體裝置進行禁能,採用通過在每一該硬體裝置提供的可擴展固件介面載入選項(EFI_LOAD_OPTION)中的屬性(Attributes)設置為0來實現,此設置是固定在該基本輸入輸出系統的固件代碼內。
  6. 如請求項1所述之計算機系統啟動方法,其中該第一硬體裝置係為硬碟,該第二硬體裝置係為具有預先啟動執行環境的網路卡。
  7. 如請求項1所述之計算機系統啟動方法,其中該第二硬體裝置於執行預先啟動執行環境啟動所需的選項唯讀記憶體是包含在該基本輸入輸出系統中或者該網路卡固件中。
  8. 如請求項1所述之計算機系統啟動方法,其中該中斷是該基本輸入輸出系統提供的硬碟基本輸入輸出中斷。
  9. 如請求項1所述之計算機系統啟動方法,其中該基本輸入輸出系統根據該些硬體裝置的該BIOS啟動規格目錄來建立對應的該中斷的中斷向量的順序的步驟是在該計算機系統執行該基本輸入輸出系統的上電檢測的DXE階段,該基本輸入輸出系 統將除了該些硬體裝置中的該第二硬體裝置之外的其他硬體裝置進行禁能的步驟是在該計算機系統執行該基本輸入輸出系統的上電檢測的BDS階段。
  10. 一種計算機系統,包括:複數個硬體裝置,該些硬體裝置設置於該計算機系統,且至少包括一第一硬體裝置與一第二硬體裝置,每一該硬體裝置提供一BIOS啟動規格目錄;一記憶體,該記憶體中的用於存放該些硬體裝置的該BIOS啟動規格目錄的一第一位址空間預留有多個空白空間;以及一基本輸入輸出系統;其中,該基本輸入輸出系統在該計算機系統開機並執行上電檢測(BIOS POST)時,根據該些硬體裝置的該BIOS啟動規格目錄的順序來建立對應的一中斷的中斷向量的順序,當該些硬體裝置進行初始化時,該記憶體中的該第一位址空間將預留多個空白空間,該些空白空間為連續或者非連續空間,初始化的該些硬體裝置如果是該第一硬體裝置,則將該第一硬體裝置的該BIOS啟動規格目錄按特定順序插入到該多個空白空間中,以使得該基本輸入輸出系統獲取此時產生的該些硬體裝置的中斷向量以進項排序,如果不是該第一硬體裝置,則將該些硬體裝置的該BIOS啟動規格目錄依次插入到該第一位址空間中該些空白空間之外的空間中以使得該些第一硬體裝置的該 BIOS啟動規格目錄按照相對連續的特定順序排布,接著,該基本輸入輸出系統將除了該些硬體裝置中的一第二硬體裝置之外的其他硬體裝置進行啟動項禁能以使得在該基本輸入輸出系統的設置(setup)介面中的啟動選項中只保留該第二硬體裝置,則該計算機系統固定只能從該第二硬體裝置啟動,然後,該計算機系統從該第二硬體裝置啟動預先啟動執行環境(PXE),將遠端的作業系統選擇安裝到該計算機系統的某一該第一硬體裝置上,安裝完成之後該計算機系統進行重新啟動,最後,該計算機系統重新從該第二硬體裝置啟動預先啟動執行環境時,在預先啟動執行環境下選擇從已安裝作業系統的某一該第一硬體裝置啟動作業系統,以達成無需多次重新啟動以及修改啟動項順序,並且該第二硬體裝置啟動失敗時不會引導(boot)到其他硬體裝置以順利完成作業系統的啟動。
TW102146582A 2013-12-17 2013-12-17 計算機系統與計算機系統啓動方法 TWI518594B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW102146582A TWI518594B (zh) 2013-12-17 2013-12-17 計算機系統與計算機系統啓動方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW102146582A TWI518594B (zh) 2013-12-17 2013-12-17 計算機系統與計算機系統啓動方法

Publications (2)

Publication Number Publication Date
TW201525862A true TW201525862A (zh) 2015-07-01
TWI518594B TWI518594B (zh) 2016-01-21

Family

ID=54197695

Family Applications (1)

Application Number Title Priority Date Filing Date
TW102146582A TWI518594B (zh) 2013-12-17 2013-12-17 計算機系統與計算機系統啓動方法

Country Status (1)

Country Link
TW (1) TWI518594B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109656627A (zh) * 2018-12-18 2019-04-19 广东浪潮大数据研究有限公司 一种bios中硬盘的启动方法、启动系统及相关装置
TWI749704B (zh) * 2020-08-13 2021-12-11 群聯電子股份有限公司 韌體碼的執行方法、記憶體儲存裝置及記憶體控制電路單元
TWI762744B (zh) * 2018-11-30 2022-05-01 技嘉科技股份有限公司 計算機裝置的網路連接方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI762744B (zh) * 2018-11-30 2022-05-01 技嘉科技股份有限公司 計算機裝置的網路連接方法
CN109656627A (zh) * 2018-12-18 2019-04-19 广东浪潮大数据研究有限公司 一种bios中硬盘的启动方法、启动系统及相关装置
TWI749704B (zh) * 2020-08-13 2021-12-11 群聯電子股份有限公司 韌體碼的執行方法、記憶體儲存裝置及記憶體控制電路單元

Also Published As

Publication number Publication date
TWI518594B (zh) 2016-01-21

Similar Documents

Publication Publication Date Title
US9239725B2 (en) System and method for installing an OS via a network card supporting PXE
JP4932781B2 (ja) 目標の媒体上に縮小オペレーティングシステムイメージを作成する方法、システム及びプログラム
US8028155B1 (en) Initiating an operating system boot from firmware
US9430250B2 (en) Bootability with multiple logical unit numbers
US9501289B2 (en) Method of a UEFI firmware and computer system thereof
US7631173B2 (en) Method and system for performing pre-boot operations from an external memory including memory address and geometry
US6725178B2 (en) Use of hidden partitions in a storage device for storing BIOS extension files
US11169819B2 (en) Information handling system (IHS) and method to proactively restore firmware components to a computer readable storage device of an IHS
US11144328B2 (en) System method to update failover process by running basic input/output (BIOS) system boot code from non-volatile memory express device (NVME)
US9619340B1 (en) Disaster recovery on dissimilar hardware
US20180052679A1 (en) Method of Bootup and Installation, and Computer System thereof
US11704198B2 (en) Method and apparatus for providing recovery from a computing device boot up error
CN107135462B (zh) Uefi固件的蓝牙配对方法及其计算系统
WO2016177067A1 (zh) 一种扩展手机存储的方法及终端
CN104424140A (zh) 统一可扩展固件接口驱动器
US10491736B2 (en) Computer system and method thereof for bluetooth data sharing between UEFI firmware and OS
US11169818B2 (en) Systems and methods for dynamically locating and accessing operating system (OS) file system data from a pre-boot environment
TWI518594B (zh) 計算機系統與計算機系統啓動方法
JPWO2004081791A1 (ja) 仮想計算機システム、仮想計算機システムにおけるファームウェアアップデート方法
TWI743480B (zh) 電腦系統與其開機方法
CN102591691B (zh) 硬盘启动方法和基于bios的操作系统启动加载方法
TWI754221B (zh) 軟體存留性關閉技術
CN102455919A (zh) 基本输入输出系统自动最佳化设定方法
CN109254800B (zh) 一种设备信息处理方法、电子设备及服务器
JP2017107283A (ja) 初期化方法、配備サーバ、配備プログラム及び初期化プログラム