CN107766084A - 启动装载及安装方法及其计算*** - Google Patents
启动装载及安装方法及其计算*** Download PDFInfo
- Publication number
- CN107766084A CN107766084A CN201611069606.6A CN201611069606A CN107766084A CN 107766084 A CN107766084 A CN 107766084A CN 201611069606 A CN201611069606 A CN 201611069606A CN 107766084 A CN107766084 A CN 107766084A
- Authority
- CN
- China
- Prior art keywords
- device assembly
- loading device
- image shelves
- component
- memory body
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/66—Updates of program code stored in read-only memory [ROM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1072—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers for memories with random access ports synchronised on clock signal pulse trains, e.g. synchronous memories, self timed memories
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
一种启动装载及安装方法及其计算***,其中,计算***包含处理器单元、储存器装置以及记忆体;储存器装置储存一映像档,映像档包含加载器组件、虚拟磁碟组件以及操作***核心组件;记忆体储存指令,指令可被处理器单元执行;指令被执行时会使得计算***辨识加载器组件、装载该加载器组件为一加载器至记忆体中的第一位置、以及执行加载器组件以取得并分别装载虚拟磁碟组件及操作***核心组件至记忆体中的第二位置及第三位置。
Description
技术领域
本发明是关于一种UEFI固件的方法及其计算***;具体而言,本发明是关于一种方法及计算***,用于在UEFI架构下以单一个映像档执行***的安装及启动装载程序。
背景技术
传统的计算***可加载并启动一个操作***。通常,操作***的加载启动是由一低阶层的指令码负责处理,其中此低阶层的指令码是用于当作电脑***的硬件构件与操作软件(及其他于电脑***上执行的高阶层软件)之间桥梁或中介。此低阶层指令码常被称为基本输入输出***固件(Basic Input/Output System Firmware、亦即BIOS firmware),并且可提供一组软件程序用于使得高阶层软件可与电脑***的硬体构件产生互动。每当电脑***开机或被启动时,此固件可执行用于进行开机自检(Power-On Self Test、亦即POST)的程序,由此在将控制权交给操作***前可检测并发动或初始化电脑***中的所有硬体构件。这些硬体构件可包含***主记忆体、硬碟及键盘等等的硬体构件。
然而,随着技术的进展以及许多目前的设备(例如周边的设备)是朝向无线的技术领域发展,原本最初是设计给国际商用机器公司的个人电脑的传统BIOS标准,此传统BIOS标准已成为基于此传统BIOS标准的引导固件(boot up firmware)可控制硬件的限制点,随后甚至会导致限制操作***可控制硬件的范围。随着新的硬件和软件技术正在得到开发,此限制点会成为软硬件交互的一个主要障碍。因此,BIOS固件的新标准已被提出并通过许多主要行业领导广泛采用。这新的标准被称为统一可扩展固件接口(Unified ExtensibleFirmware Interface、简称为UEFI)。
随着采用UEFI标准,BIOS企业能够开始生产UEFI固件计算***,同时生产操作***的公司能够通过生产符合UEFI标准的操作***来取得到UEFI固件所提供的服务优势。当制造商或公司欲想将一特定的计算***或装置的固件或操作***进行更新及/或修改时,传统的方式包含一个漫长的过程,其过程包含计算装置的固件及/或操作***被修补。在其他案例中,上述程序会需要使用者俱备技术知识才能协助进行新修补档的安装。这是一个耗时且复杂的过程。然而,在现代时刻,当具有装载资信处理/计算及联网功能的各种不同物件的数量倍数增加时,以传统方式更新及/或补修所有装置上的固件及/或操作***将会是个几乎不可能或不实际的任务。
因此,以上述情况而言,在联网装置的固件及操作***的更新及安装程序过程中,势必需要有方法可降低安装的复杂度并且减轻用户的烦恼。
发明内容
本创作的一个目的在于提供一种计算***及其方法,其具有可支援根据单一个映像档安装及启动操作***的UEFI固件架构。
根据本创作的一个方面,计算***包括处理器单元、储存器装置以及记忆体。储存器装置储存映像档,其包含加载器组件、虚拟磁碟组件以及操作***核心组件。记忆体储存指令,此指令可被处理器单元执行;指令被执行时会使得计算***辨识出加载器组件、装载加载器组件为一加载器至记忆体中的第一位置、以及执行加载器组件以取得并分别装载虚拟磁碟组件及操作***核心组件至记忆体中的第二位置及第三位置。
于一实施例中,该映像档是从一远端来源接收并且是储存至该储存装置中的一操作***分区。
于一实施例中,储存于该记忆体并被该处理器单元执行以辨识并装载该加载器组件至该记忆体中的指令,是位于该计算***的一固件中的一EFI启动模块。
于一实施例中,该EFI启动模块包含一预设设定,该预设设定指向至该映像档中对应该加载器组件的一位置。
于一实施例中,该加载器组件是以一加载器装载至该记忆体中,并且在该操作***核心组件及该虚拟磁碟组件被取得并装载至该记忆体中前该装载器验证该映像档的一签章组件。
根据本创作的另一个方面,提供一种计算机实现的方法,包含执行计算机的操作,其中储存映像档于储存装置中,映像档包含加载器组件、虚拟磁碟组件以及操作***核心组件;辨识出加载器组件;将加载器组件装载至记忆体中的第一位置;以及执行装载在记忆体中的加载器组件以取得并分别装载虚拟磁碟组件及操作***核心组件至记忆体中的第二位置及第三位置。
于一实施例中,储存该映像档至该储存装置的步骤进一步包含:从一远端来源接收该映像档;以及储存该映像档至该储存装置的一操作***分区。
于一实施例中,辨识出该加载器组件的步骤进一步包含:根据一预设设定,在该预设设定指定的一位置读取该映像档。
于一实施例中,辨识出该加载器组件的步骤进一步包含:确认该映像档的签章的真实性。
于一实施例中,装载该加载器组件至该记忆体的步骤进一步包含:以一EFI启动加载模块从该映像档中取得该加载器组件;以及将该加载器组件解码并以一家载器装载至该记忆体中。
于一实施例中,在取得该操作***核心组件及该虚拟磁碟组件的步骤后进一步包含:从该映像档取得一文件***组件;以及经由该虚拟磁碟装载该文件***至该记忆体中。
于一实施例中,进一步包含:验证***服务的签章;以及执行通过验证的***服务。
附图说明
图1为本创作计算***的一个实施例的示意图;
图2为本创作一个符合UEFI标准的计算***的示意图;
图3为图2的另一个实施例的示意图;
图4为储存装置与记忆空间之间本创作的一个实施例的示意图;
图5为本创作方法的一个流程图的示意图;
图6A至6C为图5的另一个实施例的示意图。
具体实施方式
本发明的实施例提供一种根据单一个映像档可进行固件(firmware)或操作***(Operating System)的安装或更新的方法及计算***。在下面的详细描述中,会参考到对应的附图,其中通过举例的方式,具体实施例或示例可被详细描述。然而,这些实施方案仅是用于形容或协助说明本发明的范围,因此不应当被解释为对本发明的限制。请参照附图,其中类似标号在不同附图中表示类似的元件,本发明的各方面以及较佳的操作环境的实施例将会如下进行说明。
本文公开一种计算***和方法,用于根据单一映像档进行固件或操作***的安装及/或更新。较佳的,计算***包含(但不限于此)便携式计算机(laptop computers)、个人计算机(personal computers)、服务器(computer servers)、手持式计算设备(handheldcomputing devices),例如移动式电话和平板电脑、可佩戴的计算装置(wearablecomputing devices)以及/或任何具有嵌入式处理能力并且具有联网功能且可归类为物联网(Internet of Things,简称为IoT)的装置。
图1和以下讨论旨在提供其中可实现本发明的合适的计算环境的简要、概括描述。然而,本领域的技术人员应可体会到本发明也可以以其他合适的计算环境中实现。此外,本领域的技术人员应可理解,本发明也可以与其他计算***组态/配置,包括可在多处理器***、基于微处理器的或可编程的消费电子产品、小型计算机、大型计算机等的情况下实施。本发明也可以在分布式计算环境中实施,其中任务(tasks)可经由通过一通信网络连接的远端处理设备执行。
请参照图1,图1为一个示范的计算机架构,可用于实施本文的各种实施例。应当理解,尽管这里所描述的实施例在常规的桌上型计算机或服务器的假设情况下进行讨论,实际上这里所描述的实施例可以与任何类型的计算设备利用。举例而言,任何实体物件(例如任何可构成物联网的装置、车、大楼或其他物件)具有嵌入电子、软件、侦测器以及网络连通功能可能受益本创作的启动架构(boot architecture)。图1示出了一个计算***100,其可操作以基于固件(firmware)发起或启动操作***的加载引导程序。图1中的方块的目的是用于代表计算机结构的各个功能组件;并非一定会是代表计算机结构的实体元件。因此在不偏离计算机结构的整体感和宗旨的出发点的情况下,所述功能组件可以被组合、分离或除去。
为了提供本文所描述的功能性,计算***100包括一基板(baseboard)或“主机板”,此基板是一种印刷电路板,其中各种不同的组件或设备可通过***总线或其他方式的连接通信路径与其连接。在一实施例中,中央处理单元(Central Processing Unit,CPU)102会与芯片组(chipset)104共同操作。中央处理单元102可为一种标准的中央处理器,用于执行计算机运作上所必要的逻辑运算及算术。在此及其他实施例中,中央处理单元102可包括一或多个微处理器(microprocessors)、微控制器(microcontroller)、现场可编程门阵列(Field Programmable Gate Array,FPGA)、复杂可编程逻辑器件(ComplexProgrammable Logic Device,CPLD)、专用集成电路(Application Specific IntegratedCircuit,ASIC)及/或任何其它电子计算设备。
芯片组104包括北桥106和南桥108。北桥106提供中央处理单元102与计算***100的其余部分之间的界面/接口。北桥106亦提供了对一个或多个随机存取存储器(RandomAccess Memory,RAM)的接口,此些存储器可当作计算***100的主存储器114,或亦可能对一版载显卡(On-board graphics adapter)112提供接口服务。此外,北桥106还可以通过千兆以太网适配器(gigabit Ethernet adapter)110提供网络通信功能。千兆以太网适配器110能够经由一网络将计算***100连接到一个或多个其它计算机。千兆以太网适配器110所能进行连接的范围可以包括例如局域网(Local Area Network,LAN)或广域网(WideArea Network,WAN)连接。局域网和广域网联网环境在办公室、企业范围的计算机网络(enterprise-wide computer networks)、内联网以及网际网络上出现为常见的场景。北桥106是连接到南桥108。
南桥108是负责控制许多计算***100的输入/输出功能。具体而言,南桥108可提供一个或多个通用串行总线(Universal Serial Bus,USB)端口116、声音适配器(音效卡)124、以太网控制器134,以及一个或多个通用输入/输出(GPIO)引脚118。南桥108还可以提供用于连接周边设备的总线,例如符合BIOS引导规范(BIOS boot specification,BBS)标准的SCSI主机总线适配器130。在一实施例中,总线包括周边组件互连(PeripheralComponent Interconnect,PCI)总线。南桥108还可以提供一个***管理总线132,用于管理计算***100中的各种组件。电源管理电路126和时钟产生电路128也可以在南桥108的操作期间被利用。
南桥108还可***作以提供一个或多个接口,此些接口可用于将大容量存储设备连接到计算***100。举例而言,根据一实施例,南桥108包括串行高级技术附件(SerialAdvanced Technology Attachment,SATA)适配器和一个ATA 100适配器,其中串行高级技术附件适配器是用于提供一个或多个串行ATA端口120,ATA100适配器是用于提供一个或多个ATA 100端口122。串行ATA端口120和ATA 100端口122可以接着是连接到有存储操作***、应用程序及其他数据的一个或多个大量存储设备。本领域技术人员应已知道的是,一个操作***是包括可控制一个计算机的运作及资源分配的一组程序。一个应用程序是一种在操作***软件上(或在其他运行时环境中)运作/运行的软件,其并且会使用计算机的资源来执行用户欲计算***100欲完成的特定任务。
连接到南桥108和SCSI主机总线适配器130以及他们的相关联的计算机可读介质的大容量存储设备为计算***100提供非易失性存储的功能。尽管此处描述的计算机可读介质是指一个大容量存储设备,诸如硬盘或光碟机(CD-ROM drive),本领域技术人员应当能理解计算机可读介质可为任何计算***100能读取的媒介。举例而言(非限制的),计算机可读介质可包括计算机存储介质和通信介质。计算机存储介质包括以任何方法或技术(例如:计算机可读指令、数据结构、程序模块或其它数据等)完成的易失性、非易失性、可移动和不可移动的介质。计算机存储介质包括(但不限于)随机存取存储器(RAM)、唯读存储器(ROM)、可擦可编程唯读存储器(EPROM)、电子可擦可编程唯读存储器(EEPROM)、闪存或其他固态存储器技术、光碟(CD-ROM)、数字多功能影音光碟(DVD)、高画质数字多功能影音光碟(HD-DVD)、蓝光(BLU-RAY)或其他光学存储、磁带盒、磁带、磁盘存储或其它磁存储设备,或可以用来存储所需信息并且任何其它计算机可存取的介质。
南桥108也可以提供一个低引脚数(Low Pin Count,LPC)接口,其可用于连接至一个超输入输出(Input/Output,I/O)设备138。超输入输出装置138负责提供若干个输入/输出端口,包括一键盘端口、鼠标端口、串行接口、并行端口以及其他类型的输入/输出端口。所述的低引脚数接口或其他接口可被用于连接一个计算机存储介质,例如唯读存储器ROM,或例如快闪存储器的非易失性随机存取存储器137(Non-Volatile Random AccessMemory,NVRAM)。所述计算机存储介质可以是用于存储固件136,其包括包含指令和数据的一或多个模块,所述指令和数据可帮助启动计算***100和帮助计算***100内的元件之间的信息传递。然而,在其它不同的实施例中,固件136亦可被存储在计算***100中的任何其他区域中。
固件136可以包括符合UEFI规范的程序代码。应当理解的是,除了固件136可包含符合UEFI规范的固件以外,也可以增加其它类型及组合的固件。举例而言,固件136可额外或替代性包括一个BIOS固件和/或其它类型的本领域技术人员已知的固件。以下将会提供有关UEFI固件136的操作及运作方式的详细说明,敬请参考附加后续的图。但是应当理解的是,计算***100可能不会包括图1中所示的所有组件或元件、可能包含图1未显示的其他组件或可利用与图1所示完全不同的架构。
参照图2,有关符合UEFI规范的***并且可应用以提供本文各种不同实施例可执行的操作环境会如下更详细说明。如图2所示,该***包括一个平台硬件316和操作***(OS)202一个平台固件308可使用一个操作***加载程序(OS loader)302从EFI***区域318中取得操作***程序码;此操作***加载程序时常被称为一个引导器、操作***加载器或引导器。同理,操作***加载程序302亦可从其他地方取得操作***程序码,包含从连接的周边设备或从固件135本身。EFI***分区318可能为一种结构上可共享的***分区。因此,EFI***分区318可定义一个分区及文件/文件***,其可被设计以允许多个供应商之间进行大容量储存器的安全共享。此外,一个OS分区320亦可被使用。
一旦开始了,操作***加载程序302会继续引导并启动整个操作***202,例如与Linux操作***相关联的GRUB标准可能以阶段性的加载/装载操作***。操作***加载程序302可使用EFI引导服务304来接到其他支援的标准规范,以致使能调查、了解、及初始化各种平台组件及管理它们的操作***202软件。因此,从其他规格/标准的接口314亦可能存在于***中。举例而言,高级配置和电源管理接口(Advanced Configuration and PowerManagement Interface,ACPI)和***管理BIOS(SMBIOS)的规格标准可被支援。
EFI引导服务304提供给设备各种接口以及在引导的期间中使用的***功能。EFI运行服务306在启动阶段时可***作***加载程序302利用,并且当操作***202在执行时也会提供服务给操作***202。例如,运行服务可确保提供操作***202在正常运作中所需的适当基础平台硬件资源的抽象。通过加载/装载EFI驱动程序及EFI应用程序影像档及其在被装载后可提供任何EFI所定义的运行时服务及引导加载服务,EFI可扩展平台固件的功能。当EFI固件被初始化后,控制权将会转移至引导加载程序312。
参照图3,图3描述本创作的一种方法或程序,其可使得或促使计算***无视装载启动EFI***分区318中操作***码的程序步骤。实际上,在本实施例中,本创作的EFI启动加载模块312可先侦测平台硬体316的储存装置操作***分区320是否有储存一个用于安装新的操作***的映像档322。
在一个实施例中,映像档322可经由网际网络被接收并储存于操作***分区320中;其中,当下一次计算***重新启动时,EFI启动加载模块312可执行上述侦测程序来搜寻到储存于操作***分区320中的映像档322。
在另一个实施例中,计算***的固件或执行中的操作***可发起或被促使发起更新的程序,此更新程序可包含连接至网际网络上的一个远端来源并从其中下载映像档322至操作***分区320中。举例而言,计算***的供应者或制造商可在远端对计算***指示进行更新程序。在此状况下,制造商可指示或促使计算***去下载映像档至操作***分区320,通过此方式,在下一次重新开机时,计算***的EFI启动加载模块312在进行搜寻操作***分区320时可侦测得到映像档322。
当EFI启动加载模块312发现映像档322在操作***分区320时,EFI启动加载模块312可通过UEFI磁碟服务304读取映像档322。如图3及4所示,在本实施例中,映像档322是储存于操作***分区320(储存装置)并且包含各种不同组件的编码。在一个实施例中,映像档322包含(但不限于此)签章组件325、加载器组件326、操作***核心组件327、虚拟磁碟组件328以及文件***组件329。当EFI启动加载模块312搜寻并侦测到操作***分区320中的映像档322时,EFI启动加载模块312会使用UEFI磁碟服务304来读取并装载加载器组件326至计算***的记忆体(记忆空间memory space),由此可导致计算***执行加载器组件326中的程序编码。
在本实施例中,加载器组件326是一种EFI格式加载器,其程序是经由UEFI磁碟服务304以EFI启动加载模块312装载至记忆空间中。当加载器的程序/指令在记忆空间中被执行时,加载器的程序会去取得操作***核心组件327及虚拟磁碟组件328。通过此方式,操作***核心组件327及虚拟磁碟组件328接着可被装载至记忆空间的不同位置中。举例而言,假设加载器是被装载至记忆空间的一第一位置,操作***核心组件327及虚拟磁碟组件328则是可能分别会被装载至记忆空间中的一第二位置及一第三位置。
在一个实施例中,虚拟磁碟组件328可包含必要的文件来支援及允许一个真正文件***(real file system)可被架设在计算***上。此些必要文件可包含驱动程序、可执行的组件以及任何其他辅助文件。在其他不同实施例中,其他任何数目的自选组件可包含于虚拟磁碟组件328中,例如语言支援文件(language support files)。在虚拟磁碟组件328被装载在记忆空间中的情况下,虚拟磁碟组件328可将文件***329架设在记忆空间中。当记忆空间中的加载器将操作***核心组件327以操作***核心(OS Kernel)装载至记忆空间中后,加载器可促使计算***执行操作***核心来启动新的操作***。
图5为一种根据单一映像档安装新的加载器或操作***的计算机实现方法的一个实施例。如图5所示,方法400包含步骤410至450。如上所述,映像档322是储存于平台硬体316的储存装置里的操作***分区320。当计算***启动或开机时,平台特定固件308的EFI启动加载模块312会搜寻操作***分区320并找到映像档322。其中,EFI启动加载模块312会执行步骤420;步骤420包含辨识出映像档322中的加载器组件326。在此点,EFI启动加载模块312接着会在步骤420中将加载器组件326装载至记忆体中,并且进行执行被装载至记忆体中的加载器组件326的步骤440。步骤440,当执行中时,记忆体里的加载器会从映像档322中取得虚拟磁碟组件328及操作***核心组件327,并且将虚拟磁碟组件328及操作***核心组件327装载至记忆空间里。接着,步骤450包含执行装载在记忆体(记忆空间)里的操作***核心以启动新的操作***。
图6A至6C为图5的另一方法流程图的实施例。参照图6A,在EFI启动加载模块312发现操作***分区320有映像文件322或发现原本在操作***分区320内的映像档换成映像档322时,步骤501至505将会被EFI启动加载模块312。
如图6A所示,步骤501包含发起映像档322的装载程序。在本实施例中,当EFI启动加载模块312发现平台硬体316的储存装置的操作***分区320里的映像档322时,EFI启动加载模块312将会发起映像档322至计算***的记忆空间的装载(加载)程序。EFI启动加载模块312会先在步骤502中确认操作***分区320中的文件(可能有多个文件)是否为一个操作***的映像档。接着,当EFI启动加载模块312确认操作***分区320里的映像档322真的是一个操作***的映像档时,EFI启动加载模块312会进行步骤503,其中步骤503包含确认映像档322的签章。
在本实施例中,映像档322会包含一个签章组件325。当此签章组件325被EFI启动加载模块312验证为正确或合格的签章,映像档322将会被EFI启动加载模块312认定为安全且认证为适用于计算***中。在步骤503中执行完验证后,EFI启动加载模块312接着会进行步骤504;其中,步骤504包含从映像档322中取得加载器组件326。
在步骤504中,EFI启动加载模块312会预设性的知道映像档322中加载器组件326的位置。EFI启动加载模块312会于映像档322里在此特定位置取得加载器组件326。然而,在其他不同实施例中,EFI启动加载模块312不一定会事先知道映像档322中加载器组件326的位置。在此情况下,EFI启动加载模块312可先扫描映像档322并且辨识出加载器组件326,其中EFI启动加载模块312接着会取得加载器组件326并且进行步骤505。步骤505包含将加载器组件326装载至记忆体(记忆空间)中。
如图6B所示,加载器组件326装载至记忆空间后流程程序会进行步骤506;其中,步骤506包含执行装载在记忆空间里的加载器组件。当被计算***执行时,加载器会从映像档322取得虚拟磁碟组件328。在本实施例中,只有加载器知道映像档322中虚拟磁碟组件328的位置。换言之,若没有事先将加载器组件326从映像档322中解码并装载至记忆空间,就没有办法得知虚拟磁碟组件328的位置。通过此方式,由于只有真正的且认证过的映像档322才能被正确的执行,本创作可提供一定的安全机制。以类似方式,在步骤507中记忆空间里的加载器会从映像档322取得操作***核心组件327,其中映像档322中操作***核心组件327的位置也相对的只有加载器知道。
在取得操作***核心组件327及虚拟磁碟组件328后,这些组件分别在步骤508及509会背装在至记忆空间的一第二位置及一第三位置(相对于记忆空间的第一位置)。接着,步骤510会被执行以启动装载在记忆空间的操作***核心。
本创作的流程接着会如图6C执行步骤511;步骤511是在新的操作***环境下被执行。如图6C所示,步骤511包含装载驱动程序并执行硬体初始化程序。接着,虚拟磁碟会被装载并且***初始化将会在步骤512执行,其中文件***接着会在步骤513中被装载或架设起来。步骤514会验证***服务的签章,而认证好的***服务会在步骤515中被执行以完成整个程序。
如本创作上述方法及计算***所述,由于计算***可从单一个被复制导操作***分区的映像档读取并安装一个新的操作***,本创作提供一种新颖方式,可较简单且快速配送方式将新的更新文件分配至多个联网装置。举例而言,由于每个装置只需要接收到单一个文件,几千或几千万个物联网装置的软件补修或更新可很快的被执行并完成。这样可减少需要传给每个装置的文件数量,由此可减少频宽的需求来进行这些装置的更新。同时,安装时间及安装复杂度会明显的降低,因此在安装过程中用户不需要烦恼如何进行安装,可明显降低用户的烦恼程度。此外,由于操作***核心组件及虚拟磁碟组件在映像档中的位置只有加载器组件知道,本创作可提供另一层的安全机制来避免恶意的编码被执行。
应当理解的是,本文所描述的实施例和实施方案仅用于说明本案的目的,并且各种修改或变化对于本技术领域的人应可轻易理解,并且被包含在本申请的精神及范围内和所附的权利要求书的范围。
Claims (12)
1.一种计算机实现的方法,包含执行计算机的操作,其特征在于:
储存一映像档于一储存装置中,该映像档包含一加载器组件、一虚拟磁碟组件以及一操作***核心组件;
辨识出该加载器组件;
将该加载器组件装载至一记忆体中的一第一位置;以及
执行装载在该记忆体中的该加载器组件以取得并分别装载该虚拟磁碟组件及该操作***核心组件至该记忆体中的一第二位置及一第三位置。
2.如权利要求1所述的计算机实现的方法,其特征在于,储存该映像档至该储存装置的步骤进一步包含:
从一远端来源接收该映像档;以及
储存该映像档至该储存装置的一操作***分区。
3.如权利要求1所述的计算机实现的方法,其特征在于,辨识出该加载器组件的步骤进一步包含:
根据一预设设定,在该预设设定指定的一位置读取该映像档。
4.如权利要求1所述的计算机实现的方法,其特征在于,辨识出该加载器组件的步骤进一步包含:
确认该映像档的签章的真实性。
5.如权利要求1所述的计算机实现的方法,其特征在于,装载该加载器组件至该记忆体的步骤进一步包含:
以一EFI启动加载模块从该映像档中取得该加载器组件;以及
将该加载器组件解码并以一家载器装载至该记忆体中。
6.如权利要求1所述的计算机实现的方法,其特征在于,在取得该操作***核心组件及该虚拟磁碟组件的步骤后进一步包含:
从该映像档取得一文件***组件;以及
经由该虚拟磁碟装载该文件***至该记忆体中。
7.如权利要求6所述的计算机实现的方法,其特征在于,进一步包含:
验证***服务的签章;以及
执行通过验证的***服务。
8.一种计算***,其特征在于,包含:
一处理器单元;
一储存器装置储存一映像档,该映像档包含一加载器组件、一虚拟磁碟组件以及一操作***核心组件;以及
一记忆体储存指令,该指令可被该处理器单元执行;该指令被执行时会使得该计算***辨识该加载器组件、装载该加载器组件为一加载器至该记忆体中的一第一位置、以及执行该加载器组件以取得并分别装载该虚拟磁碟组件及该操作***核心组件至该记忆体中的一第二位置及一第三位置。
9.如权利要求8所述的计算***,其特征在于,该映像档是从一远端来源接收并且是储存至该储存装置中的一操作***分区。
10.如权利要求8所述的计算***,其特征在于,储存于该记忆体并被该处理器单元执行以辨识并装载该加载器组件至该记忆体中的指令,是位于该计算***的一固件中的一EFI启动模块。
11.如权利要求10所述的计算***,其特征在于,该EFI启动模块包含一预设设定,该预设设定指向至该映像档中对应该加载器组件的一位置。
12.如权利要求8所述的计算***,其特征在于,该加载器组件是以一加载器装载至该记忆体中,并且在该操作***核心组件及该虚拟磁碟组件被取得并装载至该记忆体中前该装载器验证该映像档的一签章组件。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/238,763 | 2016-08-17 | ||
US15/238,763 US10025587B2 (en) | 2016-08-17 | 2016-08-17 | Method of bootup and installation, and computer system thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107766084A true CN107766084A (zh) | 2018-03-06 |
CN107766084B CN107766084B (zh) | 2021-04-06 |
Family
ID=61191681
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611069606.6A Expired - Fee Related CN107766084B (zh) | 2016-08-17 | 2016-11-29 | 启动装载及安装方法及其计算*** |
Country Status (2)
Country | Link |
---|---|
US (1) | US10025587B2 (zh) |
CN (1) | CN107766084B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111290799A (zh) * | 2020-02-06 | 2020-06-16 | 北京字节跳动网络技术有限公司 | 组件加载方法、装置、电子设备、及存储介质 |
CN112231006A (zh) * | 2020-10-23 | 2021-01-15 | 杭州海康存储科技有限公司 | 计算机设备的启动方法、装置及计算机设备 |
TWI763192B (zh) * | 2020-12-18 | 2022-05-01 | 技嘉科技股份有限公司 | 電子裝置以及資料完整性的檢驗方法 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11150911B2 (en) | 2018-06-15 | 2021-10-19 | Dell Products, L.P. | System and method for managing UEFI boot device path based on custom selection |
US10942750B2 (en) | 2019-03-29 | 2021-03-09 | Dell Products L.P. | System and method to securely load non-UEFI based file format as OEM based UEFI custom capsule format in UEFI loader |
CN117707626A (zh) * | 2022-10-09 | 2024-03-15 | 荣耀终端有限公司 | ***启动方法及电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102135923A (zh) * | 2010-01-21 | 2011-07-27 | 鸿富锦精密工业(深圳)有限公司 | 将操作***集成到bios芯片的方法及启动该操作***的方法 |
US20120284495A1 (en) * | 2011-05-06 | 2012-11-08 | Dell Products L.P. | System and Method for Facilitating Booting Using a Plurality of Boot Methods |
US8468334B1 (en) * | 2011-01-28 | 2013-06-18 | American Megatrends, Inc. | Efficient initial RAM disk creation |
US20150004542A1 (en) * | 2013-06-28 | 2015-01-01 | Xerox Corporation | Toner processes for hyper-pigmented toners |
CN105765526A (zh) * | 2013-06-14 | 2016-07-13 | 华为技术有限公司 | 通过网络从远程磁盘镜像进行引导 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8356168B2 (en) * | 2008-06-19 | 2013-01-15 | Intel Corporation | Non-blocking UEFI I/O channel enhancements |
US8812830B2 (en) * | 2011-08-31 | 2014-08-19 | Microsoft Corporation | Attestation protocol for securely booting a guest operating system |
EP2972819B1 (en) * | 2013-03-15 | 2020-01-01 | Huawei Technologies Co., Ltd. | Booting method for computer system with multiple central processing units |
US9569297B2 (en) * | 2014-07-16 | 2017-02-14 | Dell Products, Lp | Seamless method for booting from a degraded software raid volume on a UEFI system |
-
2016
- 2016-08-17 US US15/238,763 patent/US10025587B2/en not_active Expired - Fee Related
- 2016-11-29 CN CN201611069606.6A patent/CN107766084B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102135923A (zh) * | 2010-01-21 | 2011-07-27 | 鸿富锦精密工业(深圳)有限公司 | 将操作***集成到bios芯片的方法及启动该操作***的方法 |
US8468334B1 (en) * | 2011-01-28 | 2013-06-18 | American Megatrends, Inc. | Efficient initial RAM disk creation |
US20120284495A1 (en) * | 2011-05-06 | 2012-11-08 | Dell Products L.P. | System and Method for Facilitating Booting Using a Plurality of Boot Methods |
CN105765526A (zh) * | 2013-06-14 | 2016-07-13 | 华为技术有限公司 | 通过网络从远程磁盘镜像进行引导 |
US20150004542A1 (en) * | 2013-06-28 | 2015-01-01 | Xerox Corporation | Toner processes for hyper-pigmented toners |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111290799A (zh) * | 2020-02-06 | 2020-06-16 | 北京字节跳动网络技术有限公司 | 组件加载方法、装置、电子设备、及存储介质 |
CN111290799B (zh) * | 2020-02-06 | 2023-09-19 | 北京字节跳动网络技术有限公司 | 组件加载方法、装置、电子设备、及存储介质 |
CN112231006A (zh) * | 2020-10-23 | 2021-01-15 | 杭州海康存储科技有限公司 | 计算机设备的启动方法、装置及计算机设备 |
TWI763192B (zh) * | 2020-12-18 | 2022-05-01 | 技嘉科技股份有限公司 | 電子裝置以及資料完整性的檢驗方法 |
Also Published As
Publication number | Publication date |
---|---|
US20180052679A1 (en) | 2018-02-22 |
US10025587B2 (en) | 2018-07-17 |
CN107766084B (zh) | 2021-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10185828B2 (en) | Systems and methods using virtual UEFI path for secure firmware handling in multi-tenant or server information handling system environments | |
CN107766084A (zh) | 启动装载及安装方法及其计算*** | |
US10754955B2 (en) | Authenticating a boot path update | |
US9501289B2 (en) | Method of a UEFI firmware and computer system thereof | |
CN102779050B (zh) | 提供加速的引导性能的***和方法 | |
US9626181B2 (en) | Systems and methods to securely inject binary images and code into firmware | |
US9632806B1 (en) | Remote platform configuration | |
US20160180094A1 (en) | Method for optimizing boot time of an information handling system | |
US10540501B2 (en) | Recovering an information handling system from a secure boot authentication failure | |
US10303458B2 (en) | Multi-platform installer | |
US11281768B1 (en) | Firmware security vulnerability verification service | |
US9417886B2 (en) | System and method for dynamically changing system behavior by modifying boot configuration data and registry entries | |
US10831897B2 (en) | Selective enforcement of secure boot database entries in an information handling system | |
US10303487B2 (en) | System and method for booting an information handling system | |
CN109426527B (zh) | 在uefi固件及作业***间分享蓝牙数据的电脑***及其方法 | |
US20190095221A1 (en) | Boot Disk Detection and Management in an Information Handling System Manufacturing Environment | |
US10146551B2 (en) | Initializing and reconfiguring replacement motherboards | |
CN107135462A (zh) | Uefi 固件的蓝牙配对方法及其计算*** | |
US7418586B2 (en) | Method and apparatus for assigning devices to a partition | |
US9778936B1 (en) | Booting a computing system into a manufacturing mode | |
US11340882B2 (en) | Systems and methods for enforcing update policies while applying updates from bootable image file | |
US10552168B2 (en) | Dynamic microsystem reconfiguration with collaborative verification | |
US10684843B1 (en) | Firmware updates using updated firmware files in a dedicated firmware volume | |
US20230236844A1 (en) | System and Method to Update System Recommended Settings for Corresponding Operating System Version | |
US10691444B1 (en) | Launching updated firmware files stored in a dedicated firmware volume |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: American Georgia Applicant after: AMERICAN MEGATRENDS Inc. Address before: Building No. 200, 5555 Oakbrook Park Avenue, 30093 Norcross, Georgia, USA Applicant before: American Megatrends Inc. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20210406 Termination date: 20211129 |
|
CF01 | Termination of patent right due to non-payment of annual fee |