TWI808713B - Method and system for deploying operating environments - Google Patents

Method and system for deploying operating environments Download PDF

Info

Publication number
TWI808713B
TWI808713B TW111113274A TW111113274A TWI808713B TW I808713 B TWI808713 B TW I808713B TW 111113274 A TW111113274 A TW 111113274A TW 111113274 A TW111113274 A TW 111113274A TW I808713 B TWI808713 B TW I808713B
Authority
TW
Taiwan
Prior art keywords
virtual image
image file
information processing
bootable
parent
Prior art date
Application number
TW111113274A
Other languages
Chinese (zh)
Other versions
TW202331510A (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 楊明勳
Application granted granted Critical
Publication of TWI808713B publication Critical patent/TWI808713B/en
Publication of TW202331510A publication Critical patent/TW202331510A/en

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Magnetically Actuated Valves (AREA)
  • Electrical Discharge Machining, Electrochemical Machining, And Combined Machining (AREA)

Abstract

This invention provides an IHS, a method for deploying the IHS, and a computer implemented method for enabling an information handling system to be operated with multiple environments. File system attributes in the virtual image files are included in the EFI bootloader to check if a child virtual image file is failed before the operating system in the child virtual image file is loaded.

Description

用以部屬作業環境的方法與系統 Method and system for deploying an operating environment

本發明係有關於一種資訊持有系統及一種用以佈署資訊處理系統的方法,特別是有關於一種使資訊處理系統能夠在多種環境下運行的電腦實現的方法。 The present invention relates to an information holding system and a method for deploying an information processing system, and more particularly to a computer-implemented method for enabling an information processing system to operate in a variety of environments.

隨著資訊的價值和使用不斷增加,個人和企業尋求更多的方式來處理和儲存資訊。用戶可用的一種選擇是資訊處理系統(IHS;Information Handling System)。資訊處理系統通常出於商業、個人或其他目的處理、編譯、儲存和/或傳達資訊或資料,從而允許用戶利用資訊的價值。由於不同用戶或應用程式之間的技術和資訊處理需求和要求各不相同,因此資訊處理系統在處理何種資訊、如何處理資訊、多少資訊需要被處理、儲存或通訊,以及可能會被處理、儲存或傳遞的資訊在處理的速度與效率方面也可能有所不同。不同的資訊處理系統允許資訊處理系統是通用的或針對特定用戶或特定用途配置的,例如金融交易處理、航班預訂、企業資料儲存或全球通信。 As the value and use of information continue to increase, individuals and businesses seek more ways to process and store information. One option available to the user is an Information Handling System (IHS; Information Handling System). An information handling system typically processes, compiles, stores and/or communicates information or data for business, personal or other purposes, thereby allowing users to exploit the value of the information. As the technical and information processing needs and requirements vary between different users or applications, information processing systems may also differ in terms of what information to process, how to process information, how much information needs to be processed, stored or communicated, and the speed and efficiency with which information may be processed, stored or transmitted. Different information handling systems allow information handling systems to be general-purpose or configured for a specific user or purpose, such as financial transaction processing, airline reservations, enterprise data storage, or global communications.

統一可延伸韌體介面(UEFI;Unified extensible firmware interface)是一種規範,用於定義作業系統(OS;Operating System)和平台韌體(platform firmware)之間的軟體介面(software interface)。統一可延伸韌體介面取代了舊的資訊處理系統上的基本輸入/輸出系統(BIOS;Basic Input/Output System)。統一可延伸韌體介面提供標準架構和資料結構來管理元件的初始化(initialization)與配置(configuration)、平台資源的開機(booting)以及將控制權傳遞給作業系統。統一可延伸韌體介面規範允許通過載入統一可延伸韌體介面驅動程序和應用程式來擴充平台韌體。 Unified Extensible Firmware Interface (UEFI; Unified Extensible Firmware Interface) is a specification for defining a software interface (software interface) between an operating system (OS; Operating System) and platform firmware (platform firmware). Unified Extensible Firmware Interface replaces the Basic Input/Output System (BIOS; Basic Input/Output System). UEF provides a standard framework and data structures to manage initialization and configuration of components, booting of platform resources, and transfer of control to the operating system. The UEFI specification allows the platform firmware to be extended by loading UEFI drivers and applications.

作業系統是操作資訊處理系統的基礎。然而,作業系統安裝的複雜性包括來自不同供應商的不同硬體配置或資源的不同應用程式,以滿足各種需求。例如,資訊處理系統可能需要具有多個作業系統,例如微軟的視窗(Windows)或Linux的UBUNTU以進行教學。多個作業系統的缺點使得資訊處理系統的維護更加困難。 The operating system is the basis for operating an information processing system. However, the complexity of operating system installation includes different applications from different vendors with different hardware configurations or resources to meet various needs. For example, an information processing system may need to have multiple operating systems, such as Microsoft's Windows (Windows) or Linux's UBUNTU for teaching. The disadvantage of multiple operating systems makes the maintenance of information processing systems more difficult.

另一方面,雖然在應用資訊處理系統時,似乎教學是許多用戶的主要目標,但教師根據自己的需要選擇資訊處理系統,希望資訊處理系統的維護變得更加容易。例如,在電腦教室,電腦教師希望所有的資訊處理系統都有;通過這種方式,資訊處理系統可以針對特定學生,或在每學期或是每天開始時保持相同的設定狀態。管理數台電腦時,管理人員擁有帶有管理系統的電腦是有幫助的。此外,對於作為課堂助教的資訊處理系統,有效維護資訊敏感性是很重要,因為用戶包括具有不同安全要求的教師和學生。因此,很難維護資訊處理系統。如果將教室電腦用作行政電腦,則需要移除恢復卡以安裝行政管理軟體系統。所有上述改變都會增加資訊處理系統使用的複雜性。 On the other hand, although teaching seems to be the main goal of many users when applying IHS, teachers choose IHS according to their needs, hoping that the maintenance of IHS will be made easier. For example, in a computer classroom, the computer teacher would like to have all the IHSs; in this way, the IHSs can be targeted to specific students, or kept in the same configuration at the beginning of each term or day. When managing several computers, it is helpful for the administrator to have a computer with a management system. Furthermore, for an information processing system serving as a teaching assistant in a classroom, it is important to effectively maintain information sensitivity because users include teachers and students with different security requirements. Therefore, it is difficult to maintain the information processing system. If the classroom computer is used as an administrative computer, the recovery card needs to be removed to install the administrative software system. All of the above changes increase the complexity of using the information handling system.

出於資訊技術(IT;Information Technology)的商業需求,有時可能需要測試不同的作業環境或盡快恢復先前版本的作業環境以符合24小時製造。但是,如果在虛擬機器(virtual machine)下處理作業環境(operating environment),則會降低電腦效能,並且顯著增加儲存裝置的容量。此外,一些製造設備必須與具有原生作業環境的資訊處理系統聯繫,因此虛擬機 器不是一個合適的解決方案。 Due to the business needs of information technology (IT; Information Technology), sometimes it may be necessary to test different operating environments or restore the previous version of the operating environment as soon as possible to meet 24-hour manufacturing. However, if the operating environment is processed under a virtual machine, the performance of the computer will be reduced and the capacity of the storage device will be significantly increased. In addition, some manufacturing equipment must communicate with information processing systems with native operating environments, so virtual machines is not an appropriate solution.

本發明的一個目的是提供一種具有多種作業環境的資訊處理系統,其中多種環境可以在一個作業系統下可以包括具有不同應用程式(Applications)和資料(data)。 An object of the present invention is to provide an information processing system with multiple operating environments, wherein the multiple environments can include different applications and data under one operating system.

本發明的一個目的是提供具有多個作業系統的資訊處理系統。 An object of the present invention is to provide an information processing system with multiple operating systems.

本發明的一個目的是提供一種佈署具有多個操作環境的資訊處理系統的方法,其中可以在載入作業系統之前檢查可開機虛擬映像檔(bootable virtual image files)和虛擬映像檔(virtual image files)之間的相依性。 It is an object of the present invention to provide a method for deploying an information processing system with multiple operating environments, wherein bootable virtual image files and dependencies between virtual image files can be checked before loading the operating system.

本發明的一個目的是提供一種以顯著效率佈署多個資訊處理系統的方法。 It is an object of the present invention to provide a method of deploying multiple information processing systems with significant efficiency.

本發明的一個目的是提供一種無需硬體、較少儲存容量和顯著效率的恢復資訊處理系統的方法。 It is an object of the present invention to provide a method of restoring an information processing system that requires no hardware, requires less storage capacity, and is significantly more efficient.

本發明的一個目的是提供一種用於遠端佈署或恢復資訊處理系統的方法。 An object of the present invention is to provide a method for remotely deploying or recovering an information processing system.

本發明的一個目的是提供一種電腦實現的方法,係用以使資訊處理系統能夠在多種環境下運行。 It is an object of the present invention to provide a computer-implemented method for enabling an information processing system to operate in a variety of environments.

在本發明中,由於在統一可延伸韌體介面開機載入程序(bootloader)中包含了在可開機虛擬映像檔中的檔案系統屬性(file system attributes),因此可以檢查、確認和比較可開機虛擬映像檔中的資料和資訊。 In the present invention, since the file system attributes in the bootable virtual image file are included in the unified extensible firmware interface bootloader, the data and information in the bootable virtual image file can be checked, confirmed and compared.

據此,本發明提供一種佈署資訊處理系統的方法,包含以下步驟:在一儲存裝置(storage)中的一可延伸韌體介面(EFI;Extensible Firmware Interface)系統分割區(system partition)中,建立一統一可延伸韌體 介面(UEFI)開機載入程序(bootloader),其具有一主作業系統(primary operating system)之檔案系統(file system)屬性(attribute);建立一具有上述之主作業系統之第一母可開機虛擬映像檔(first bootable parent virtual image file)於前述儲存裝置之一分割區中;以及當一第一應用程式安裝於前述第一母可開機虛擬映像檔中,對前述之第一母可開機虛擬映像檔差分(differencing)為一第一子虛擬映像檔(first child virtual image file)於前述儲存裝置中之前述的分割區。 Accordingly, the present invention provides a method for deploying an information processing system, comprising the following steps: establishing a unified extensible firmware in an extensible firmware interface (EFI; Extensible Firmware Interface) system partition (system partition) in a storage device (storage) Interface (UEFI) boot loader (bootloader), which has a file system (file system) attribute (attribute) of a primary operating system (primary operating system); creating a first bootable parent virtual image file (first bootable parent virtual image file) with the above-mentioned primary operating system in a partition of the aforementioned storage device; The virtual image file differencing is a first child virtual image file (first child virtual image file) in the aforementioned partition in the aforementioned storage device.

本發明之佈署方法中,當一第一資料加入第一子虛擬映像檔中,更包含一對第一子虛擬映像檔差分為一第一孫虛擬映像檔(first grandchild virtual image file)於儲存裝置中之分割區。 In the deployment method of the present invention, when a first data is added to the first child virtual image file, a pair of first child virtual image files are differentially divided into partitions of a first grandchild virtual image file (first grandchild virtual image file) in the storage device.

本發明之佈署方法中,更包含當一第二應用程式安裝於第一母可開機虛擬映像檔中,對第一母可開機虛擬映像檔差分為一第二子虛擬映像檔於儲存裝置中之分割區。 In the deployment method of the present invention, when a second application program is installed in the first parent bootable virtual image file, dividing the first parent bootable virtual image file into a partition of a second child virtual image file in the storage device.

本發明之佈署方法中,當一第二資料加入第二子虛擬映像檔中,對第二子虛擬映像檔差分為一第二孫虛擬映像檔於儲存裝置中之分割區。 In the deployment method of the present invention, when a second data is added to the second sub-virtual image file, the second sub-virtual image file is divided into a partition of the second grandchild virtual image file in the storage device.

本發明之佈署方法中,更包含建立一具有一次作業系統(secondary operating system)之第二母可開機虛擬映像檔於儲存區之分割區中。 The deployment method of the present invention further includes creating a second master bootable virtual image file with a secondary operating system in the partition of the storage area.

本發明之佈署方法中,更包含一步驟將第二作業系統之檔案系統屬性包含在可延伸韌體介面開機載入程序(UEFI bootloader)。 The deployment method of the present invention further includes a step of including the file system attributes of the second operating system in the UEFI bootloader.

本發明同時提供一種用以佈署複數個資訊處理系統的方法,包含以下步驟:複製可延伸韌體介面開機載入系統至上述複數個資訊處理系統之複數個儲存裝置;複製第一母可開機虛擬映像檔至上述複數個 資訊處理系統之前述複數個儲存裝置;以及複製第一子虛擬映像檔至上述之複數個資訊處理系統之前述之複數個儲存裝置。 The present invention also provides a method for deploying a plurality of information processing systems, including the following steps: copying the extensible firmware interface boot-loading system to the plurality of storage devices of the plurality of information processing systems; copying the first parent bootable virtual image file to the plurality of above-mentioned The aforementioned plurality of storage devices of the information processing system; and copying the first sub-virtual image file to the aforementioned plurality of storage devices of the aforementioned plurality of information processing systems.

本發明更包含一種用以驗證中第一母可開機、第一/第二子、及第一/第二孫虛擬映像檔之間之相依性的方法,包含以下之步驟:確認第一母可開機虛擬映像檔與第一子虛擬映像檔之間之相依性;確認第一子虛擬映像檔與第一孫虛擬映像檔之間之相依性;確認第一母可開機虛擬映像檔與第二子虛擬映像檔之間之相依性;以及確認第二子虛擬映像檔與第二孫虛擬映像檔之間之相依性。 The present invention further includes a method for verifying the dependency between the first parent bootable virtual image file, the first/second child, and the first/second grandchild virtual image file, comprising the following steps: confirming the dependency between the first parent bootable virtual image file and the first child virtual image file; confirming the dependency between the first child virtual image file and the first grandchild virtual image file; confirming the dependency between the first parent bootable virtual image file and the second child virtual image file; and confirming the dependency between the second child virtual image file and the second grandchild virtual image file.

在本發明之一實施例中,其中上述之建立統一可延伸韌體介面開機載入程序(UEFI bootloader)步驟係在一自生作業系統環境(living operating system environment)下運行。 In an embodiment of the present invention, the above step of creating a UEFI bootloader is executed in a living operating system environment.

在本發明之一實施例中,其中上述之建立第一母可開機虛擬映像檔步驟係在一自生作業系統環境下運行。 In an embodiment of the present invention, the above-mentioned step of creating the first mother bootable virtual image file is executed in a native operating system environment.

在本發明之一實施例中,其中上述之統一可延伸韌體介面開機載入程序是在該自生作業系統環境下回復,當該統一可延伸韌體介面開機載入程序被一作業系統開機管理器覆蓋。 In an embodiment of the present invention, wherein the above-mentioned UEFI bootloader is restored in the environment of the native operating system, when the UEFUI bootloader is covered by an operating system boot manager.

在本發明之一實施例中,其中上述之統一可延伸韌體介面開機載入程序(UEFI boot loader)與第一母可開機虛擬映像檔透過一雲端儲存器提供。 In an embodiment of the present invention, the above-mentioned Unified Extensible Firmware Interface boot loader (UEFI boot loader) and the first mother bootable virtual image file are provided through a cloud storage.

本發明更包含一種用以驗證第一母可開機虛擬映像檔與第一子虛擬映像檔之間之相依性的方法,包含一步驟為確認第一母可開機虛擬映像檔與第一子虛擬映像檔之間之相依性。 The present invention further includes a method for verifying the dependency between the first parent bootable virtual image file and the first child virtual image file, comprising a step of confirming the dependency between the first parent bootable virtual image file and the first child virtual image file.

在本發明中之一實施例,其中上述之確認步驟包含:確認第一母可開機虛擬映像檔與第一子虛擬映像檔之間動態磁碟標頭(dynamic disk headers)是否相同;以及確認是否在第一子虛擬映像檔之動態磁碟標頭中一母通用唯一標示符(UUID;Universally Unique Identifier)與在第一母可開機虛擬映像檔的一硬碟頁標(footer)中一通用唯一標示符(UUID)是否相同。 In one embodiment of the present invention, the above-mentioned confirming step includes: confirming the dynamic disk header (dynamic disk header) between the first parent bootable virtual image file and the first child virtual image file disk headers) are the same; and confirm whether a Universally Unique Identifier (UUID; Universally Unique Identifier) in the dynamic disk header of the first sub-virtual image file is the same as a Universally Unique Identifier (UUID) in a hard disk footer of the first parent bootable virtual image file.

在本發明中之一實施例,其中在上述之差分步驟中一資料加入於第一子虛擬映像檔。 In an embodiment of the present invention, a data is added to the first sub-virtual image file in the above-mentioned difference step.

本發明同時提供一種佈署資訊處理系統的方法,包含以下步驟:建立一開機管理管理程式以及一配置模組於一儲存裝置之一可延伸介面分割區;執行一雲端執行緒指令以下載一指定可開機虛擬映像檔於該儲存裝置之該分割區;附加一旗標於該指定可開機虛擬映像檔與該配置模組;以及對該資訊處理系統重新開機。 The present invention also provides a method for deploying an information processing system, comprising the following steps: establishing a boot management program and a configuration module in an extensible interface partition of a storage device; executing a cloud thread command to download a designated bootable virtual image file in the partition of the storage device; attaching a flag to the designated bootable virtual image file and the configuration module; and restarting the information processing system.

本發明同時提供一種電腦實現方法,係用以使得一資訊處理系統可以在多重環境下作業,包含以下之步驟:當上述之資訊處理系統開機時,藉由一統一可延伸韌體介面(UEFI)唯讀記憶體(ROM;Read Only Memory)確認前述資訊處理系統的所有元件是否配置正確;在一儲存裝置中的一可延伸韌體介面系統分割區(UEFI partition)中,載入一統一可延伸韌體介面開機載入程序(UEFI boot loader),其具有一母可開機虛擬映像檔、一第一子虛擬映像檔及一第二子虛擬映像檔於上述儲存裝置中一分割區;其中上述之第一與第二子虛擬映像檔係從前述之母可開機虛擬映像檔中產生,其中上述第一虛擬映像檔較前述第二虛擬映像檔為前;確認上述母可開機虛擬映像檔與前述第二子虛擬映像檔之間之相依性;確定上述第二子虛擬映像檔為一開機元件;以及載入上述開機元件之一作業系統。 The present invention also provides a computer-implemented method, which is used to enable an information processing system to operate in multiple environments, including the following steps: when the above-mentioned information processing system is turned on, confirm whether all components of the aforementioned information processing system are configured correctly through a unified extensible firmware interface (UEFI) read only memory (ROM; Read Only Memory); boot loader), which has a parent bootable virtual image file, a first sub-virtual image file and a second sub-virtual image file in a partition in the above-mentioned storage device; wherein the above-mentioned first and second sub-virtual image files are generated from the aforementioned mother bootable virtual image file, wherein the above-mentioned first virtual image file is before the aforementioned second virtual image file; confirm the dependency between the above-mentioned parent bootable virtual image file and the aforementioned second sub-virtual image file; determine that the above-mentioned second sub-virtual image file is a boot component; and load the operating system of the above-mentioned boot component.

在本發明中之一實施例,其中上述之可延伸韌體介面開機載入程序(UEFI bootloader)在前述之母可開機虛擬映像檔中包含上述之作業 系統檔案系統屬性。 In one embodiment of the present invention, wherein the above-mentioned Extensible Firmware Interface boot loader (UEFI bootloader) includes the above-mentioned operations in the aforementioned mother bootable virtual image file System file system properties.

在本發明中之一實施例,上述之確認步驟包含:確認第一母可開機虛擬映像檔與第二子虛擬映像檔之間動態磁碟標頭(dynamic disk headers)是否相同;以及確認是否在第二子虛擬映像檔之動態磁碟標頭中一母通用唯一標示符(parent UUID;Universally Unique Identifier)與在母可開機虛擬映像檔的一硬碟頁標(hard disk footer)中一通用唯一標示(UUID)符是否相同。 In one embodiment of the present invention, the above-mentioned confirmation step includes: confirming whether the dynamic disk headers (dynamic disk headers) between the first parent bootable virtual image file and the second child virtual image file are the same; Whether the identification (UUID) characters are the same.

本發明之電腦實現方法,在上述之確認步驟中當第二子虛擬映像檔失效後,更包含一步驟以複蓋(duplicate)上述之第一子虛擬映像檔為前述之第二子虛擬映像檔。 The computer-implemented method of the present invention further includes a step of duplicating the above-mentioned first sub-virtual image file into the aforementioned second sub-virtual image file when the second sub-virtual image file fails in the above-mentioned confirming step.

在本發明中之一實施例,其中上述之覆蓋步驟為自動執行。 In an embodiment of the present invention, the above-mentioned covering steps are performed automatically.

本發明同時提供一種資訊處理系統,包含:一儲存裝置用以儲存至少一統一可延伸韌體介面開機載入程序(UEFI bootloader);一處理器,與上述儲存裝置交互耦合,上述處理器具有韌體以在其上執行,使得前述之資訊處理系統得以在多重環境中作業,其中之韌體配置上述處理器用以:當上述資訊處理系統開機時,藉由一統一可延伸韌體介面(UEFI)唯讀記憶體(ROM)確認上述資訊處理系統的所有元件是否配置正確;在一儲存裝置中的一可延伸韌體介面系統分割區(UEFI partition)中,載入一統一可延伸韌體介面開機載入程序(UEFI bootloader),其具有一母可開機虛擬映像檔、一第一子虛擬映像檔及一第二子虛擬映像檔於前述儲存裝置中一分割區;其中上述第一與第二子虛擬映像檔係從前述母可開機虛擬映像檔中產生,其中之第一虛擬映像檔較第二虛擬映像檔為前;確認上述之母可開機虛擬映像檔與前述之第二子虛擬映像檔之間之相依性;確定上述第二子虛擬映像檔為一開機元件;以及載入上述開機元件之一作業系統。 The present invention also provides an information processing system, comprising: a storage device for storing at least one Unified Extensible Firmware Interface boot loader (UEFI bootloader); a processor interactively coupled with the storage device, the processor having firmware to execute on it, so that the aforementioned information processing system can operate in multiple environments, wherein the firmware configures the aforementioned processor to: when the aforementioned information processing system is powered on, via a Unified Extensible Firmware Interface (UEFI) read-only memory (ROM) to confirm whether all components of the aforementioned information processing system are The configuration is correct; in an Extensible Firmware Interface system partition (UEFI partition) in a storage device, a unified Extensible Firmware Interface bootloader (UEFI bootloader) is loaded, which has a parent bootable virtual image file, a first sub-virtual image file and a second sub-virtual image file in a partition in the aforementioned storage device; wherein the above-mentioned first and second sub-virtual image files are generated from the aforementioned parent bootable virtual image file, wherein the first virtual image file is ahead of the second virtual image file; confirm the above-mentioned parent The dependency between the bootable virtual image file and the aforementioned second sub-virtual image file; determining the aforementioned second sub-virtual image file as a bootable component; and loading an operating system of the aforementioned bootable component.

在本發明中之一實施例,其中上述之可延伸韌體介面開機載入程序(UEFI bootloader)包含在母可開機虛擬映像檔中之作業系統之檔案系統屬性。 In an embodiment of the present invention, wherein the above-mentioned UEFI bootloader includes the file system attribute of the operating system in the parent bootable virtual image file.

在本發明中之一實施例,其中上述之韌體配置處理器確認相依性中更進一步配置:確認第一母可開機虛擬映像檔與第二子虛擬映像檔之間動態磁碟標頭是否相同;以及確認是否在第二子虛擬映像檔之動態磁碟標頭中一母通用唯一標示符(UUID)與在母可開機虛擬映像檔的一硬碟頁標中一通用唯一標示符(UUID)是否相同。 In one embodiment of the present invention, wherein the above-mentioned firmware configuration processor is further configured in confirming dependencies: confirming whether the dynamic disk header between the first parent bootable virtual image file and the second child virtual image file is the same;

在本發明中之一實施例,其中上述之韌體更進一步配置處理器以複蓋第一子虛擬映像檔為第二子虛擬映像檔。 In an embodiment of the present invention, the above-mentioned firmware further configures the processor to overwrite the first sub-virtual image file into the second sub-virtual image file.

在本發明中之一實施例,其中上述之第一子虛擬映像檔係自動覆蓋。 In an embodiment of the present invention, the above-mentioned first sub-virtual image file is automatically overwritten.

以上發明摘要包含簡化、概括和細節的省略,且非意圖作為所請求保護標的之完整描述,而是旨在提供與其相關聯的一些功能性的簡要摘述。通過檢查之後的圖示與詳細的書面描述,請求保護標的之其他系統、方法、功能、特徵和優點對於習知該技藝者是或將是變得顯而易見。 The above Summary contains simplifications, generalizations, and omissions of detail and is not intended to be a complete description of claimed subject matter but rather to provide a brief summary of some of the functionality associated therewith. Other systems, methods, functions, features and advantages of the claimed subject matter are or will become apparent to those skilled in the art upon examination of the ensuing illustrations and detailed written description.

10:雲端儲存 10: Cloud storage

20:大量複製 20: Mass copying

100:資訊處理系統 100: Information Processing System

102:處理器 102: Processor

106:前端匯流排 106: Front busbar

108:平台控制集線器 108:Platform Control Hub

110:圖形設備 110: Graphics device

112:圖形匯流排 112: graphic bus

113:隨機存取記憶體 113: Random access memory

114:系統記憶體 114: System memory

116:記憶體匯流排 116: Memory bus

120:儲存裝置 120: storage device

122:預設統一可延伸韌體介面磁碟 122: Default unified extensible firmware interface disk

124:磁碟0 124: Disk 0

125:可延伸韌體介面系統分割區 125: Extensible firmware interface system partition

126:微軟保留區 126:Microsoft reserved area

127:主分割區 127: Primary partition

130:埠、針腳(引腳)、連接器 130: port, pin (pin), connector

134:匯流排 134: busbar

136:外設組件互連標準元件 136: Peripheral component interconnection standard components

138:外設組件互連標準匯流排 138: Peripheral component interconnection standard bus

139:非揮發性記憶體 139: Non-volatile memory

140:基本輸入輸出系統/統一可延伸韌體介面 140:BIOS/Unified Extensible Firmware Interface

142:超級輸入/輸出 142: Super I/O

144:基板管理控制器 144: Baseboard Management Controller

146:低引腳數匯流排 146: Low pin count bus

160:網路介面設備 160: Network interface equipment

162:外設組件互連標準匯流排 162: Peripheral component interconnection standard bus

170:網路 170: Network

180:遠端存取控制器 180: remote access controller

182:外設組件互連標準匯流排 182: Peripheral component interconnection standard bus

184:遠端存取控制器記憶體 184: Remote access controller memory

186:邊帶匯流排 186: Sideband bus

202:應用程式 202: Application

204:作業系統 204: Operating System

250:基本輸入輸出系統/統一可延伸韌體介面 250: BIOS/Unified Extensible Firmware Interface

252:統一可延伸韌體介面運行時服務表 252: Unified Extensible Firmware Interface Runtime Service Table

253:統一可延伸韌體介面開機服務 253: Unified Extensible Firmware Interface Boot Service

254:統一可延伸韌體介面記憶體映射 254: Unified Extensible Firmware Interface Memory Mapping

255:多內存描述符能力位元 255: Multiple Memory Descriptor Capability Bits

256:高級配置和電源介面表 256:Advanced configuration and power interface table

260:韌體 260:Firmware

262:開機管理程式 262:Boot management program

262-1:資訊處理系統統一可延伸韌體介面開機管理程式 262-1: Unified Extensible Firmware Interface Boot Management Program for Information Processing System

262-2:作業系統開機管理程式OS Boot Manager 262-2: OS Boot Manager

264:作業系統載入器 264: Operating system loader

266:配置模組 266: Configuration module

268:開機選單 268:Boot menu

300:開機操作的時序圖或相位圖 300: Timing diagram or phase diagram of power-on operation

310:開機操作包括安全階段 310: Start-up operation includes safety phase

312:預驗證器 312: Pre-validator

320:前可延伸韌體介面初始化階段 320: Pre-extensible firmware interface initialization phase

322:前可延伸韌體介面初始化階段核心 322: Pre-extensible firmware interface initialization phase core

324:中央處理器初始化 324: CPU initialization

326:晶片組初始化 326: Chipset initialization

328:板資源初始化 328: Board resource initialization

330:驅動程序執行環境階段 330: Driver execution environment stage

334:驅動程式 334: Driver

332:EFI驅動程序調度程序 332:EFI Driver Scheduler

340:開機設備選擇階段 340: Boot device selection stage

350:瞬態系統載入階段 350:Transient system loading phase

352:開機載入程序 352: Bootloader

354:啟動選單 354: start menu

356:自生作業系統環境 356: Self-generated operating system environment

360:運行時階段 360: Runtime Phase

362:作業系統運行階段 362: Operating system running phase

400:桌面分層 400: Desktop layering

402:作業系統層 402: operating system layer

404:應用層 404: Application layer

406:資料層 406: data layer

412:作業系統層 412: operating system layer

414:應用層 414: Application layer

416:資料層 416: data layer

422:作業系統層 422: operating system layer

424:應用層 424: application layer

502:虛擬磁碟 502: virtual disk

504:虛擬磁碟 504: virtual disk

506:虛擬磁碟 506: virtual disk

結合以下的圖示可以顯示出所舉例之實施例的敘述。應當理解,為了圖示的簡單和清楚起見,圖中所顯示的要件不一定按比例繪製。例如,某一些要件的尺寸相對於其他要件被誇大了。整合本揭露書之教導的實施例與相對於本文呈現的圖描述的實施例都會顯示,其中: A description of exemplary embodiments can be shown in conjunction with the following figures. It should be understood that, for simplicity and clarity of illustration, elements shown in the figures have not necessarily been drawn to scale. For example, the dimensions of some of the elements are exaggerated relative to other elements. Embodiments incorporating the teachings of this disclosure are shown and described with respect to the figures presented herein, in which:

第1圖係根據本發明的一個或多個實施例,圖示資訊處理系統的一個實施例,其中可以實施本揭露書的各種方式。 FIG. 1 illustrates one embodiment of an information processing system in which various aspects of the present disclosure can be implemented, according to one or more embodiments of the present invention.

第2A圖係根據本發明的一個或多個實施例,圖示資訊處理 系統中的系統記憶體的範例內容。 Figure 2A illustrates information processing according to one or more embodiments of the present invention Sample contents of system memory in the system.

第2B圖係根據本發明的一個或多個實施例,圖示一種非揮發性記憶體的範例內容,其中包括用於開機資訊處理系統的韌體。 FIG. 2B illustrates an example of the contents of a non-volatile memory, including firmware for booting an information processing system, according to one or more embodiments of the present invention.

第3A圖是對於傳統的資訊處理系統的統一可延伸韌體介面(UEFI)開機的時序圖或相位圖。 FIG. 3A is a timing diagram or a phase diagram of Unified Extensible Firmware Interface (UEFI) booting for a traditional information processing system.

第3B圖是根據本發明的一個實施例的資訊處理系統的統一可延伸韌體介面(UEFI)開機的時序圖或相位圖。 FIG. 3B is a timing diagram or a phase diagram of Unified Extensible Firmware Interface (UEFI) booting of an information processing system according to an embodiment of the present invention.

第3C圖是根據本發明的另一個實施例的資訊處理系統的統一可延伸韌體介面(UEFI)開機的時序圖或相位圖。 FIG. 3C is a timing diagram or a phase diagram of Unified Extensible Firmware Interface (UEFI) booting of an information processing system according to another embodiment of the present invention.

第4圖係根據本發明一實施例,圖示利用可開機虛擬映像檔進行資訊處理系統開機作業的示意圖。 FIG. 4 is a schematic diagram illustrating the boot operation of an information processing system by using a bootable virtual image file according to an embodiment of the present invention.

第5圖係根據本發明的一個實施例,圖示具有分區的可開機儲存器的示意圖。 FIG. 5 is a schematic diagram illustrating a bootable storage with partitions according to an embodiment of the present invention.

第6圖係本發明一實施例,圖示在諸多資訊處理系統、雲端儲存器以及具有可開機虛擬鏡像檔之實體硬碟與的關係示意圖。 Fig. 6 is an embodiment of the present invention, which shows the relationship between many information processing systems, cloud storage, and physical hard disks with bootable virtual image files.

第7圖係根據本發明的一個實施例,圖示用於佈署資訊處理系統的方法的一個的流程圖。 FIG. 7 is a flowchart illustrating one of the methods for deploying an information handling system, according to one embodiment of the present invention.

第8圖係根據本發明的一個實施例,圖示用於檢查可開機虛擬映像檔之間的相依性關係的方法的一個流程圖。 FIG. 8 is a flowchart illustrating a method for checking dependencies among bootable virtual images according to an embodiment of the present invention.

第9圖係根據本發明一實施例,圖示用於確認可開機虛擬映像檔資料的詳細檢查方法的一個例子的流程圖。 FIG. 9 is a flowchart illustrating an example of a detailed inspection method for confirming bootable virtual image file data according to an embodiment of the present invention.

第10圖係根據本發明的一個實施例,圖示使資訊處理系統能夠以多種配置操作的方法的一個示例的流程圖。 Figure 10 is a flowchart illustrating one example of a method of enabling an information handling system to operate in various configurations, according to one embodiment of the present invention.

解說的實施例提供了一種佈署方法、一種資訊處理系統和子系統,用於使資訊處理系統能夠使用不同的作業系統環境、不同的應用環境或不同的資訊數據來作業。 The illustrated embodiments provide a deployment method, an information processing system and subsystems for enabling the information processing system to operate using different operating system environments, different application environments, or different information data.

在之後本揭露書中的解說實施例之詳細描述中,充分詳細地描述了其中可以實施本揭露書的特定範例實施例,以使熟知本技術領域者能夠實施揭露書中的實施例。例如,已經呈現了諸如特定方法順序、結構、要件和連接之類的特定細節。然而,應當理解,在本發明中不需要利用所呈現的具體細節來實施本揭露書的實施例。且應當理解,在不脫離本揭露書的一般範圍的情況下,可以利用其他實施例並且可以進行邏輯、架構、程序化、機械、電氣和其他改變。因此,以下詳細描述不應被視為限制意義,並且本揭露書的範圍由所附權利請求項及其等效與以限定。 In the following detailed description of the illustrated embodiments of the disclosure, specific example embodiments in which the disclosure may be practiced are described in sufficient detail to enable those skilled in the art to practice the embodiments of the disclosure. For example, specific details such as specific method sequences, structures, elements and connections have been presented. It is understood, however, that the specific details presented need not be utilized in practicing embodiments of the disclosure. And it is to be understood that other embodiments may be utilized and logical, architectural, procedural, mechanical, electrical, and other changes may be made without departing from the general scope of the present disclosure. Accordingly, the following detailed description should not be taken in a limiting sense, and the scope of the disclosure is defined by the appended claims and their equivalents.

說明書中對“一個實施例”、“一個範例”、“多個實施例”或“一個或多個實施例”的引用旨在指示結合實施例描述的特定特徵、結構或特性,至少包括在本揭露書中的一個實施例。在說明書中不同地方出現的這些片語不一定都指代相同的實施例,也不是與其他實施例相互排斥之單獨或替代實施例。此外,描述了可以由一些實施例展示的各種特徵,且不由其他實施例。類似地,描述了各種要求,這些要求可能是一些實施例的要求而不是其他實施例的要求。 References in the specification to "one embodiment," "an example," "embodiments," or "one or more embodiments" are intended to indicate a particular feature, structure, or characteristic described in connection with the embodiments, including at least one embodiment in this disclosure. The appearances of these phrases in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. Furthermore, various features were described that may be exhibited by some embodiments and not by others. Similarly, various requirements are described which may be requirements of some embodiments but not others.

應當理解,特定組件(component)、元件和/或參數名稱和/或其對應的首字母縮略詞(acronyms)的使用,例如在此描述的執行實用程序、邏輯和/或韌體的那些,僅作為範例,並不意味著暗示任何對所描述的實施例的限制。實施例因此可以用不同的命名法和/或術語來描述,用於描述這裡的組件、設備、參數、方法和/或功能,而不受限制。在描述實施例的一個或多個要件、特徵或概念時對任何特定協議或專有名稱的引用僅作為一 種實現的範例提供,並且此類引用並不限制所要主張的實施例的延伸到使用不同要件、特徵、協議或概念名稱的實施例。因此,鑑於使用該術語的上下文,這裡使用的每個術語將被賦予其最廣泛的解釋。 It should be understood that the use of specific component, element and/or parameter names and/or their corresponding acronyms, such as those described herein to implement utility, logic and/or firmware, is by way of example only and is not meant to imply any limitation to the described embodiments. Embodiments may therefore be described using different nomenclature and/or terms used to describe components, devices, parameters, methods and/or functions herein without limitation. References to any specific protocols or proprietary names in describing one or more elements, features, or concepts of the embodiments are intended only as a Examples of such implementations are provided, and such references do not limit the extension of claimed embodiments to embodiments using different elements, features, protocols, or concept names. Accordingly, each term used herein is to be given its broadest interpretation given the context in which that term is used.

第1圖舉例說明一種範例的資訊處理系統(HIS;Information Handling System)100的方塊示意圖,其中可以實現本揭露書的各種實施例的一個或多個所描述的特徵。出於本揭露書的目的,諸如資訊處理系統100之類的資訊處理系統可以包括可操作以計算、分類、處理、傳輸、接收、讀取(retrieve)、發起(originate)、切換(switch)、儲存、顯示、表示(manifest)、檢測(detect)、記錄、重製(reproduce)、處理(handle)或利用為商業、科學、控製或其他目的任何形式的資訊、情報或資料。例如,資訊處理系統可以是手持設備(handheld device)、個人電腦、伺服器(server)、網路儲存設備(network storage device)或任何其他合適的設備,並且可以在尺寸、形狀、性能、功能和價格方面變化。資訊處理系統可以包括隨機存取儲存器(RAM;Random Access Memory)、一個或多個處理資源例如中央處理器(CPU;Central Process Unit)或硬體或軟體控制邏輯、唯讀記憶體(ROM;Read Only Memory)和/或其他類型的非揮發性(Non-Volatile)記憶體。資訊處理系統的附加組件可能包括一個或多個磁碟機、一個或多個用於與外部設備以及各種輸入和輸出(I/O;Input/Output)設備通信的網路埠(port),例如鍵盤、滑鼠和顯示器。資訊處理系統還可包括可操作以在各種硬體組件之間傳輸通信的一條或多條匯流排(bus)。 FIG. 1 illustrates a block diagram of an exemplary information handling system (HIS; Information Handling System) 100, in which one or more of the described features of various embodiments of the present disclosure can be implemented. For purposes of this disclosure, an information handling system such as information handling system 100 may include information, intelligence, or data in any form operable to compute, classify, process, transmit, receive, retrieve, originate, switch, store, display, manifest, detect, record, reproduce, handle, or exploit for commercial, scientific, control, or other purposes. For example, an information handling system may be a handheld device, personal computer, server, network storage device, or any other suitable device, and may vary in size, shape, performance, functionality, and price. An information processing system may include random access memory (RAM; Random Access Memory), one or more processing resources such as a central processing unit (CPU; Central Process Unit) or hardware or software control logic, read only memory (ROM; Read Only Memory), and/or other types of non-volatile (Non-Volatile) memory. Additional components of an information handling system may include one or more disk drives, one or more network ports for communicating with external devices, and various input and output (I/O; Input/Output) devices, such as keyboards, mice, and monitors. An information handling system may also include one or more buses operable to carry communications between various hardware components.

具體參照第1圖,顯示一種資訊處理系統100的範例。資訊處理系統100包括一個或多個處理器102。在各種實施例中,資訊處理系統100可以是包括一個處理器102的單一處理器系統,或包括兩個或更多個處理器102(例如,兩個、四個、八個或任何其他合適數量)的多處理器系統。處理 器102包括能夠執行程序指令的任何處理器。在一個實施例中,提供了一種主機板(mother board),其被配置為在各種上述部件之間提供結構支撐、電力和電性連接。這樣的主機板可以包括各種配置的多個連接器插座,適用於接收可插拔電路卡、零件晶片封裝等。當處理器102包括系統記憶體(system memory)114的控制器時,處理器102經由隨機存取記憶體(RAM)匯流排113耦合到系統記憶體114。系統記憶體114可以被配置為儲存可由處理器102存取的程序指令和/或資料。在各種實施例中,系統記憶體114可以使用任何合適的儲存器技術來實現,例如靜態隨機存與記憶體(SRAM;Static RAM)、同步動態隨機存取記憶體(SDRAM;synchronous DRAM)、非揮發性記憶體/快閃記憶體(flash memory),或任何其他種類型的儲存器。 Referring specifically to FIG. 1 , an example of an information processing system 100 is shown. The information handling system 100 includes one or more processors 102 . In various embodiments, information handling system 100 may be a single processor system including one processor 102, or a multi-processor system including two or more processors 102 (eg, two, four, eight, or any other suitable number). deal with Processor 102 includes any processor capable of executing program instructions. In one embodiment, there is provided a mother board configured to provide structural support, power and electrical connections between the various above-described components. Such motherboards may include a plurality of connector sockets in various configurations adapted to receive pluggable circuit cards, component die packages, and the like. When processor 102 includes a controller for system memory 114 , processor 102 is coupled to system memory 114 via random access memory (RAM) bus 113 . System memory 114 may be configured to store program instructions and/or data accessible by processor 102 . In various embodiments, the system memory 114 may be implemented using any suitable memory technology, such as static random access memory (SRAM; Static RAM), synchronous dynamic random access memory (SDRAM; synchronous DRAM), non-volatile memory/flash memory, or any other type of memory.

處理器102通過前端匯流排(front-end bus)106耦合到以英特爾(Intel)命名的平台控制器集線器(PCH;platform controller hub)、以超微(AMD)命名的融合控制器集線器(FCH;Fusion Controller Hubs)或晶片組(chipset)108,以下為簡單起見將稱為平台控制器集線器。平台控制器集線器108可以被配置為協調處理器102和其他組件之間的輸入/輸出流量。例如,在上述之特定實現中,平台控制器集線器108經由圖形匯流排112,例如,加速圖形端口(AGP;Accelerated Graphics Port)或加速圖形端口匯流排(AGP bus)、高速串列計算機擴展匯流排標準(PCI-E;Peripheral Component Interconnect-Express)匯流排,耦合到圖形設備110(例如,一個或多個顯示卡或附加卡等)。如果處理器102包括圖形設備110的控制器,則圖形設備110可以直接耦合到處理器102。在一個實施例中,圖形設備110可以內建在處理器102中。 The processor 102 is coupled to a platform controller hub (PCH; platform controller hub) named after Intel (Intel), a fusion controller hub (FCH; Fusion Controller Hubs) named after AMD, or a chipset (chipset) 108 through a front-end bus (front-end bus) 106, which will be referred to as a platform controller hub for simplicity below. Platform controller hub 108 may be configured to coordinate input/output traffic between processors 102 and other components. For example, in the specific implementation described above, the platform controller hub 108 is coupled to a graphics device 110 (eg, one or more display cards or add-in cards, etc.) via a graphics bus 112, such as an Accelerated Graphics Port (AGP) or an Accelerated Graphics Port bus (AGP bus), a PCI-E (Peripheral Component Interconnect-Express) bus. If processor 102 includes a controller for graphics device 110 , graphics device 110 may be directly coupled to processor 102 . In one embodiment, graphics device 110 may be built into processor 102 .

同時耦合到儲存器匯流排(memory bus)116的是儲存設備(storage device)或儲存器(storage)120,其中可以儲存一個或多個軟體和/或韌 體模組和/或資料(未具體顯示)。在一實施例中,儲存器120可以是硬碟(Hard Disk或Hard Drive)或固態硬碟(Solid State Disk或Solid State Drive)。在資訊處理系統100的作業期間,可以將儲存器120內的一個或多個軟體和/或韌體模組載入到系統記憶體114中。 Also coupled to memory bus 116 is a storage device or storage 120 in which one or more software and/or firmware may be stored. phantoms and/or profiles (not specifically shown). In one embodiment, the storage 120 may be a hard disk (Hard Disk or Hard Drive) or a solid state disk (Solid State Disk or Solid State Drive). During operation of information handling system 100 , one or more software and/or firmware modules within storage 120 may be loaded into system memory 114 .

平台控制器集線器108還通過外設組件互連匯流排(PCI bus)138耦合到一個或多個外設組件互連設備(PCI devices)136,例如,數據機(MODEM)、網路卡、音效卡、顯示卡、共享記憶體等。平台控制器集線器108還通過匯流排134耦合到埠(port)、引腳(pin)和/或附加卡(adapter)130。通常,平台控制器集線器108可以被配置為處理不同的輸入/輸出操作,並且平台控制器集線器108可以提供介面,例如,透過位於匯流排134上的埠(port)、引腳(Pin)和/或附加卡(Adapter)130,通用串行匯流排(USB;Universal Serial Bus)、聲音、序列(serial)、並列(parallel)、以太網和其他介面。例如,平台控制器集線器108可以被配置為允許資料在資訊處理系統100和其他設備之間交換,例如連接到網路的其他資訊處理系統。在各種實施例中,平台控制器集線器108可以支援經由有線或無線通用數據網路,例如任何合適類型的以太網、經由電信/電話網路,例如類比語音網路或數字光纖通信網路、經由儲存區域網路,例如光纖通道的區域儲存網路(SAN;Storage Area Network)、或通過任何其他合適類型的網路和/或協定。 The platform controller hub 108 is also coupled to one or more peripheral component interconnect devices (PCI devices) 136 via a peripheral component interconnect bus (PCI bus) 138, such as a modem (MODEM), network card, sound card, display card, shared memory, etc. Platform controller hub 108 is also coupled to ports, pins, and/or adapters 130 through bus bars 134 . In general, the platform controller hub 108 can be configured to handle different input/output operations, and the platform controller hub 108 can provide interfaces, such as USB (Universal Serial Bus), voice, serial, parallel, Ethernet and other interfaces, through ports, pins and/or adapters 130 on the bus 134. For example, platform controller hub 108 may be configured to allow data to be exchanged between information handling system 100 and other devices, such as other information handling systems connected to a network. In various embodiments, the platform controller hub 108 may support communication via a wired or wireless general purpose data network, such as any suitable type of Ethernet, via a telecommunications/telephone network, such as an analog voice network or a digital optical communication network, via a storage area network, such as a Fiber Channel Storage Area Network (SAN), or via any other suitable type of network and/or protocol.

平台控制器集線器108還可以連接到一個或多個輸入設備,例如鍵盤、小鍵盤(keypad)、觸控螢幕(touch screen)、掃描設備、語音或光學識別設備或任何其他適合輸入或讀取資料的設備。資訊處理系統100中可能存在多個輸入/輸出設備。在一些實施例中,輸入/輸出設備可以與資訊處理系統100分離並且可以通過有線或無線連接與資訊處理系統100交互聯繫。平台控制器集線器108經由低引腳數(LPC;Low Pin Count)匯流排146耦 合到儲存基本輸入輸出系統(BIOS;Basic Input output System)/統一可延伸韌體介面(UEFI;Unified Extensible Firmware Interface)140的非揮發性記憶體(NV Memory;Nonvolatile Memory)或儲存器設備139。平台控制器集線器108還通過低引腳數匯流排146耦合到超級輸入/輸出控制器(Super I/O)142和基板管理控制器(BMC;Baseboard Management Controller)144。 Platform controller hub 108 may also be connected to one or more input devices, such as a keyboard, keypad, touch screen, scanning device, voice or optical recognition device, or any other suitable device for inputting or reading data. There may be multiple input/output devices in the information processing system 100 . In some embodiments, the input/output devices may be separate from the information handling system 100 and may interact with the information handling system 100 through wired or wireless connections. The platform controller hub 108 is coupled via a low pin count (LPC; Low Pin Count) bus 146 A non-volatile memory (NV Memory; Nonvolatile Memory) or a storage device 139 connected to a Basic Input Output System (BIOS; Basic Input Output System)/Unified Extensible Firmware Interface (UEFI; Unified Extensible Firmware Interface) 140 . The platform controller hub 108 is also coupled to a super input/output controller (Super I/O) 142 and a baseboard management controller (BMC; Baseboard Management Controller) 144 through a low pin count bus bar 146 .

基本輸入輸出系統(BIOS)/統一可延伸韌體介面(UEFI)140儲存在非揮發性記憶體139上並且包括儲存在其上的程序指令。這些指令可由處理器102用於初始化和測試其他硬體組件和/或將作業系統(OS;Operating System)載入到資訊處理系統100上。因此如下文更詳細描述的,基本輸入輸出系統/統一可延伸韌體介面140可以包括允許處理器102載入和執行特定韌體的韌體介面。在某些情況下,這種韌體可能包括與統一可延伸韌體介面(UEFI)規範兼容的程序代碼(code),但也可以使用其他類型的韌體。 Basic Input Output System (BIOS)/Unified Extensible Firmware Interface (UEFI) 140 is stored on non-volatile memory 139 and includes program instructions stored thereon. These instructions can be used by the processor 102 to initialize and test other hardware components and/or load an operating system (OS; Operating System) on the information processing system 100 . Thus, as described in more detail below, the BIOS/UEF interface 140 may include a firmware interface that allows the processor 102 to load and execute specific firmware. In some cases, such firmware may include code compliant with the Unified Extensible Firmware Interface (UEFI) specification, but other types of firmware may also be used.

基板管理控制器(BMC;Board Management Controller)144可以包括其上儲存有程序指令的非揮發性記憶體139,這些程序指令可由處理器102使用以實現資訊處理系統100的遠端管理。例如,基板管理控制器(BMC)144可以使用戶能夠發現、配置和管理基板管理控制器(BMC)144、設置配置選項、解決和管理硬體或軟體問題等。附加地或替代地,基板管理控制器(BMC)144可以包括一個或多個基板管理控制器韌體量(volume),每個量具有一個或多個韌體文件,基本輸入輸出系統的韌體介面使用該韌體文件來初始化和測試資訊處理系統100的組件。超級輸入/輸出(Super I/O)控制器142結合了各種低帶寬(bandwidth)或低數據速率設備的介面。這些設備可以包括例如軟碟、平行埠、鍵盤和滑鼠以及其他設備。 A baseboard management controller (BMC; Board Management Controller) 144 may include a non-volatile memory 139 storing program instructions thereon, and these program instructions may be used by the processor 102 to implement remote management of the information processing system 100 . For example, baseboard management controller (BMC) 144 may enable a user to discover, configure, and manage baseboard management controller (BMC) 144 , set configuration options, troubleshoot and manage hardware or software problems, and the like. Additionally or alternatively, baseboard management controller (BMC) 144 may include one or more baseboard management controller firmware volumes, each volume having one or more firmware files that are used by the BIOS's firmware interface to initialize and test components of information handling system 100. Super I/O controller 142 combines the interfaces of various low bandwidth or low data rate devices. These devices may include, for example, floppy disks, parallel ports, keyboards and mice, among others.

在一些情況下,資訊處理系統100可以被配置為存取(access) 與系統記憶體114分離的不同類型的電腦可存取媒體。一般而言,電腦可存取儲存設備可包括任何有形的(tangible)、非暫時性(non-transitory)的儲存媒介或儲存媒介,例如電子的、磁性或光學媒介(optical media),例如,磁碟機、硬碟、光碟(CD/DVD-ROM)、快閃儲存器等可耦合到平台控制集線器108。 In some cases, information handling system 100 may be configured to access Different types of computer-accessible media are separate from system memory 114 . In general, computer-accessible storage devices may include any tangible (tangible), non-transitory (non-transitory) storage media or storage media, such as electronic, magnetic or optical media (optical media), for example, disk drives, hard disks, optical disks (CD/DVD-ROM), flash memory, etc. can be coupled to the platform control hub 108 .

資訊處理系統100還包括通過外設組件互連匯流排(PCI bus)162耦合到平台控制器集線器108的一個或多個網路介面設備(NID;Network Interface Device)160。網路介面設備160使資訊處理系統100能夠與位於資訊處理系統100外部之其他設備、服務和組件通信和/或介面溝通。這些設備、服務和組件可以使用一種或多種通信協議經由外部網路,例如範例的網路170,與資訊處理系統100溝通。在一個實施例中,客戶制定的系統/平台可以包括位於分佈式網路中的多個設備,並且網路介面設備160使資訊處理系統100能夠連接到這些其他設備。網路170可以是區域網、廣域網、個人網等,並且網路170和資訊處理系統100之間和/或之間的連接可以是有線或無線或其組合。為了討論的目的,為簡單起見,網路170被指示為單個集合組件。然而,應當理解,網路170可以包括一個或多個到其他設備的直接連接以及一組更複雜的互連,如可以存在於廣域網,例如網際網路中的互連網。 The information handling system 100 also includes one or more network interface devices (NIDs) 160 coupled to the platform controller hub 108 via a peripheral component interconnect bus (PCI bus) 162 . Network interface device 160 enables information handling system 100 to communicate with and/or interface with other devices, services, and components external to information handling system 100 . These devices, services, and components may communicate with information processing system 100 via an external network, such as network 170 for example, using one or more communication protocols. In one embodiment, a custom system/platform may include multiple devices located in a distributed network, and the network interface device 160 enables the information handling system 100 to connect to these other devices. The network 170 may be a local area network, a wide area network, a personal network, etc., and the connection between and/or between the network 170 and the information processing system 100 may be wired or wireless or a combination thereof. For purposes of discussion, network 170 is indicated as a single collective component for simplicity. It should be understood, however, that network 170 may include one or more direct connections to other devices as well as a more complex set of interconnections, such as may exist in a wide area network, such as the Internet in the Internet.

資訊處理系統100還包括通過外設組件互連匯流排(PCI bus)182耦合到平台控制器集線器108的遠端存取控制器(RAC;Remote Access Controller)180。遠端存取控制器(RAC)180提供管理功能,允許管理員佈署、監控、管理、配置、更新、故障排除和修復資訊處理系統100。遠端存取控制器(RAC)180還耦合到遠端存取控制器記憶體(RAC memory)184。在一個實施例中,遠端存取控制器記憶體184可以與處理器102 共享。遠端存取控制器180還通過邊帶(sideband)匯流排186與網路介面設備160通信耦合。 The information handling system 100 further includes a remote access controller (RAC; Remote Access Controller) 180 coupled to the platform controller hub 108 through a peripheral component interconnect bus (PCI bus) 182 . Remote Access Controller (RAC) 180 provides management functions allowing administrators to deploy, monitor, manage, configure, update, troubleshoot and repair information handling system 100 . Remote access controller (RAC) 180 is also coupled to remote access controller memory (RAC memory) 184 . In one embodiment, remote access controller memory 184 may communicate with processor 102 shared. Remote access controller 180 is also communicatively coupled to network interface device 160 via sideband bus 186 .

遠端存取控制器(RAC)180監視和控制資訊處理系統100以及與資訊處理系統100通信耦合的其他系統和設備的操作。遠端存取控制器(RAC)180還可以對其他連接的資訊處理系統進行配置和遠程控制。遠端存取控制器(RAC)180可以執行儲存在遠端存取控制器記憶體184中的某些軟體和/或韌體模組。處理器102和遠端存取控制器(RAC)180包括使處理器102和遠端存取控制器(RAC)180能夠執行這裡描述的各種功能的特定韌體。 Remote access controller (RAC) 180 monitors and controls the operation of information handling system 100 and other systems and devices communicatively coupled with information handling system 100 . The remote access controller (RAC) 180 can also configure and remotely control other connected information processing systems. Remote access controller (RAC) 180 may execute certain software and/or firmware modules stored in RAC memory 184 . Processor 102 and remote access controller (RAC) 180 include specific firmware that enables processor 102 and remote access controller (RAC) 180 to perform the various functions described herein.

在本文中使用時,術語“有形(tangible)”和“非暫時性(non-transitory)”旨在描述不包括傳播電磁信號的電腦可讀儲存媒介(或“記憶體”);但並非旨在以其他方式限制片語“電腦可讀媒介”或記憶體所涵蓋的實體電腦可讀儲存設備的類型。例如,術語“非暫時性電腦可讀媒介”或“有形記憶體”旨在涵蓋不一定永久儲存資訊的儲存設備類型,包括例如隨機存取記憶體。以非暫時性形式儲存在電腦可存取的有形儲存媒介上的程序指令和資料隨後可以通過傳輸媒介或信號,例如電、電磁或數字信號,進行傳輸,這些信號可以通過通信媒介,例如網路和/或無線連接(link)。 As used herein, the terms "tangible" and "non-transitory" are intended to describe computer-readable storage media (or "memory") that do not include propagating electromagnetic signals; but are not intended to otherwise limit the types of tangible computer-readable storage devices covered by the phrase "computer-readable medium" or memory. For example, the terms "non-transitory computer-readable medium" or "tangible memory" are intended to cover types of storage devices that do not necessarily store information permanently, including, for example, random access memory. Program instructions and data stored in a non-transitory form on a computer-accessible tangible storage medium may subsequently be transmitted via transmission media or signals, such as electrical, electromagnetic or digital signals, which may pass through communication media, such as a network and/or a wireless link.

習知本技藝領域者將理解,資訊處理系統100僅是說明性的,並非旨在限制這裡描述之揭露書的範疇。特別地,任何電腦系統和/或設備可以包括能夠執行這裡描述的某些操作的硬體或軟體的任何組合。例如,雖然資訊處理系統100被圖示為遵循第一類型架構,但是這裡描述的各種系統和方法可以適於與具有不同晶片組和/或遠端存取控制器配置的任何其他架構一起工作。此外,在一些實施例中,由所示組件執行的操作可由較少組件執行或分佈在附加組件上。類似地,在其他實施例中,某些圖示 組件的操作可能無法執行,和/或可能還有其他額外的作業(operation)。 Those skilled in the art will appreciate that the information handling system 100 is illustrative only and is not intended to limit the scope of the disclosure described herein. In particular, any computer system and/or device may include any combination of hardware or software capable of performing certain operations described herein. For example, although information handling system 100 is illustrated as conforming to a first type of architecture, the various systems and methods described herein may be adapted to work with any other architecture having a different chipset and/or remote access controller configuration. Furthermore, in some embodiments, operations performed by illustrated components may be performed by fewer components or distributed over additional components. Similarly, in other embodiments, certain illustrations The component's operations may not be executed, and/or there may be other additional operations.

在其他實施方式中,可以不存在第1圖中所示的一個或多個設備或組件,或者可以添加一個或多個其他組件。因此,這裡描述的系統和方法可以用其他電腦系統配置來實現或執行。 In other implementations, one or more devices or components shown in Figure 1 may not be present, or one or more other components may be added. Accordingly, the systems and methods described herein can be implemented or performed with other computer system configurations.

現在參考第2A圖,舉例說明資訊處理系統100的系統記憶體114的範例內容的一個實施例。系統記憶體114包括資料、軟體和/或韌體模組,包括應用程式202和作業系統204。系統記憶體114還可以包括其他資料、軟體和/或韌體模組。 Referring now to FIG. 2A, one embodiment of exemplary contents of system memory 114 of information handling system 100 is illustrated. System memory 114 includes data, software and/or firmware modules, including applications 202 and operating system 204 . The system memory 114 may also include other data, software and/or firmware modules.

轉向第2B圖,舉例說明資訊處理系統100的非揮發性記憶體139的範例內容的一個實施例。非揮發性記憶體139包括基本輸入輸出系統/統一可延伸韌體介面(BOIS/UEFI)或統一可延伸韌體介面唯讀記憶體(UEFI ROM)140以及當基本輸入輸出系統/統一可延伸韌體介面140包含多個儲存器描述符(descriptors)時能夠啟動資訊處理系統100的單獨韌體260。基本輸入輸出系統/統一可延伸韌體介面140儲存可以在系統啟動期間由資訊處理系統100載入的統一可延伸韌體介面映像(UEFI image)250。統一可延伸韌體介面映像250包括統一可延伸韌體介面運行時服務表(UEFI runtime service table)252、統一可延伸韌體介面開機服務(UEFI boot service)253和高級配置和電源介面(ACPI;Advanced Configuration and Power Interface)表256。基本輸入輸出系統/統一可延伸韌體介面140還包括基本輸入輸出系統/統一可延伸韌體介面記憶體映射(UEFI memory map)254和多內存描述符能力(MMDC;Multiple Memory Descriptor Capable)位元(bit)255。 Turning to FIG. 2B, one embodiment of exemplary content of non-volatile memory 139 of information handling system 100 is illustrated. The non-volatile memory 139 includes a BIOS/UEFI or UEFI ROM 140 and a separate firmware 260 capable of booting the information processing system 100 when the BIOS/UEFI 140 includes multiple memory descriptors. The BIOS/UEF 140 stores a UEFI image 250 that can be loaded by the information processing system 100 during system startup. The UEFI image 250 includes a UEFI runtime service table 252 , a UEFI boot service 253 and an ACPI (Advanced Configuration and Power Interface) table 256 . The BIOS/UEFI 140 also includes a BIOS/UEFI memory map (UEFI memory map) 254 and a multiple memory descriptor capability (MMDC; Multiple Memory Descriptor Capable) bit (bit) 255 .

高級配置和電源介面是一種產業規範,其提供了一個開放標準,讓作業系統可以使用上述之標准進行電腦硬體發現、配置、電源管理和監控。高級配置和電源介面通過提供某些指令列表或表格作為系統韌體 的一部分來輸出可用功能。在系統啟動期間載入高級配置和電源介面表(ACPI table)256到系統記憶體114中,並且在作業系統啟動階段期間執行。高級配置和電源介面表256定義了符合高級配置和電源介面的作業系統和系統韌體之間的介面。大多數韌體高級配置和電源介面功能以儲存在高級配置和電源介面表256中的高級配置和電源介面機器語言(AML;ACPI Machine Language)位元組-代碼(byte-code)提供。當設置多內存描述符能力位元(MMDC bit)255時,作業系統支持多個運行時記憶體描述子(descriptor)。來自統一可延伸韌體介面運行時服務表(UEFI runtime service table)252的統一可延伸韌體介面運行時服務是在設備執行階段已經開始直到作業系統204運行之前在系統開機期間可用的服務。統一可延伸韌體介面開機服務(UEFI boot service)253是僅在韌體擁有平台時(即在ExitBootServices呼叫之前)可用的服務,其包括各種設備上的文字檔和圖形控制台,以及匯流排、區塊和文件服務。 Advanced Configuration and Power Interface is an industry specification that provides an open standard that operating systems can use for computer hardware discovery, configuration, power management, and monitoring. Advanced Configuration and Power Interface by providing certain command lists or tables as system firmware part to output available features. The ACPI table 256 is loaded into the system memory 114 during system startup and executed during the operating system startup phase. The ADPI table 256 defines the interface between the operating system and the system firmware conforming to the ADPI. Most firmware ACPI functions are provided in ACPI Machine Language (AML) byte-code stored in the ACPI table 256 . When the multiple memory descriptor capability bit (MMDC bit) 255 is set, the operating system supports multiple runtime memory descriptors (descriptor). The UEFI runtime services from the UEFI runtime service table 252 are services available during system boot-up after the device execution phase has begun until the operating system 204 is running. Unified Extensible Firmware Interface boot service (UEFI boot service) 253 is a service available only when the firmware owns the platform (that is, before the ExitBootServices call), which includes text files and graphics consoles on various devices, as well as bus, block and file services.

韌體260包含開機管理器(boot manager)或統一可延伸韌體介面載入程式(UEFI loader)262、作業系統載入程式模組(OS loader module)264和配置模組(configuration module)266。韌體260是在資訊處理系統100的處理器102上執行的軟體和/或韌體模組(即,在啟動時)。在一個實施例中,開機管理器262包括資訊處理系統統一可延伸韌體介面開機管理器(IHS UEFI boot manager)262-1和作業系統開機管理器(OS boot manager)262-2,在開機的設備執行階段(DXE;device execution phase)期間運行並且促進統一可延伸韌體介面映像(UEFI image)250的載入。作業系統載入程式(OS loader)264在開機的瞬態系統載入階段(TSL;transient system load phase)期間運行並且促進作業系統204的載入。配置模組266在瞬態系統載入階段(TSL)階段期間運行並且使得資訊處理系統能夠執行小/特定任務。當作 業系統更新或其他因素導致資訊處理系統統一可延伸韌體介面開機管理器262-1被覆蓋成作業系統開機管理器262-2,開機會由作業系統開機管理器262-2執行。此時配置模組266會進入自生作業系統環境356將資訊處理系統統一可延伸韌體介面開機管理器262-1恢復原狀。 The firmware 260 includes a boot manager or UEFI loader 262 , an OS loader module 264 and a configuration module 266 . Firmware 260 is software and/or firmware modules that execute on processor 102 of information handling system 100 (ie, at boot time). In one embodiment, the boot manager 262 includes an information handling system unified extensible firmware interface boot manager (IHS UEFI boot manager) 262-1 and an operating system boot manager (OS boot manager) (OS boot manager) 262-2, which runs during the device execution phase (DXE; device execution phase) of booting and facilitates the loading of the unified extensible firmware interface image (UEFI image) 250 . The operating system loader (OS loader) 264 runs during the transient system load phase (TSL; transient system load phase) of booting and facilitates the loading of the operating system 204 . The configuration module 266 runs during the transient system load phase (TSL) phase and enables the information handling system to perform small/specific tasks. as The operating system update or other factors cause the information processing system unified extensible firmware interface boot manager 262-1 to be overwritten with the operating system boot manager 262-2, and the booting will be executed by the operating system boot manager 262-2. At this time, the configuration module 266 will enter the self-generated operating system environment 356 to restore the information processing system unified extensible firmware interface boot manager 262-1 to its original state.

第3A圖圖示了資訊處理系統100的傳統開機操作的時序圖或相位圖300。如圖所示,開機操作包括安全階段(SEC;Security Phase)310、前可延伸韌體介面初始化階段(PEI;Pre-EFI Initialization Phase)320、驅動程序執行環境階段(DXE;Driver Execution Environment Phase)330、開機設備選擇階段(BDS;Boot Device Selection Phase)340、瞬態系統載入階段(TSL;Transient System Load Phase)350、和運行時階段(RT;Run Time)360。安全階段(SEC)310是資訊處理系統上統一可延伸韌體介面(UEFI)開機過程的第一階段,用於設置預驗證器(pre-verifier)312。預驗證器(pre-veritier)312處理資訊處理系統上的所有重新啟動事件,並臨時分配一部分儲存器以供其他開機階段使用。安全階段(SEC)310在駐留在資訊處理系統上的韌體中執行,並充當系統的信任基礎(root)。 FIG. 3A illustrates a timing diagram or phase diagram 300 of a conventional power-on operation of the information handling system 100 . As shown in the figure, the boot operation includes a security phase (SEC; Security Phase) 310, a pre-extensible firmware interface initialization phase (PEI; Pre-EFI Initialization Phase) 320, a driver execution environment phase (DXE; Driver Execution Environment Phase) 330, a boot device selection phase (BDS; Boot Device Selection Phase) 340, and a transient system loading phase (TSL; Transient System Load Phase) 350, and a runtime phase (RT; Run Time) 360. The Security Phase (SEC) 310 is the first phase of the Unified Extensible Firmware Interface (UEFI) boot process on the information processing system, and is used to configure a pre-verifier 312 . A pre-verifier 312 handles all reboot events on the information handling system and temporarily allocates a portion of memory for other boot phases. A security stage (SEC) 310 executes in firmware residing on the information handling system and serves as the system's root of trust.

開機操作包括安全階段(SEC)310將執行傳遞給前可延伸韌體介面初始化階段(PEI)320,前可延伸韌體介面初始化階段(PEI)320為資訊處理系統初始化系統記憶體。前可延伸韌體介面初始化階段(PEI)320設置前可延伸韌體介面初始化階段核心(PEI core)322,其包括中央處理器初始化(CPU initialization)324、晶片組初始化(chipset initialization)326和板資源初始化(board resource initialization)328。前可延伸韌體介面初始化階段(PEI)320將執行傳遞給驅動程序執行環境階段(DXE)330,驅動程序執行環境階段(DXE)330為資訊處理系統執行設備特定的初始化。特別地,驅動程序執行環境階段(DXE)330執行操作以載入設備、匯流排和服務驅動程序334的可延 伸韌體介面程序調度程序(EFI driver dispatcher)332。驅動程序執行環境階段(DXE)330將執行傳遞給開機設備選擇階段(BDS)340,後者執行開機管理器262和配置模組266。在特定實施例中,配置模組266在驅動程序執行環境階段(DXE)330和瞬態系統載入階段(TSL)350中運行。開機管理器262還識別開機目標,並將執行傳遞給瞬態系統載入階段(TSL)350。瞬態系統載入階段(TSL)350啟動作業系統載入程序264。作業系統載入程式264載入作業系統並且在作業系統運行時(OS runtime)362將執行傳遞給作業系統。還請注意,對於傳統的多個可開機作業系統環境,啟動過程中的指令和資料可能會在開機設備選擇階段(BDS)340、瞬態系統載入階段(TSL)350和運行時階段(RT;Run Time)360之間來回切換。如果啟動程序失敗,啟動操作需要回到安全階段(SEC)310並重新啟動完整的啟動程序。 The boot operation includes a Security Phase (SEC) 310 passing execution to a Pre-Extensible Firmware Interface Initialization Phase (PEI) 320 which initializes system memory for the information handling system. The pre-extensible firmware interface initialization phase (PEI) 320 sets a pre-extensible firmware interface initialization phase core (PEI core) 322, which includes a CPU initialization (CPU initialization) 324, a chipset initialization (chipset initialization) 326, and a board resource initialization (board resource initialization) 328. Pre-Extensible Firmware Interface Initialization Phase (PEI) 320 passes execution to Driver Execution Environment Phase (DXE) 330, which performs device-specific initialization for the information handling system. In particular, the Driver Execution Environment stage (DXE) 330 performs operations to load the extensible An extension firmware interface program dispatcher (EFI driver dispatcher) 332 . Driver Execution Environment stage (DXE) 330 passes execution to Boot Device Selection stage (BDS) 340 , which executes Boot Manager 262 and Configuration Module 266 . In a particular embodiment, the configuration module 266 runs in a driver execution environment stage (DXE) 330 and a transient system loader stage (TSL) 350 . The boot manager 262 also identifies a boot target and passes execution to a transient system loader (TSL) 350 . Transient system loader stage (TSL) 350 starts operating system loader 264 . The operating system loader 264 loads the operating system and passes execution to the operating system when the operating system is running (OS runtime) 362 . Note also that for traditional multiple bootable OS environments, instructions and data during the boot process may switch back and forth between the boot device selection phase (BDS) 340, the transient system load phase (TSL) 350, and the runtime phase (RT; Run Time) 360. If the startup procedure fails, the startup operation needs to go back to the security phase (SEC) 310 and restart the complete startup procedure.

第3B圖圖示了根據本發明的一個實施例的資訊處理系統的統一可延伸韌體介面(UEFI)開機的時序圖或相位圖300。提供一桌面分層(Desktop Layering)400於瞬態系統載入階段(TSL)350,使得不同的作業系統其中之一可以被選為開機作業系統。當一個位元欄(bit field),例如旗標(flag),被寫入配置模組266,則瞬態系統載入階段(TSL)350啟動作業系統載入程式264,其載入桌面分層400中一個指定的分層中的作業系統,並且將在作業系統運行時(OS runtime)362將執行傳遞給作業系統。 FIG. 3B illustrates a timing diagram or phase diagram 300 for Unified Extensible Firmware Interface (UEFI) booting of an information processing system according to an embodiment of the present invention. A desktop layering (Desktop Layering) 400 is provided in the transient system loading stage (TSL) 350 so that one of different operating systems can be selected as the booting operating system. When a bit field, such as a flag, is written into the configuration module 266, the transient system loader stage (TSL) 350 starts the operating system loader 264, which loads the operating system in a specified layer in the desktop layer 400, and passes execution to the operating system at the operating system runtime (OS runtime) 362.

第3C圖圖示了根據本發明的另一個實施例的資訊處理系統的統一可延伸韌體介面(UEFI)開機的時序圖或相位圖300。開機設備選擇階段(BDS)340中的傳統啟動管理器262現在分為資訊處理系統統一可延伸韌體介面啟動管理器(IHS UEFI boot manager)262-1和作業系統啟動管理器262-2。資訊處理系統統一可延伸韌體介面啟動管理器262-1,也就是統一可延伸韌體介面開機載入器(UEFI bootloader),會確認或判斷桌面分層 (Desktop Layering)400中的所有層是正確還是失效。如果桌面分層400中的所有文件都是正確的,則對應到用戶所選擇的桌面分層400中的特定層顯示啟動選單(boot menu)268。包含自適應(self-adaptive)功能(有對應檔才顯示選單)的啟動選單268會首先確認所有設置列表的存在,然後將列表描述給用戶。瞬態系統載入階段(TSL)350啟動作業系統載入程式264,它載入桌面分層400中特定層的作業系統,並在作業系統運行時(OS runtime)362將執行傳遞給作業系統。 FIG. 3C illustrates a unified extensible firmware interface (UEFI) boot timing diagram or phase diagram 300 of an information processing system according to another embodiment of the present invention. The traditional boot manager 262 in the boot device selection stage (BDS) 340 is now divided into an IHS UEFI boot manager (IHS UEFI boot manager) 262-1 and an operating system boot manager 262-2. The information processing system Unified Extensible Firmware Interface boot manager 262-1, that is, the Unified Extensible Firmware Interface boot loader (UEFI bootloader), can confirm or judge the desktop layering (Desktop Layering) Whether all layers in 400 are correct or invalid. If all files in the desktop layer 400 are correct, a boot menu 268 is displayed corresponding to the specific layer in the desktop layer 400 selected by the user. The startup menu 268 including the self-adaptive function (the menu is displayed only when there is a corresponding file) will first confirm the existence of all setting lists, and then describe the list to the user. The Transient System Loader (TSL) 350 starts the OS loader 264, which loads the OS of a specific layer in the desktop layer 400, and passes execution to the OS at OS runtime 362.

還請注意,對於多個可開機作業系統環境,啟動過程中的指令和資料可能會在開機設備選擇階段(BDS)340和瞬態系統載入階段(TSL)350之間來回切換。在本發明中,即使啟動程序失敗,啟動操作只需要回到開機設備選擇階段(BDS)340檢查桌面分層400中的層是否正確。上述的功能可以在一個自生作業系統環境(live operating system environment,LOE)下實行。當開機程序失效的時候,作業系統啟動管理器262-2開啟自生作業系統環境356,其中自生作業系統環境356可以利用系統記憶體模擬出一個虛擬硬碟,並且將自生作業系統載入這個虛擬硬碟。因此,在桌面分層400中的任何磁碟層可以建立、產生、或是覆蓋。自生作業系統環境,例如視窗預先安裝(WinPE;Windows Pre-Install)或任何作業系統的自生環境,這是一個簡單操作的迷你作業系統環境。自生系統的檔案非常小,可以在儲存器(storage)、通用序列磁碟(USB disk)或光碟中儲存和安裝。因此,可以在自生作業系統下創建或構建母可開機虛擬映像檔、子和孫虛擬映像檔。如果孫資料虛擬映像檔失敗或損壞,統一可延伸韌體介面開機載入程序(UEFI bootloader)可以啟動自生作業系統以回復以前版本的孫資料虛擬映像檔。此外,自生作業系統可以通過互聯網或雲端儲控制資訊處理系統,從而可以維護或恢復遠程資訊處理系統。 Note also that for multiple bootable OS environments, instructions and data during boot may switch back and forth between the boot device selection phase (BDS) 340 and the transient system load phase (TSL) 350 . In the present invention, even if the startup procedure fails, the startup operation only needs to go back to the boot device selection stage (BDS) 340 to check whether the layer in the desktop layer 400 is correct. The above functions can be implemented in a live operating system environment (LOE). When the boot process fails, the operating system boot manager 262-2 starts the native operating system environment 356, wherein the native operating system environment 356 can use the system memory to simulate a virtual hard disk, and load the native operating system into the virtual hard disk. Thus, any disk layer within the desktop hierarchy 400 can be created, generated, or overwritten. A native operating system environment, such as Windows Pre-installation (WinPE; Windows Pre-Install) or any operating system's native environment, which is a mini operating system environment that is easy to operate. The files of the native system are very small and can be stored and installed in storage, USB disk or CD. Therefore, a parent bootable virtual image, child and grandchild virtual images can be created or constructed under the native operating system. If the Sundata virtual image file fails or is damaged, the Unified Extensible Firmware Interface boot loader (UEFI bootloader) can start the native operating system to restore the previous version of the Sundata virtual image file. In addition, the self-hosting operating system can control the information processing system through the Internet or cloud storage, so that the telematics system can be maintained or restored.

在一個實施例中,可以在桌面分層400中構建不同的作業系統,如第4圖所示。可以是微軟(Microsoft)視窗(Windows®)作業系統的第一作業系統層402、安裝有多個應用程式的第一應用(AP;Application)層404和其中儲存有一些資料和資訊的第一資料層406。可以為用戶提供可以包括GNU/Linux、FreeBSD、Unix或Chrome OS的第二作業系統層412。還提供了具有安裝到第二作業系統的應用程式的第二應用層414和第二資料層416。 In one embodiment, different operating systems can be built in the desktop layer 400, as shown in FIG. 4 . It can be the first operating system layer 402 of the Microsoft (Microsoft) Windows (Windows®) operating system, the first application (AP; Application) layer 404 installed with multiple application programs, and the first data layer 406 in which some data and information are stored. The user may be provided with a second operating system layer 412 which may include GNU/Linux, FreeBSD, Unix or Chrome OS. There is also provided a second application layer 414 and a second data layer 416 having applications installed to a second operating system.

作業系統載入器(OS loader)264和桌面分層400都儲存在儲存器120中。詳細說明可參考第5圖。提供預設統一可延伸韌體介面磁盤(default UEFI disk)122作為儲存器120,其包括由微軟定義的磁盤0(disk 0)區域124。在微軟要求下形成的三個分區包括一個可延伸韌體介面系統分割區(ESP;EFI System Partition)125、一個微軟保留(MSR;Microsoft Reserve)分割區126和一個主分割區127。微軟保留分割區126在本發明中不是必需的分割區。可延伸韌體介面系統分割區(ESP)125在指定目錄下包含檔案Bootx64.efi、Bootmgfw.efi或GRUB4DOS(Grand Unified Boot-loader for DOS)-for UEFI,可以是資訊處理系統可延伸韌體介面開機管理程式(IHS UEFI Boot Manager)262-1,也可以簡化為可延伸韌體介面開機載入程式(UEFI bootloader),其中Bootmgfw.efi是視窗啟動環境文件。所有可開機的虛擬映像檔(bootable virtual image file)和虛擬映像檔(virtual image file),作為桌面分層400中的分層,都儲存在主分割區127中。作業系統啟動管理器可以允許用戶通過視窗啟動管理器創建可開機的虛擬映像檔或虛擬映像檔,例如具有.VHD或.VHDX格式的虛擬硬碟。本機開機VHDX可用作指定硬體上運行的作業系統,無需任何其他母作業系統。這與VHDX連接到具有主作業系統(host OS)的資訊處理系統上的客虛擬機器(guest Virtual Machine)的情況不同。 Both an operating system loader (OS loader) 264 and a desktop layer 400 are stored in the storage 120 . For details, please refer to Figure 5. A default UEFI disk 122 is provided as the storage 120, which includes a disk 0 (disk 0) area 124 defined by Microsoft. The three partitions formed under the requirements of Microsoft include an Extensible Firmware Interface System Partition (ESP; EFI System Partition) 125 , a Microsoft Reserve (MSR; Microsoft Reserve) partition 126 and a primary partition 127 . Microsoft reserved partition 126 is not a necessary partition in the present invention. The Extensible Firmware Interface System Partition (ESP) 125 contains the files Bootx64.efi, Bootmgfw.efi or GRUB4DOS (Grand Unified Boot-loader for DOS)-for UEFI under the specified directory, which can be the Extensible Firmware Interface Boot Manager (IHS UEFI Boot Manager) 262-1 of the Information Processing System, or can be simplified as the Extensible Firmware Interface Boot Loader (UEFI boot) loader), where Bootmgfw.efi is the Windows boot environment file. All bootable virtual image files and virtual image files, as layers in the desktop layer 400 , are stored in the primary partition 127 . The operating system boot manager can allow users to create bootable virtual image files or virtual image files, such as virtual hard disks in .VHD or .VHDX format, through the Windows boot manager. Native boot VHDX can be used as the operating system running on the specified hardware without any other parent operating system. This is different from the case where the VHDX is connected to a guest virtual machine (guest virtual machine) on an information processing system with a host operating system (host OS).

第6圖係本發明一實施例,以圖顯示在諸多資訊處理系統、雲端儲存器以及具有可開機虛擬鏡像檔之實體硬碟與的關係示意圖。一資訊處理系統100包含一實體硬碟122,會在開機操作包括安全階段(SEC)310,前可延伸韌體介面初始化階段(PEI)320,驅動程序執行環境階段(DXE)330,以及開機設備選擇階段(BDS)340下運行。一個自生作業系統環境356存取在實體硬碟122上的所有檔案。所有檔案,例如第一作業系統層402、第一應用層404、第一資料層406、第二應用層414、第二資料層416、第二作業系統層422和第三應用層424都儲存在實體硬碟122。然而,如果選擇或確定載入第一資料層406,則第一作業系統層402和第一應用層404必須包括在第一資料層406中作為可開機環境,並且分區A(distribution A)的虛擬碟(virtual disk)502具有向用戶展示完整作業環境(operating environment)。因此,第一資料層406相依於第一應用層404,其相依於第一作業系統層402。如果選擇或確定載入第一應用層404,則包括第一作業系統層402必須與第一應用層404一起作為可開機環境,並且具有所有應用程式但沒有資料操作環境的分佈A的虛擬碟502以顯示給用戶。如果選擇或確定要載入第二資料層416,則第一作業系統層402和第二應用層414必須與第二資料層416包括在內一起作為可開機環境,並且顯示分區B的虛擬碟504。在一個實施例中,也相依於應用層414的備用(redundant)資料層418是用於第二資料層416的備用文件。如果後面的第二資料層416失效,可以使用備用資料層418複蓋(duplicate)第二個資料層416,而這個步驟可以在自生作業系統環境356下進行。如果選擇或確定要載入第三應用層426,則第二作業系統層422必須與第三應用層424一起作為可開機環境包括,並且顯示分區C的虛擬碟506。在最後一個實施例中,資料和應用程式都儲存在應用層424中。 Fig. 6 is an embodiment of the present invention, which shows the relationship between many information processing systems, cloud storage, and physical hard disks with bootable virtual image files. An information processing system 100 including a physical hard disk 122 will run under boot operations including a security phase (SEC) 310 , a pre-extensible firmware interface initialization phase (PEI) 320 , a driver execution environment phase (DXE) 330 , and a boot device selection phase (BDS) 340 . A native operating system environment 356 accesses all files on the physical hard disk 122 . All files, such as the first operating system layer 402 , the first application layer 404 , the first data layer 406 , the second application layer 414 , the second data layer 416 , the second operating system layer 422 and the third application layer 424 are all stored in the physical hard disk 122 . However, if the first data layer 406 is selected or determined to be loaded, then the first operating system layer 402 and the first application layer 404 must be included in the first data layer 406 as a bootable environment, and the virtual disk (virtual disk) 502 of the partition A (distribution A) has a complete operating environment (operating environment) for the user. Thus, the first data layer 406 is dependent on the first application layer 404 , which is dependent on the first operating system layer 402 . If the first application layer 404 is selected or determined to be loaded, the first operating system layer 402 must be used together with the first application layer 404 as a bootable environment, and the virtual disk 502 of distribution A with all application programs but no data operating environment is displayed to the user. If it is selected or determined to load the second data layer 416, the first operating system layer 402 and the second application layer 414 must be included together with the second data layer 416 as a bootable environment, and the virtual disk 504 of partition B is displayed. In one embodiment, a redundant data layer 418 , also dependent on the application layer 414 , is a spare file for the second data layer 416 . If the subsequent second data layer 416 fails, the second data layer 416 can be duplicated with the backup data layer 418 , and this step can be performed under the native operating system environment 356 . If the third application layer 426 is selected or determined to be loaded, the second operating system layer 422 must be included together with the third application layer 424 as a bootable environment, and the virtual disk 506 of the partition C is displayed. In the last embodiment, both data and applications are stored in the application layer 424 .

在一實施例中,備用資料層(redundant data layer)418在自生 作業系統環境356下也可以直接透過第二應用層直接產生。在這個實施例中,用戶端有另外的資料備份可以產生備用資料層418。在另一實施例中,當第二資料層416更新時,備用資料層418可以自動的產生。由於只有資料的產生,因此第二資料層416與備用資料層418的檔案都不會太大,後者的實施例可以產生即時備援的方案。 In one embodiment, the redundant data layer 418 is generated Under the operating system environment 356, it can also be directly generated through the second application layer. In this embodiment, a backup data layer 418 can be generated if the client has additional data backups. In another embodiment, when the second data layer 416 is updated, the backup data layer 418 can be automatically generated. Since only data is generated, the files of the second data layer 416 and the backup data layer 418 are not too large, and the latter embodiment can generate a real-time backup solution.

自生作業系統環境356可以從雲端儲存器10更新或是回復在實體硬碟122裡的所有的檔案。在一實施例中,作業系統層422與應用層424可以在自生作業系統環境356中從雲端10下載。因此,一個管理端用戶可以透過網際網路進行大量佈署20在複數個資訊處理系統。 The native operating system environment 356 can update or restore all files in the physical hard disk 122 from the cloud storage 10 . In one embodiment, the operating system layer 422 and the application layer 424 can be downloaded from the cloud 10 in the native operating system environment 356 . Therefore, a management user can deploy a large number of information processing systems 20 through the Internet.

在一實施例中,使用者可以直接更新資訊處理系統100的作業系統而不需要透過自生作業系統環境356。一指定的作業系統層422可以直接從雲端儲存器10直接下載並且儲存在實體硬碟122。一位元欄(bit field),例如旗標(flag),可以寫入或是附加在此指定作業系統層422以及配置模組266。資訊處理系統100接下來重新開機後,此指定作業系統層422就可以直接開機,如第三B圖所示。 In one embodiment, the user can directly update the operating system of the information processing system 100 without going through the native operating system environment 356 . A specified operating system layer 422 can be directly downloaded from the cloud storage 10 and stored in the physical hard disk 122 . A bit field, such as a flag, can be written or appended to specify the operating system layer 422 and the configuration module 266 . After the information processing system 100 is rebooted next, the specified operating system layer 422 can be booted directly, as shown in FIG. 3B .

在另一實施例中,使用者可以直接更新或是安裝資訊處理系統100的作業系統而不需要透過在資訊處理系統100中預先安裝作業系統。一可上網儲存執行緒(cloud storage daemon),例如Linux的微核心(mini kernel),可以在資訊處理系統100中的儲存裝置120中儲存。當資訊處理系統100開機並且開機設備選擇階段340啟動開機管理程式262以載入基本輸入輸出系統/統一可延伸韌體介面140到系統記憶體114,開機管理程式262確認位於儲存裝置120當中的可上網儲存執行緒作為開機的標的。之後,可上網儲存執行緒可從雲端10下載一指定的作業系統層422,其為一指定可開機虛擬影像檔,及其子部至資訊處理系統100中的實體硬碟11。一位元欄(bit field),例如旗標(flag),可以寫入或是附加在此指定作業系統層422以及配置模組266。資訊處理系統100接下來重新開機後,此指定作業系統層422就可以直接開機,如第三A圖所示。 In another embodiment, the user can directly update or install the operating system of the information processing system 100 without pre-installing the operating system in the information processing system 100 . A cloud storage daemon, such as a Linux mini kernel, can be stored in the storage device 120 of the information processing system 100 . When the information processing system 100 is booted and the boot device selection stage 340 starts the boot management program 262 to load the BIOS/UIF 140 to the system memory 114, the boot management program 262 confirms the web-storable execution thread located in the storage device 120 as a boot target. Afterwards, the executable thread that can be stored online can download a specified operating system layer 422 from the cloud 10 , which is a specified bootable virtual image file, and its sub-parts to the physical hard disk 11 in the information processing system 100 . One-bit column (bit field), such as a flag (flag), can be written or appended to specify the operating system layer 422 and the configuration module 266 here. After the information processing system 100 is rebooted next, the designated operating system layer 422 can be booted directly, as shown in FIG. 3A .

在本發明中,作業系統層402、自生作業系統環境356或是可上網儲存執行緒皆可執行上述相同功能,即為可上網執行緒可執行指令包含:對資訊處理系統100開機;從雲端10下載一指定作業系統層422;附加一位元欄於該作業系統層422以及配置模組266;以及對資訊處理系統100以指定的作業系統層422重新開機。 In the present invention, the operating system layer 402, the self-generated operating system environment 356, or the online storage thread can perform the same functions as above, that is, the executable instructions of the Internet-enabled thread include: booting the information processing system 100; downloading a specified operating system layer 422 from the cloud 10; adding a bit field to the operating system layer 422 and the configuration module 266;

參考第7圖,提供了一種用於佈署資訊處理系統的方法。首先,在儲存器120的可延伸韌體介面服務分區(ESP)125中構建或創建具有主(primary)作業系統的檔案系統屬性的統一可延伸韌體介面開機載入程序(UEFI boot loader),如步驟S7-1所示。在一個傳統範例中,主要作業系統是微軟視窗10,檔案系統是NTFS(New Technology File System)。因此,所有與NTFS相關的檔案系統屬性都包含在作業系統載入程式中,從而在載入作業系統時可以識別虛擬映像檔中的資料或資訊。在本發明的一個實施例中,主作業系統為微軟視窗10,檔案系統(File System)可為NTFS、EXFAT(Extended File Allocation Table)、REFS(Resilient File System)或BTRFS(B-tree FS)。因此,與檔案系統相關的所有檔案系統屬性都必須包含在統一可延伸韌體介面開機載入程序(UEFI bootloader)中,以便在載入作業系統之前可以識別虛擬映像檔中的資料或資訊。在載入作業系統之前,可以檢查作業系統分層和應用分層之間的相依性關係,或者作業系統可開機虛擬映像檔和應用虛擬映像檔之間的相依性關係,這一點很重要。一個實施例中的統一可延伸韌體介面開機載入程序(UEFI bootloader)是Bootx64.efi。然後,在一個實施例中,通過磁碟指令(disk instruction)構建具 有主作業系統的第一母(parent)可開機虛擬映像檔,如步驟S7-2所示。 Referring to FIG. 7, a method for deploying an information processing system is provided. First, build or create a unified Extensible Firmware Interface boot loader (UEFI boot loader) with file system attributes of the primary operating system in the Extensible Firmware Interface Service Partition (ESP) 125 of the storage 120, as shown in step S7-1. In a traditional example, the main operating system is Microsoft Windows 10, and the file system is NTFS (New Technology File System). Therefore, all NTFS-related file system attributes are included in the operating system loader, so that the data or information in the virtual image file can be identified when the operating system is loaded. In one embodiment of the present invention, the main operating system is Microsoft Windows 10, and the file system (File System) can be NTFS, EXFAT (Extended File Allocation Table), REFS (Resilient File System) or BTRFS (B-tree FS). Therefore, all file system attributes related to the file system must be included in the Unified Extensible Firmware Interface boot loader (UEFI bootloader), so that the data or information in the virtual image file can be identified before the operating system is loaded. It is important to be able to check dependencies between the operating system layer and the application layer, or between the operating system bootable virtual image and the application virtual image, before loading the operating system. The Unified Extensible Firmware Interface bootloader (UEFI bootloader) in one embodiment is Bootx64.efi. Then, in one embodiment, build tools via disk instruction The first parent (parent) with the main operating system can boot the virtual image file, as shown in step S7-2.

接著,利用磁碟指令將第一母可開機虛擬映像檔差分(differencing)為第一子(child)虛擬映像檔,同時將第一應用程式安裝到第一母可開機虛擬映像檔中,如步驟S7-3所示。然後,進一步利用磁碟指令將第一子虛擬映像檔差分為第一孫(grandchild)虛擬映像檔,同時向第一子虛擬映像檔添加或寫入第一資料,如步驟S7-4所示。因此,提供了專用於資訊處理系統100中的第一用戶的環境。如果第一個用戶想在她自己的環境中使用資訊處理系統100,她可以在啟動資訊處理系統100的同時啟動第一個孫虛擬映像檔。在本實施例中,選擇第一孫虛擬映像檔作為具有第一子虛擬映像檔和第一母可開機虛擬映像檔的啟動設備。 Then, using disk commands to differentiate the first parent bootable virtual image file into a first child virtual image file, and simultaneously install the first application program into the first parent bootable virtual image file, as shown in step S7-3. Then, further use the disk command to divide the first sub-virtual image file into first grandchild virtual image files, and at the same time add or write the first data to the first sub-virtual image file, as shown in step S7-4. Thus, an environment dedicated to the first user in the information handling system 100 is provided. If the first user wants to use the information handling system 100 in her own environment, she can start the first grandchild virtual image file while starting the information handling system 100 . In this embodiment, the first grandchild virtual image file is selected as the boot device having the first child virtual image file and the first parent bootable virtual image file.

接著,利用磁碟指令將第一母可開機虛擬映像檔區分為第二子虛擬映像檔,同時將第二應用程式安裝到第一母可開機虛擬映像檔中,如步驟S7-5所示,如果第一個用戶想要測試特定應用程式,或者第二個用戶想要使用某些特定應用程式構建他自己的專用環境。然後,利用磁碟指令將第二子虛擬映像檔區分為第二孫虛擬映像檔,同時向第二子虛擬映像檔添加或寫入第二資料,如步驟S7-6所示。因此,提供了具有主作業系統的第二環境。 Then, use the disk command to divide the first parent bootable virtual image file into a second child virtual image file, and install the second application program into the first parent bootable virtual image file, as shown in step S7-5, if the first user wants to test a specific application program, or the second user wants to use some specific application programs to build his own dedicated environment. Then, divide the second sub-virtual image file into a second grandchild virtual image file by disk command, and add or write second data to the second sub-virtual image file at the same time, as shown in step S7-6. Therefore, a second environment with a main operating system is provided.

接著,建立具有次要(secondary)作業系統的第二母可開機虛擬映像檔,如步驟S7-7所示。在一實施例中,次要作業系統可為Linux,檔案系統可為ext(Extended File System)、ext2、ext3、ext4、JFS(Journal File System)、XFS(high-speed JFS)、REFS或Btrfs(B tree檔案系統)。然而,原始的統一可延伸韌體介面開機載入程式可能無法識別第二個母可開機虛擬映像檔中的檔案系統,因此統一可延伸韌體介面開機載入程式中必須包含次要作業系統的檔案系統屬性,如步驟S7-8所示。類似地,可以將第二母可開 機虛擬映像檔區分為第三子虛擬映像檔,從而為第二作業系統提供第三操作環境。 Next, create a second parent bootable virtual image file with a secondary operating system, as shown in step S7-7. In one embodiment, the secondary operating system can be Linux, and the file system can be ext (Extended File System), ext2, ext3, ext4, JFS (Journal File System), XFS (high-speed JFS), REFS or Btrfs (B tree file system). However, the original UIF boot loader may not be able to recognize the file system in the second parent bootable virtual image file, so the UEF boot loader must include the file system attributes of the secondary operating system, as shown in step S7-8. Similarly, the second female can be opened The computer virtual image file is divided into a third sub-virtual image file, thereby providing a third operating environment for the second operating system.

在上述方法的差分(differencing)步驟之後,子或孫虛擬映像檔可能會失效,需要修復,因此應提供檢查步驟以確認子或孫虛擬映像檔的正確性。請參考第8圖,檢查第一母可開機虛擬映像檔與第一子虛擬映像檔之間的相依性關係,如步驟S8-1所示。由於主作業系統的檔案系統屬性包含在統一可延伸韌體介面開機載入程式(UEFI bootloader)中,因此可以識別和檢查第一母可開機虛擬映像檔和第一子虛擬映像檔中的文件。同理,檢查第一子虛擬映像檔與第一孫虛擬映像檔之間的相依性關係,如步驟S8-2所示;檢查第一母可開機虛擬映像檔與第二子虛擬映像檔之間的相依性關係,如步驟S8-3所示;並且檢查第二子虛擬映像檔與第二孫虛擬映像檔之間的相依性關係,如步驟S8-4所示。 After the differencing step of the above method, the child or grandchild virtual image file may be invalid and needs to be repaired, so a checking step should be provided to confirm the correctness of the child or grandchild virtual image file. Please refer to FIG. 8 to check the dependency relationship between the first parent bootable virtual image file and the first child virtual image file, as shown in step S8-1. Since the file system attributes of the main operating system are included in the Unified Extensible Firmware Interface boot loader (UEFI bootloader), files in the first parent bootable virtual image file and the first child virtual image file can be identified and checked. Similarly, check the dependency relationship between the first child virtual image file and the first grandchild virtual image file, as shown in step S8-2; check the dependency relationship between the first parent bootable virtual image file and the second child virtual image file, as shown in step S8-3; and check the dependency relationship between the second child virtual image file and the second grandchild virtual image file, as shown in step S8-4.

檢查相關性的詳細資訊可以參考圖9。首先,確認第一母可開機虛擬映像檔與第一子虛擬映像檔之間的動態磁碟標頭(dynamic disk headers)是否相符,如步驟S9-1所示。然後,確認第一子虛擬映像檔的動態磁碟頭中的母(parent)通用唯一標識符(UUID;Universally Unique Identifier)與第一母可開機虛擬映像檔的硬碟頁標(footer)相同,如步驟S9-2所示。 Details of checking dependencies can be found in Figure 9. Firstly, it is confirmed whether the dynamic disk headers between the first parent bootable virtual image file and the first child virtual image file are consistent, as shown in step S9-1. Then, confirm that the parent (UUID; Universally Unique Identifier) in the dynamic disk header of the first child virtual image file is the same as the hard disk footer of the first parent bootable virtual image file, as shown in step S9-2.

第10圖舉例說明範例性方法的流程圖,其中前述圖中的處理器102通過上述之方法執行實現本揭露書中一個或多個實施例的過程的不同面向。通常,一方法代表一種電腦實現的方法,用以使資訊處理系統能夠在多個環境下運行,其中前述之環境可以包括相同的作業系統但是不同的應用程式或資料,或者不同的作業系統。方法的描述一般會參考前面的第1-6圖中說明的特定元件。通常,方法會被描述為通過處理器102來實現,特別是由韌體260提供的代碼的執行,特別是由資訊處理系統統一可延伸韌 體介面開機管理器262-1、作業系統開機管理器262-2、作業系統載入程式264和配置模組的韌體執行266在處理器102內起作用。在一個實施例中,一種方法可以被描述為通過處理器102來實現,特別是由在處理器102內起作用的統一可延伸韌體介面開機服務提供的代碼的執行。然而應當理解,所描述的方法的某些方面可以通過其他處理設備和/或其他代碼的執行來實現。 FIG. 10 illustrates a flowchart of an exemplary method by which the processor 102 in the preceding figures performs different aspects of the process implementing one or more embodiments of the present disclosure. In general, a method represents a computer-implemented method for enabling an information processing system to operate in multiple environments, where the aforementioned environments may include the same operating system but different applications or data, or different operating systems. The method description will generally refer to specific elements previously illustrated in Figures 1-6. Generally, the methods will be described as being implemented by the processor 102, particularly the execution of code provided by the firmware 260, particularly the information handling system unified extensible firmware A UI boot manager 262 - 1 , an OS boot manager 262 - 2 , an OS loader 264 , and a firmware execution 266 of configuration modules function within the processor 102 . In one embodiment, a method may be described as being implemented by the processor 102 , particularly the execution of code provided by a UIF boot service functioning within the processor 102 . It should be understood, however, that certain aspects of the described methods may be implemented by other processing devices and/or the execution of other code.

處理器102在啟動資訊處理系統的同時,開始確認資訊處理系統的所有設備是否都被統一可延伸韌體介面唯讀記憶體(UEFI ROM)正確配置,如步驟S10-1所示。然後,處理器102在可延伸韌體介面系統分割區(ESP)125中載入統一可延伸韌體介面開機載入程式,其具有儲存在主分割區127中的母可開機虛擬映像檔、第一子虛擬映像檔和第二子虛擬映像檔,如步驟S10-2所示。在本實施例中,第一子虛擬映像檔和第二子虛擬映像檔均由母可開機虛擬映像檔創建(build),第一子虛擬映像檔在第二子虛擬映像檔之前,作為備用(redundant)支援。此外,第一個子虛擬映像檔已經被檢查並確認正確,而第二個子虛擬映像檔剛剛創建。 While starting the information processing system, the processor 102 starts to confirm whether all the devices of the information processing system are correctly configured by the Unified Extensible Firmware Interface Read Only Memory (UEFI ROM), as shown in step S10-1. Then, the processor 102 loads the unified extensible firmware interface boot loader in the extensible firmware interface system partition (ESP) 125, which has the parent bootable virtual image file, the first sub virtual image file and the second sub virtual image file stored in the main partition area 127, as shown in step S10-2. In this embodiment, both the first sub-virtual image file and the second sub-virtual image file are built by the parent bootable virtual image file, and the first sub-virtual image file is used as a redundant support before the second sub-virtual image file. Also, the first sub-virtual image has been checked and confirmed to be correct, while the second sub-virtual image has just been created.

接著,處理器102檢查母可開機虛擬映像檔與第二子虛擬映像檔之間的相依性關係,如步驟S10-3所示。接著,若第二子虛擬映像檔失敗,則處理器102從第一子虛擬映像檔重建第二子虛擬映像檔,或將第一子虛擬映像檔複蓋(duplicate)為第二虛擬映像檔,如步驟S10-4。處理器102反應出用戶的選擇,將第二子虛擬映像檔確定為啟動設備,如步驟S10-5所示。接著,處理器102如步驟S10-6所示載入開機裝置的作業系統。上述過程和步驟可以在只能載入到系統記憶體的自生作業系統環境(Live Operating System Environment)下進行處理。 Next, the processor 102 checks the dependency relationship between the parent bootable virtual image file and the second child virtual image file, as shown in step S10-3. Next, if the second sub-virtual image file fails, the processor 102 rebuilds the second sub-virtual image file from the first sub-virtual image file, or duplicates the first sub-virtual image file as the second virtual image file, as in step S10-4. In response to the user's selection, the processor 102 determines the second sub-virtual image file as the boot device, as shown in step S10-5. Next, the processor 102 loads the operating system of the boot device as shown in step S10-6. The above process and steps can be processed under the Live Operating System Environment (Live Operating System Environment) that can only be loaded into the system memory.

在本發明中,由於資料打包成數個虛擬映像檔儲存,對比安裝整個作業系統及應用軟體的的環境需要複製大量小檔案,複製或移動內 含多個小檔案的單個虛擬映像檔,儲存裝置硬碟和固態硬碟都將受益於更少的存取時間(access time),將比直接複製或移動儲存中的多個小檔案要快很多。因此,備份資料或回復過程比任何傳統的資料備份方案都要快得多。 In the present invention, since the data is packaged into several virtual image files for storage, it is necessary to copy a large number of small files in comparison with the environment where the entire operating system and application software are installed, copy or move the internal A single virtual image file with multiple small files, both storage devices HDD and SSD will benefit from less access time and will be much faster than directly copying or moving multiple small files in storage. Therefore, the backup data or recovery process is much faster than any traditional data backup solution.

在本發明中,可以在幾分鐘內佈署多個資訊處理系統,因為這些虛擬映像檔可以非常快地複製到多個資訊處理系統。此外,所有虛擬映像檔都可以通過互聯網從雲儲存複製到多個資訊處理系統。 In the present invention, multiple information processing systems can be deployed within minutes because these virtual images can be replicated to multiple information processing systems very quickly. In addition, all virtual images can be replicated from cloud storage to multiple information processing systems via the Internet.

在本發明中,可以在教學教室中佈署多個資訊處理系統,效率更高,安全控制更好。如果學生A在一個資訊處理系統的一個學期內創建或構建了一些資料,則學生A的所有資訊都可以打包到第一個資料虛擬映像檔中。如果學生B在同一個資訊處理系統的學期內還創建或構建了一些其他資料,則學生B的所有資訊都可以打包到第二個資料虛擬映像檔中。因此,學生B不能在學期內參考學生A的資料或在作業上作弊。資料隱私將比任何其他傳統安全方法好得多。 In the present invention, multiple information processing systems can be deployed in teaching classrooms, with higher efficiency and better security control. If student A creates or builds some data during one semester of an information processing system, all of student A's information can be packaged into the first data virtual image file. If Student B also created or built some other data during the same term on the information processing system, all of Student B's information can be packaged into a second data virtual image file. Therefore, Student B cannot refer to Student A's material or cheat on assignments during the semester. Data privacy will be much better than any other traditional security method.

在本發明中,也可以以更好的效率和更好的安全控制為一個公司的一個部門佈署多個資訊處理系統。如果員工A在一個資訊處理系統中創建或構建了一些資料來測試資訊處理系統控制的一個設備的功能,特別是功能的結果是屬於第一家公司,則員工A創建或構建的所有資訊都可以打包成第一資料虛擬映像檔。如果員工A需要在資訊處理系統中創建或構建一些其他資料來測試資訊處理系統控制的設備的功能,並且功能結果屬於第二家公司,則員工A創建或構建的所有資訊都可以打包到第二個資料虛擬映像檔。如果工作人員A需要測試由特定資訊處理系統控制的設備,則在恢復過程中本發明可以很容易地去除資訊處理系統上的所有測試資訊和資料。 In the present invention, multiple information processing systems can also be deployed for a department of a company with better efficiency and better security control. If employee A creates or constructs some data in an information processing system to test the function of a device controlled by the information processing system, especially the result of the function belongs to the first company, all the information created or constructed by employee A can be packaged into the first data virtual image file. If employee A needs to create or build some other data in the information processing system to test the function of the equipment controlled by the information processing system, and the function result belongs to the second company, all the information created or built by employee A can be packaged into the second data virtual image file. If worker A needs to test equipment controlled by a particular information handling system, the present invention can easily remove all test information and data on the information handling system during recovery.

在本發明中,資料虛擬映像檔中沒有作業系統和應用程式。如果創建兩個資料虛擬映像檔用於回復目的,則與傳統恢復軟體相比,需 要的儲存容量更少。 In the present invention, there is no operating system and application program in the data virtual image file. If two virtual images of data are created for recovery purposes, it requires less Requires less storage capacity.

在本發明中,由於統一可延伸韌體介面唯讀記憶體(UEFI ROM),支持的作業系統的數量不受限制。 In the present invention, due to the Unified Extensible Firmware Interface Read-Only Memory (UEFI ROM), the number of supported operating systems is not limited.

在本發明中,可以通過互聯網和遠程控制恢復或佈署單個資訊處理系統或多個資訊處理系統。 In the present invention, a single information processing system or a plurality of information processing systems can be restored or deployed through the Internet and remote control.

在本發明中,可以無需任何通用串行匯流排磁碟或其他硬體設備,即可在批量資訊處理系統上進行恢復或佈署。 In the present invention, recovery or deployment can be performed on a batch information processing system without any general-purpose serial bus disk or other hardware devices.

恢復或佈署過程非常快,因為可開機虛擬映像檔可以非常快地複製或移動,而許多要從一個目錄複製或移動到另一個目錄的小文件將花費大量時間來完成。當儲存器是固態硬碟時會更好。 The recovery or deployment process is very fast because the bootable virtual image file can be copied or moved very quickly, whereas many small files to be copied or moved from one directory to another would take a lot of time to complete. Even better when the storage is a solid state drive.

在本發明中,可以在載入作業系統之前檢查任何可開機虛擬映像檔的相依性。並且可以自動處理恢復程序。 In the present invention, the dependencies of any bootable virtual image file can be checked before the operating system is loaded. And the recovery procedure can be handled automatically.

在以上所述之流程圖中,一個或多個方法可以體現在包含電腦可讀代碼的電腦可讀媒介中,使得當在計算設備上執行電腦可讀代碼時執行一系列功能處理。在一些實施方式中,在不偏離本揭露書的範圍的情況下,方法的某些步驟可組合、同時或以不同的順序執行、或者可能被省略。因此,雖然以特定順序描述和圖示了方法區塊,但是使用由區塊中表示的功能過程的特定順序並不意味著暗示對本揭露書的任何限制。在不脫離本揭露書的範圍的情況下,可以對過程的順序進行改變。因此,特定順序的使用不應被視為限制意義,並且本揭露書的範圍僅由所附之權利請求項所限定。 In the flowcharts described above, one or more methods may be embodied in a computer-readable medium containing computer-readable codes, such that a series of functional processes are performed when the computer-readable codes are executed on a computing device. In some embodiments, certain steps of the methods may be combined, performed simultaneously or in a different order, or possibly omitted, without departing from the scope of the present disclosure. Therefore, although method blocks are described and illustrated in a particular order, use of the particular order in which the functional processes are represented in the blocks is not meant to imply any limitation on the present disclosure. Changes may be made to the order of the processes without departing from the scope of the present disclosure. Accordingly, the use of a particular order should not be viewed in a limiting sense, and the scope of the disclosure is limited only by the terms of the appended claims.

本揭露書的各觀點係在上述所描述,其參考了本揭露書中的實施例的方法的流程圖和/或方塊圖,設備(系統)和電腦程式產品。應當理解,流程圖和/或方塊圖的每個方塊,以及流程圖和/或方塊圖中的方塊的組 合,可以由電腦程序指令來實現。用於執行本揭露書的各方面的操作的電腦程序代碼可以用一種或多種編程語言的任意組合編寫,包括但不限於可編寫之統一可延伸韌體介面(UEFI Oriented)的編程語言。這些電腦程序指令可以提供給通用電腦、專用電腦(例如服務處理器)或其他可編程資料處理設備的處理器以生產機器,使得經由電腦的處理器執行的指令或其他可編程資料處理設備,執行用於實現在流程圖和/或方塊圖塊中指定的功能/動作的方法。 Various viewpoints of the disclosure are described above, which refer to flow charts and/or block diagrams of methods, devices (systems) and computer program products in the embodiments of the disclosure. It should be understood that each block of the flowcharts and/or block diagrams, and groups of blocks in the flowcharts and/or block diagrams Combination can be realized by computer program instructions. Computer program code for performing operations in various aspects of this disclosure may be written in any combination of one or more programming languages, including but not limited to a UEFI Oriented programming language that can be written. These computer program instructions can be provided to the processors of general-purpose computers, special-purpose computers (such as service processors) or other programmable data processing devices to produce machines, so that the instructions executed by the processors of the computers or other programmable data processing devices execute methods for realizing the functions/actions specified in the flowcharts and/or block diagrams.

所描述的本揭露書的一個或多個實施例可以至少部分地使用軟體控制的可編程處理設備來實現,例如微處理器(microprocessor)、數位信號處理器(digital signal processor)或其他處理設備、資料處理裝置或系統。因此,可以理解,用於配置可編程設備、裝置或系統以實現前述方法的電腦程序被設想為本揭露書的一個面向。電腦程序可以體現為源代碼(source code)或經過編譯以在處理設備、裝置或系統上實現。適當地,電腦程序以機器或設備可讀的形式儲存在載體設備上,例如在固態儲存器、磁儲存器例如磁碟或磁帶、光學或磁光可讀儲存器(magneto-optically readable memory)例如光碟或數位多功能磁盤中(digital versatile disk),快閃記憶體等。處理裝置(device)、設備(apparatus)或系統利用程序或其一部分來配置處理裝置、設備或系統以進行操作。 One or more of the described embodiments of the present disclosure may be implemented at least in part using a software-controlled programmable processing device, such as a microprocessor, digital signal processor, or other processing device, data processing device, or system. Therefore, it is to be understood that a computer program for configuring a programmable device, apparatus or system to implement the aforementioned methods is conceived as an aspect of this disclosure. A computer program may be embodied as source code or compiled for implementation on a processing device, device or system. Suitably, the computer program is stored on a carrier device in a machine- or device-readable form, for example in solid-state storage, magnetic storage such as a magnetic disk or magnetic tape, magneto-optically readable memory such as an optical disc or digital versatile disk, flash memory, etc. A processing device, apparatus, or system utilizes a program, or a portion thereof, to configure the processing device, apparatus, or system to operate.

進一步可以理解,本揭露書之實施例中的過程可以使用軟體、韌體或硬體的任意組合來實現。因此,本揭露書的各方面可以採用完全硬體實施例或結合軟體(包括韌體、常駐軟體、微代碼等)和硬體方面的實施例的形式,這些方面在本文中可以統稱為“電路”、“模組”或“系統”。此外,本揭露書的各方面可以採用包含在一個或多個電腦可讀儲存設備中的電腦程序產品的形式,該電腦可讀儲存設備具有包含在其上的電 腦可讀程序代碼。可以利用一個或多個電腦可讀儲存設備的任何組合。電腦可讀儲存設備可以例如但不限於電子、磁、光、電磁、紅外或半導體系統、裝置或設備,或前述的任何合適的組合。電腦可讀儲存設備的更具體示例(非詳盡列表)將包括以下內容:具有一或多電線的電連接、便攜式電腦磁碟、硬碟、隨機存取儲存器(RAM)、唯讀記憶體(ROM)、可抹除可編程唯讀儲存器(EPROM或快閃記憶體)、光纖、便攜式光碟唯讀儲存器(CD-ROM)、光儲儲存設備、磁儲存設備或任何前述的適當組合。在本文件的上下文中,電腦可讀儲存設備可以是可以包含或儲存由指令執行系統、裝置或設備使用或與其結合使用的程序的任何有形媒介。 It can be further understood that the processes in the embodiments of the present disclosure can be implemented by any combination of software, firmware or hardware. Accordingly, aspects of this disclosure may take the form of an entirely hardware embodiment or an embodiment combining software (including firmware, resident software, microcode, etc.) and hardware aspects, which may be collectively referred to herein as a "circuit," "module," or "system." Additionally, aspects of this disclosure may take the form of a computer program product embodied in one or more computer-readable storage devices having computer-readable storage devices embodied thereon. Brain-readable program code. Any combination of one or more computer readable storage devices may be utilized. A computer readable storage device may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (non-exhaustive list) of computer readable storage devices would include the following: electrical connection with one or more wires, portable computer disk, hard disk, random access memory (RAM), read only memory (ROM), erasable programmable read only memory (EPROM or flash memory), optical fiber, portable compact disc read only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage device may be any tangible medium that can contain or store a program for use by or in connection with an instruction execution system, apparatus, or device.

雖然已經參考範例性的實施例以描述本揭露書,但是習知本領域之技藝者將理解,在不脫離本揭露書的範圍的情況下,可以做出各種改變並且可以用等同物替代其要件。此外,在不脫離本揭露書的本質範圍的情況下,可以進行許多修改以使特定系統、設備或其組件適應本揭露書的教導。因此,本揭露書旨在不限於為執行本揭露書而揭露的特定實施例,而是本揭露書將包括落入所附權利要求範圍內的所有實施例。此外,術語中第一、第二等的使用並不表示任何順序或重要性,而是術語第一、第二等用於將一個要件與另一個要件區分開來。再者,術語,“主要作業系統(primary OS)”與“次要作業系統(secondary OS)”僅用於標示一個“第一”與“第二”作業系統,並未意圖指出主作業系統會比次作業系統較佳或是更重要。 While the disclosure has been described with reference to exemplary embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted for elements thereof without departing from the scope of the disclosure. In addition, many modifications may be made to adapt a particular system, device, or component thereof to the teachings of the disclosure without departing from the essential scope thereof. Therefore, it is intended that the disclosure not be limited to the particular embodiments disclosed for carrying out this disclosure, but that this disclosure will include all embodiments falling within the scope of the appended claims. Furthermore, the use of the terms first, second, etc. does not imply any order or importance, but rather the terms first, second, etc. are used to distinguish one element from another. Furthermore, the terms "primary OS" and "secondary OS" are used only to denote a "first" and "secondary" OS, and are not intended to indicate that the primary OS is better or more important than the secondary OS.

此處使用的術語僅用於描述特定實施例的目的,並不旨在限製本揭露書。如本文所用,單數形式“一”、“一種”和“該”也旨在包括複數形式,除非上下文另有明確指示。將進一步理解,術語“包含”和/或“包括”,當在本說明書中使用時,指定所述特徵、整數、步驟、操作、 要件和/或組件的存在,但不排除存在或添加一個或多個其他特徵、整數、步驟、操作、要件、組件和/或它們的群組。 The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the present disclosure. As used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly dictates otherwise. It will be further understood that the terms "comprising" and/or "comprising", when used in this specification, designate that said features, integers, steps, operations, The presence of elements and/or components does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components and/or groups thereof.

本揭露書的描述是為了說明和描述的目的而呈現的,但並不旨在窮舉或限制所揭露書形式的公開。在不脫離本揭露書的範圍的情況下,許多修改和變化對於本領域普通技術人員來說將是顯而易見的。選擇和描述所陳述之實施例是為了最好地解釋本揭露書的原理和實際應用,並使本領域普通技術人員能夠理解本揭露書的各種實施例的各種修改,以適應預期的特定用途。 The description of this disclosure is presented for purposes of illustration and description, but is not intended to be exhaustive or limiting of the disclosure in the form of the disclosure. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope of the present disclosure. The embodiments presented were chosen and described in order to best explain the principles of the disclosure and the practical application, and to enable others of ordinary skill in the art to understand the disclosure with various modifications for the particular use contemplated.

雖然本發明已依據所示之實施例詳述,習知此技藝者將容易認知存在諸多實施例的變型,並且這一些變型將在本發明的精神與範圍內。據此,在不脫離所附之諸多權利請求項中,習知此技藝者可得到諸多修正。 While the invention has been described in detail based on the illustrated embodiments, those skilled in the art will readily recognize that there are many variations of the embodiments that will fall within the spirit and scope of the invention. Accordingly, those skilled in the art can obtain many amendments without departing from the appended claims.

262-1:資訊處理系統統一可延伸韌體介面開機管理程式 262-1: Unified Extensible Firmware Interface Boot Management Program for Information Processing System

262-2:作業系統開機管理程式 262-2: Operating System Boot Manager

264:作業系統載入器 264: Operating system loader

266:配置模組 266: Configuration module

268:開機選單 268:Boot menu

300:開機操作的時序圖或相位圖 300: Timing diagram or phase diagram of power-on operation

310:開機操作包括安全階段 310: Start-up operation includes safety phase

312:預驗證器 312: Pre-validator

320:前可延伸韌體介面初始化階段 320: Pre-extensible firmware interface initialization phase

322:前可延伸韌體介面初始化階段核心 322: Pre-extensible firmware interface initialization phase core

324:中央處理器初始化 324: CPU initialization

326:晶片組初始化 326: Chipset initialization

328:板資源初始化 328: Board resource initialization

330:驅動程序執行環境階段 330: Driver execution environment stage

334:驅動程式 334: Driver

332:EFI驅動程序調度程序 332:EFI Driver Scheduler

340:開機設備選擇階段 340: Boot device selection stage

350:瞬態系統載入階段 350:Transient system loading phase

352:開機載入程序 352: Bootloader

356:自生作業系統環境 356: Self-generated operating system environment

360:運行時階段 360: Runtime Phase

362:作業系統運行階段 362: Operating system running phase

400:桌面分層 400: Desktop layering

Claims (10)

一種佈署資訊處理系統的方法,係用以使得一資訊處理系統可以在多重環境下作業,包含以下步驟:在一儲存裝置(storage)中的一可延伸韌體介面(EFI)系統分割區(system partition)中,建立一統一可延伸韌體介面(UEFI)開機載入程序(bootloader),其具有一主(primary)作業系統之檔案系統(file system)屬性(attribute);建立一具有一主作業系統之第一母可開機虛擬映像檔於該儲存區之一分割區中;以及當一第一應用程式安裝於該第一母可開機虛擬映像檔中,對該第一母可開機虛擬映像檔差分為一第一子虛擬映像檔於該儲存裝置中之該分割區。 A method for deploying an information processing system is used to enable an information processing system to operate in multiple environments, comprising the following steps: in an Extensible Firmware Interface (EFI) system partition (system partition) in a storage device (storage), create a Unified Extensible Firmware Interface (UEFI) boot loader (bootloader), which has a file system (file system) attribute of a primary (primary) operating system; The parent bootable virtual image file is in a partition of the storage area; and when a first application program is installed in the first parent bootable virtual image file, the first parent bootable virtual image file is differentiated into a first child virtual image file in the partition of the storage device. 如申請專利範圍第1項所述之方法,更包含以下步驟:當一第一資料加入該第一子虛擬映像檔中,更包含一對該第一子虛擬映像檔差分為一第一孫(grandchild)虛擬映像檔於該儲存裝置中之該分割區;當一第二資料加入該第一母可開機虛擬映像檔中,更包含對該第一母可開機虛擬映像檔差分為一第二子虛擬映像檔於該儲存裝置中之該分割區;當一第二資料加入該第二子虛擬映像檔中,對該第二子虛擬映像檔差分為一第二孫虛擬映像檔於該儲存裝置中之該分割區;建立一具有一第二主作業系統之第二母可開機虛擬映像檔於該儲存區之該分割區中;以及將該第二作業系統之檔案系統屬性包含在該可延伸韌體介面開機載入程序。 The method as described in Item 1 of the scope of the patent application further includes the following steps: when a first data is added to the first sub-virtual image file, it further includes a pair of the first sub-virtual image file to be divided into a first grandchild (grandchild) virtual image file in the partition in the storage device; The image file is divided into a second grandchild virtual image file in the partition of the storage device; a second parent bootable virtual image file with a second main operating system is established in the partition of the storage area; and the file system attribute of the second operating system is included in the extensible firmware interface boot loader. 一種在申請專利範圍第2項用以驗證中該第一母可開機、第一/第二子、及第一/第二孫虛擬映像檔之間之相依性的方法,包含以下步驟:確認該第一母可開機虛擬映像檔與該第一子虛擬映像檔之間之相依性;確認該第一子虛擬映像檔與該第一孫虛擬映像檔之間之相依性;確認該第一母可開機虛擬映像檔與該第二子虛擬映像檔之間之相依性;以及確認該第二子虛擬映像檔與該第二孫虛擬映像檔之間之相依性,其中上述之確認步驟包含:確認該第一母可開機虛擬映像檔與該第一子虛擬映像檔之間動態磁碟標頭;以及確認是否在該第一子虛擬映像檔之該動態磁碟標頭中一母通用唯一標示符與在該第一母可開機虛擬映像檔的一硬碟頁標中一通用唯一標示符是否相同。 A method for verifying the dependency between the first parent bootable virtual image file, the first/second child, and the first/second grandchild virtual image file in item 2 of the scope of the patent application, comprising the following steps: confirming the dependency between the first parent bootable virtual image file and the first child virtual image file; confirming the dependency between the first child virtual image file and the first grandchild virtual image file; confirming the dependency between the first parent bootable virtual image file and the second child virtual image file; and confirming the second child virtual image file and the second grandchild virtual image file Dependency between files, wherein the above confirmation step includes: confirming the dynamic disk header between the first parent bootable virtual image file and the first sub-virtual image file; 如申請專利範圍第1項所述之方法,其中上述之建立該統一可延伸韌體介面開機載入程序步驟以及上述之建立該第一母可開機虛擬映像檔步驟係在一自生作業系統環境下運行,當該統一可延伸韌體介面開機載入程序被一作業系統開機管理器覆蓋,上述之統一可延伸韌體介面開機載入程序是在該自生作業系統環境下回復。 The method described in Item 1 of the scope of the patent application, wherein the above-mentioned step of establishing the boot loader of the unified extensible firmware interface and the step of establishing the first mother bootable virtual image file are run under a self-generated operating system environment, when the boot loader of the unified extensible firmware interface is covered by an operating system boot manager, the above-mentioned unified extensible firmware interface boot loader is restored under the environment of the native operating system. 如申請專利範圍第1項所述之方法,其中上述之統一可延伸韌體介面開機 載入程序與該第一母可開機虛擬映像檔係透過一雲端儲存器提供。 The method described in item 1 of the scope of the patent application, wherein the above-mentioned unified extensible firmware interface is booted The loader and the first mother bootable virtual image file are provided through a cloud storage. 一種用以佈署複數個資訊處理系統的方法,包含以下步驟:複製申請專利範圍第1項所述之可延伸韌體介面開機載入系統至該複數個資訊處理系統之複數個儲存裝置;複製申請專利範圍第1項所述之第一母可開機虛擬映像檔至該複數個資訊處理系統之該複數個儲存裝置;以及複製申請專利範圍第1項所述之第一子虛擬映像檔至該複數個資訊處理系統之該複數個儲存裝置。 A method for deploying a plurality of information processing systems, comprising the following steps: copying the extensible firmware interface bootloading system described in item 1 of the patent application to the plurality of storage devices of the plurality of information processing systems; copying the first parent bootable virtual image file described in item 1 of the application for patents to the plurality of storage devices of the plurality of information processing systems; and copying the first child virtual image file described in item 1 of the application for patents to the plurality of storage devices of the multiple information processing systems. 一種電腦實現方法,係用以使得一資訊處理系統可以在多重環境下作業,包含以下步驟:當該資訊處理系統開機時,藉由一統一可延伸韌體介面唯讀記憶體確認該資訊處理系統的所有元件是否配置正確;在一儲存裝置中的一可延伸韌體介面系統分割區中,載入一統一可延伸韌體介面開機載入程序,其具有一母可開機虛擬映像檔、一第一子虛擬映像檔及一第二子虛擬映像檔於該儲存裝置中一分割區;其中該第一與第二子虛擬映像檔係從該母可開機虛擬映像檔中產生,其中該第一虛擬映像檔較該第二虛擬映像檔為前;確認該母可開機虛擬映像檔與該第二子虛擬映像檔之間之相依性;確定該第二子虛擬映像檔為一開機元件;以及載入該開機元件之一作業系統。 A computer-implemented method for enabling an information processing system to operate in multiple environments, comprising the following steps: when the information processing system is powered on, confirming whether all components of the information processing system are configured correctly through a UIFI read-only memory; loading a UIFI boot loader in an eXFI system partition in a storage device, which has a parent bootable virtual image file, a first sub-virtual image file and a second sub-virtual image file in a partition in the storage device area; wherein the first and second sub-virtual image files are generated from the parent bootable virtual image file, wherein the first virtual image file is earlier than the second virtual image file; confirm the dependency between the parent bootable virtual image file and the second sub-virtual image file; determine that the second sub-virtual image file is a boot component; and load an operating system of the boot component. 如申請專利範圍第7項所述之方法,其中上述之可延伸韌體介面開機載入程序在該母可開機虛擬映像檔中包含該作業系統檔案系統屬性,上述之確認步驟包含:確認該第一母可開機虛擬映像檔與該第二子虛擬映像檔之間動態磁碟標頭;以及確認是否在該第二子虛擬映像檔之該動態磁碟標頭中一母通用唯一標示符與在該母可開機虛擬映像檔的一硬碟頁標中一通用唯一標示符是否相同,在該確認步驟中當該第二子虛擬映像檔失效後,更包含一步驟以自動複蓋該第一子虛擬映像檔為該第二子虛擬映像檔。 The method described in item 7 of the scope of the patent application, wherein the above-mentioned extensible firmware interface boot loader includes the file system attribute of the operating system in the parent bootable virtual image file, the above-mentioned confirming step includes: confirming the dynamic disk header between the first parent bootable virtual image file and the second child virtual image file; In the confirming step, when the second sub-virtual image file becomes invalid, a step is further included to automatically overwrite the first sub-virtual image file as the second sub-virtual image file. 一種佈署資訊處理系統的方法,係用以使得一資訊處理系統可以在多重環境下作業,包含以下步驟:建立一開機管理管理程式以及一配置模組於一儲存裝置之一可延伸介面分割區;執行一雲端執行緒指令以下載一指定可開機虛擬映像檔於該儲存裝置之該分割區;附加一旗標於該指定可開機虛擬映像檔與該配置模組;以及對該資訊處理系統重新開機。 A method for deploying an information processing system is used to enable an information processing system to operate in multiple environments, comprising the following steps: establishing a boot management program and a configuration module in an extensible interface partition of a storage device; executing a cloud thread command to download a designated bootable virtual image file in the partition of the storage device; attaching a flag to the designated bootable virtual image file and the configuration module; and rebooting the information processing system. 一種資訊處理系統,包含: 一儲存裝置用以儲存至少一統一可延伸韌體介面開機載入程序;一處理器,與該儲存裝置交互耦合,該處理器具有韌體以在其上執行,使得該資訊處理系統得以在多重環境中作業,其中該韌體配置該處理器以:當該資訊處理系統開機時,藉由一統一可延伸韌體介面唯讀記憶體確認該資訊處理系統的所有元件是否配置正確;在一儲存裝置中的一可延伸韌體介面系統分割區中,載入一統一可延伸韌體介面開機載入程序,其具有一母可開機虛擬映像檔、一第一子虛擬映像檔及一第二子虛擬映像檔於該儲存裝置中一分割區;其中該第一與第二子虛擬映像檔係從該母可開機虛擬映像檔中產生,其中該第一虛擬映像檔較該第二虛擬映像檔為前;確認該母可開機虛擬映像檔與該第二子虛擬映像檔之間之相依性;確定該第二子虛擬映像檔為一開機元件;以及載入該開機元件之一作業系統。 An information processing system comprising: A storage device is used to store at least one UIF interface boot loader; a processor is interactively coupled with the storage device, and the processor has firmware to execute on it, so that the information processing system can operate in multiple environments, wherein the firmware configures the processor to: when the information processing system is started, confirm whether all components of the information processing system are configured correctly through a UIF interface read-only memory; load a UEF interface into a system partition of the UEF interface in a storage device. The body interface boot loading program has a parent bootable virtual image file, a first child virtual image file and a second child virtual image file in a partition in the storage device; wherein the first and second child virtual image files are generated from the parent bootable virtual image file, wherein the first virtual image file is before the second virtual image file; confirm the dependency between the parent bootable virtual image file and the second child virtual image file; determine that the second child virtual image file is a boot component; and load the operating system of the boot component.
TW111113274A 2022-01-27 2022-04-07 Method and system for deploying operating environments TWI808713B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202263303582P 2022-01-27 2022-01-27
US63/303,582 2022-01-27

Publications (2)

Publication Number Publication Date
TWI808713B true TWI808713B (en) 2023-07-11
TW202331510A TW202331510A (en) 2023-08-01

Family

ID=88149300

Family Applications (1)

Application Number Title Priority Date Filing Date
TW111113274A TWI808713B (en) 2022-01-27 2022-04-07 Method and system for deploying operating environments

Country Status (1)

Country Link
TW (1) TWI808713B (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102037444A (en) * 2008-05-20 2011-04-27 思杰系统有限公司 Methods and systems for patching multiple disk images derived from a common base disk image
US20170228228A1 (en) * 2016-02-05 2017-08-10 Quanta Computer Inc. Remote launch of deploy utility
TW201928707A (en) * 2017-12-08 2019-07-16 美商雷網科技有限公司 Automatically deployed information technology (IT) system and method
CN112083964A (en) * 2019-06-14 2020-12-15 佛山市顺德区顺达电脑厂有限公司 Method for deploying operating system
CN113342365A (en) * 2021-06-28 2021-09-03 深圳前海微众银行股份有限公司 Operating system deployment method, device, equipment and computer-readable storage medium

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102037444A (en) * 2008-05-20 2011-04-27 思杰系统有限公司 Methods and systems for patching multiple disk images derived from a common base disk image
US20170228228A1 (en) * 2016-02-05 2017-08-10 Quanta Computer Inc. Remote launch of deploy utility
TW201729123A (en) * 2016-02-05 2017-08-16 廣達電腦股份有限公司 Method and server for remote launching deployment utility
TW201928707A (en) * 2017-12-08 2019-07-16 美商雷網科技有限公司 Automatically deployed information technology (IT) system and method
CN112083964A (en) * 2019-06-14 2020-12-15 佛山市顺德区顺达电脑厂有限公司 Method for deploying operating system
CN113342365A (en) * 2021-06-28 2021-09-03 深圳前海微众银行股份有限公司 Operating system deployment method, device, equipment and computer-readable storage medium

Also Published As

Publication number Publication date
TW202331510A (en) 2023-08-01

Similar Documents

Publication Publication Date Title
US10244081B2 (en) Adjustment to managed-infrastructure-as-a-service cloud standard
US10249014B2 (en) Use of snapshots to reduce risk in migration to a standard virtualized environment
US9632814B2 (en) Replacing virtual machine disks
US20190220271A1 (en) Scheduling upgrades in distributed computing systems
US7330967B1 (en) System and method for injecting drivers and setup information into pre-created images for image-based provisioning
US10303458B2 (en) Multi-platform installer
TWI262443B (en) Method, system and recording medium for automatically configuring data processing system
US7480793B1 (en) Dynamically configuring the environment of a recovery OS from an installed OS
US8341599B1 (en) Environments sharing remote mounted middleware
US10303487B2 (en) System and method for booting an information handling system
CN111984269A (en) Method for providing application construction service and application construction platform
US11709692B2 (en) Hot growing a cloud hosted block device
US9003231B1 (en) System for instantiating service instances for testing in a known state
US10282190B2 (en) System and method for updating a UEFI image in an information handling system
CN111984270A (en) Application deployment method and system
US9672047B1 (en) Systems and methods for accessing a bootable partition on a serial peripheral interface device
WO2023087764A1 (en) Algorithm application element packaging method and apparatus, device, storage medium, and computer program product
JP2023054777A (en) Method, system, and computer program for testing container orchestration system (generating test cluster for testing container orchestration system)
US10120671B1 (en) Multi-level image extraction
CN113312145A (en) Container scheduling method and device, electronic equipment and medium
US10768961B2 (en) Virtual machine seed image replication through parallel deployment
US8549545B2 (en) Abstraction of computer disk image cloning capabilities from bootable media
TWI808713B (en) Method and system for deploying operating environments
US20170185444A1 (en) System for batch processing of workflows for virtualized infrastructure
US20230185580A1 (en) Single node deployment of container platform