CN111433747A - 用于加载操作***的虚拟存储器 - Google Patents

用于加载操作***的虚拟存储器 Download PDF

Info

Publication number
CN111433747A
CN111433747A CN201780097650.4A CN201780097650A CN111433747A CN 111433747 A CN111433747 A CN 111433747A CN 201780097650 A CN201780097650 A CN 201780097650A CN 111433747 A CN111433747 A CN 111433747A
Authority
CN
China
Prior art keywords
storage device
operating system
virtual storage
virtual
processor
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
Application number
CN201780097650.4A
Other languages
English (en)
Other versions
CN111433747B (zh
Inventor
J·F·乔卡里
C·R·斯陶布
P·阿尔肯塔拉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of CN111433747A publication Critical patent/CN111433747A/zh
Application granted granted Critical
Publication of CN111433747B publication Critical patent/CN111433747B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0664Virtualisation aspects at device level, e.g. emulation of a storage device or system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4403Processor initialisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • G06F9/4408Boot device selection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4416Network booting; Remote initial program loading [RIPL]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

示例电子设备包括用于存储虚拟存储设备的易失性存储器。处理器用于在虚拟存储设备中生成操作***引导序列。处理器使用固件接口***驱动程序来创建设备路径,所述设备路径包括易失性存储器中包含虚拟存储设备的位置。处理器将计算机操作***文件保存在虚拟存储设备中。处理器通过处理来自虚拟存储设备的计算机操作***文件来加载操作***引导序列。

Description

用于加载操作***的虚拟存储器
背景技术
计算机执行引导序列以加载操作***OS。包含压缩盘和/或数字视频盘驱动器或一些其他类型的非易失性存储设备的计算机可以被用于引导OS。
附图说明
图1是图示根据示例的用于利用虚拟存储器来加载操作***引导序列的电子设备的框图。
图2是图示根据示例的创建分区表的处理器的框图。
图3是图示根据示例的用于利用虚拟存储器来模拟非易失性存储设备的电子设备的框图。
图4是图示根据示例的用于利用统一可扩展固件接口驱动程序来创建虚拟存储器的电子设备的框图。
图5是图示根据示例的在电子设备中创建虚拟存储器的方法的流程图。
图6A是图示根据示例的用于利用虚拟存储器来模拟非易失性存储设备的功能的电子设备的框图。
图6B是图示根据示例的链接到诸如网络服务器或云服务之类的外部设备的电子设备的框图。
图7是图示根据示例的存储在电子设备中的***分区中的虚拟存储器的框图。
图8是根据示例的用于通过运行来自虚拟存储器的操作***文件来利用虚拟存储器来加载操作***的电子设备的框图。
图9是根据示例的通过链接到诸如网络服务器或云服务之类的外部设备的通信网络接收指令的电子设备的框图。
具体实施方式
本文中描述的示例提供了用于在不使用非易失性本地介质(诸如磁盘驱动器、闪存驱动器或任何其他类型的辅助存储设备)的情况下运行计算机操作***的引导序列的技术。所述示例描述了创建模拟物理非易失性设备的功能的虚拟存储设备。根据示例,虚拟设备被创建并存储在主存储器(即易失性存储器)中,或者可以被远程存储并通过网络通信信道来提供,而不是在本地非易失性存储器上。当打开计算机时,在加载操作***的预引导或引导恢复阶段期间访问虚拟存储设备。在示例中,电子设备包括:易失性存储器,用于存储虚拟存储设备;以及处理器,用于:在虚拟存储设备中生成操作***引导序列,使用固件接口***驱动程序来创建设备路径,所述设备路径包括易失性存储器中包含虚拟存储设备的位置,将计算机操作***文件保存在虚拟存储设备中,以及通过处理来自虚拟存储设备的计算机操作***文件来加载操作***引导序列。另一个示例提供了一种包括指令的非暂时性计算机可读介质,所述指令在被执行时使计算设备的处理器用于:在计算设备的易失性存储器中创建虚拟存储设备;安装用于加载虚拟存储设备中的操作***引导序列的指令;在虚拟存储设备中创建***分区;将操作***文件保存到***分区中;以及通过运行来自虚拟存储设备的操作***文件来加载操作***。
在示例中,虚拟设备由***固件创建,该***固件创建设备路径,该设备路径映射到计算机的主存储器中的统一可扩展固件接口UEFI名称空间(namespace),并允许对其进行读和/或写操作,就像它是真实的存储设备一样。名称空间是在计算机***中被用于组织各种种类的对象使得可以通过名称引用这些对象的符号的集合。因此,创建到虚拟设备的设备路径,该设备路径模拟可以在操作***引导序列中使用的到非易失性存储设备的设备路径。根据另一示例,易失性存储设备包括虚拟存储器,该虚拟存储器用于模拟由非易失性存储设备提供的计算机操作***引导序列功能,该非易失性存储器包括用于标识虚拟存储器的名称空间的设备路径。在虚拟存储器中提供全局唯一标识符GUID分区表。UEFI***分区在虚拟存储器中提供,并与分区表对接(interface)。操作***文件被存储在***分区中,并且计算机可执行指令用于基于操作***文件来加载虚拟存储器中的计算机操作***引导序列。当在虚拟设备上执行正常的磁盘操作时,虚拟设备驱动程序负责将操作重定向到***随机存取存储器RAM。操作***的副本可以在易失性存储器中被创建,并且可以被传输到远程存储位置,以在将来由于计算机故障而需要取回特定计算机参数的情况下提供整个计算机状态的副本。
在示例中,UEFI驱动程序创建虚拟磁盘,该虚拟磁盘又包含物理设备路径,该物理设备路径模拟到非易失性或网络设备的实际设备路径。根据示例,除了其他之外,该过程还可以从预配置的网络位置下载包括OS引导加载器文件的OS映像文件。调用/处理OS引导加载器以便引导OS。可以定制OS映像以执行具体任务,除了其他任务之外,具体任务还包括但不限于完整的***重新映像、硬件或软件诊断、当前安装的OS的恢复。
图1是图示包括用于存储虚拟存储设备20的易失性存储器15的电子设备10的框图。在示例中,易失性存储器15可以是电子设备10的主***存储器,诸如RAM。电子设备10的示例可以包括PC、膝上型计算机、平板计算机、智能电话或将UEFI和OS用于软件组件的功能的任何其他类型的计算设备或电子设备。处理器25在虚拟存储设备20中生成操作***引导序列30。如下面进一步描述的,处理器25可以是用于实现由本文中描述的示例提供的技术的任何合适的处理器,并且适用于在计算机和/或电子设备环境中操作。在一个示例中,处理器25可以是电子设备10的部分,或者在另一示例中,处理器25可以是被通信地耦合到电子设备10的另一***的部分。处理器25使用固件接口***驱动程序35来创建设备路径40,所述设备路径40包括易失性存储器15中包含虚拟存储设备20的位置75,并且因此驱动程序35创建虚拟存储设备20。在一个示例中,驱动程序35包括由处理器25处理的软件驱动程序。在另一个示例中,驱动程序35包括被耦合到易失性存储器15和处理器25的硬件驱动程序。在一个示例中,驱动程序35可以被存储在易失性存储器15中,或者其可以被存储在电子设备10的其他计算机可读存储组件中。处理器25将计算机操作***文件49保存在虚拟存储设备20中。处理器25通过处理来自虚拟存储设备20的计算机操作***文件49来加载操作***引导序列30。
例如,本文中描述的技术可以被用于在个人计算机PC上引导微软Windows®,而不需要任何本地非易失性介质。在示例中,微软Windows®包括Windows® PE/RE和Windows®云可以被完全引导,而无需使用任何本地辅助存储设备。然后,OS映像可以调用专门的软件或脚本,以便例如重新映像具有完整的Windows® OS(诸如Windows® Pro、Windows®Enterprise等)的***盘,或甚至恢复损坏的OS。除了其他用途之外,OS映像还可以被用于硬件诊断、取证分析(forensic analysis)。此外,本文中描述的示例可以被用作为最终用户提供定制服务的无盘信息亭(diskless kiosk)。
参考图1,图2是图示处理器25可以在虚拟存储设备20中创建全局唯一标识符分区表50的框图。参考图1和图2,图3是图示处理器25可以在OS预引导阶段期间创建到虚拟存储设备20的设备路径40的框图,该设备路径40模拟到非易失性存储设备60的物理设备路径55。这允许电子设备10直接从易失性存储器15引导OS。如图4的框图中所示,参考图1到图3,处理器25可以在虚拟存储设备20中安装块输入/输出I/O和磁盘输入/输出I/O协议65。此外,根据示例,接口***驱动程序35可以包括统一可扩展固件接口***驱动程序36。
参考图1到图4,图5是图示根据示例的在电子设备10中创建虚拟存储器20的方法5的流程图。可以从驱动程序35的执行流程的角度来提供方法5,以便设置电子设备10以运行软件并直接从易失性存储器15执行OS的引导序列30。根据示例,驱动程序35可以执行软件代码以执行其功能,使得该软件代码可以由易失性存储器15、电子设备10中的另一组件生成,或者可以从可能与电子设备10远程定位的另一个设备或***下载或访问。图5的流程图中提供的方法5示出了顺序示例,并且在不脱离由方法5提供的一般技术的情况下,可以将其他中间过程结合到方法5中。此外,根据其他示例,方法5中描述的各种过程可以以与如图5的流程图中所呈现的不同的顺序来实现。
在框41中,可以是UEFI驱动程序36的驱动程序35例如通过按压电子设备10上的单个键或按钮(未示出)来启动,或者当没有提供可引导设备时自动启动。在框42中,由驱动程序35将虚拟存储设备20创建到电子设备10的主***存储器(例如,易失性存储器15)中。虚拟存储设备20由驱动程序35通过在易失性存储器15中建立位置75来创建,在易失性存储器15中创建用于访问虚拟存储器15的设备路径40。设备路径40被设置成模拟可以被链接到非易失性存储设备60的实际物理设备路径55。因此,为了执行OS引导序列30的目的,电子设备10假设设备路径40类似于设备路径55。
在框43中,由OS引导加载器所需的协议65由驱动程序35安装在虚拟存储设备20上。协议65可以包括UEFI协议,并且模拟真实物理设备路径55的设备路径40被安装在易失性存储器15中以建立虚拟存储设备20的位置75。此外,协议65可以包括块I/O和磁盘I/O协议,所述协议也被安装在虚拟存储设备20上。可以由OS引导加载器使用块I/O和磁盘I/O协议,以便读取电子设备10的内容。
在框44中,由驱动程序35创建如图6中进一步示出的分区表50。在示例中,分区表50包括GUID分区表。在框45中,由驱动程序35在易失性存储器15中创建***分区75。在示例中,***分区75包括UEFI***分区。根据示例,***分区75可以被格式化为文件分配表32FAT32文件***。在框46中,OS文件49由驱动程序35保存到在框45中创建的分区75中。接下来,在框47中,由驱动程序35调用***引导加载器,并且OS开始其自身的加载过程。在步骤48中,OS具有对电子设备10的控制。
参考图1到图5,图6A是图示包括易失性存储器15的电子设备10的框图。虚拟存储器20被存储在易失性存储器15中,以模拟由非易失性存储设备60提供的计算机操作***引导序列30。GUID分区表GPT 50位于虚拟存储器20中。***分区70位于虚拟存储器20中,并且与分区表50对接。***分区70包括到包含虚拟存储器20的易失性存储器15中的位置75的设备路径40。操作***文件49通过固件接口被存储在***分区70中。计算机可执行指令80基于操作***文件49来加载虚拟存储器20中的计算机操作***引导序列30。此外,不存在对易失性存储器15中或任何其他支持的存储设备中(例如,非易失性存储设备60中)的任何先前安装的OS的依赖。虚拟存储器20可以被用于安装新的OS副本或覆盖(override)由电子设备10先前使用的损坏的OS副本。在示例中,虚拟存储器20可以完全由***基本输入/输出***BIOS来实现,并且甚至可以在电子设备10中没有任何本地硬盘的情况下使用。可以在每个***引导序列30处刷新OS映像。此外,如图6B中所示,参考图1到图6A,在需要它的情况下,数据61可以被存留(persist)在诸如远程服务器、云存储服务等的外部设备62中。
参考图1到图6,图7是图示电子设备10可以在虚拟存储器20中包括块输入/输出和磁盘输入/输出协议65的框图。根据示例,***分区70可以被格式化为虚拟存储器20中的文件分配表***格式85。此外,电子设备10可以包括统一可扩展固件接口***驱动程序36,以创建虚拟存储器20。
本文中描述的各种示例可以包括硬件和软件元素两者。以软件实现的示例可以包括固件、驻留软件、微代码等。其他示例可以包括计算机程序产品,该计算机程序产品被配置成包括预配置的指令集,当执行该指令集时,可以导致如结合以上描述的方法陈述的动作。在示例中,预配置的指令集可以被存储在包含软件代码的有形的非暂时性计算机可读介质或程序存储设备上。在软件实施例中,可以通过链接到电子或计算设备10的处理器25来将指令提供给电子设备10,该电子设备10在示例中可以是计算设备。
参考图1到图7,图8是包括如上面描述的处理器25和机器可读存储介质90的电子或计算设备10的框图。处理器25可以包括中央处理单元、微处理器和/或适用于取回和执行存储在机器可读存储介质90中的指令的其他硬件设备。处理器25可以取出、解码和执行计算机可执行指令80a、80b、80c、80d和80e,以使得能够执行本地托管或远程托管的应用,以用于控制电子或计算设备10的动作。例如,远程托管的应用可以是在远程定位的设备上可访问的。作为取回和执行指令的替代或除了取回和执行指令之外,处理器25可以包括电子电路,该电子电路包括用于执行指令80a、80b、80c、80d或80e的功能的多个电子组件。
机器可读存储介质90可以是存储可执行指令的任何电子、磁性、光学或其他物理存储设备。因此,机器可读存储介质90可以是例如只读存储器ROM、电可擦除可编程只读存储器EEPROM、存储驱动器、光盘以及诸如此类。在一个示例中,机器可读存储介质90可以包括非暂时性计算机可读存储介质。机器可读存储介质90可以被编码有可执行指令,以用于使得能够执行在远程定位的设备上访问的远程托管应用。
在示例中,处理器25执行计算机可读指令80。例如,由驱动程序35执行的计算机可执行创建指令80a可以在计算设备10的易失性存储器15中创建虚拟存储设备20。由驱动程序35执行的计算机可执行安装指令80b可以安装用于加载虚拟存储设备20中的操作***引导序列30的指令。由驱动程序35执行的计算机可执行创建指令80c可以在虚拟存储设备20中创建***分区70。由易失性存储器15执行的计算机可执行保存指令80d可以将操作***文件49保存到***分区70中。由处理器25执行的计算机可执行加载指令80e可以通过运行来自虚拟存储设备20的操作***文件49来加载操作***。
由上面描述的示例提供的技术解决了关于需要本地非易失性存储介质的问题,所述非易失性存储介质诸如硬盘驱动器、压缩盘CD驱动器和/或数字视频盘DVD驱动器、USB闪存驱动器等,以便引导OS,诸如电子设备10上的Windows® OS,所述电子设备10诸如计算机***。在预引导(例如UEFI等阶段)期间,在电子设备10的主易失性存储器15中创建模拟真实的非易失性物理设备60的虚拟存储器20,并且然后,可以通过通信网络获取OS映像。OS引导加载器被调用/处理以引导OS。
在示例中,在预引导阶段期间,可以被利用的电子设备10外部的唯一依赖性是网络连接。参考图1到图8,图9图示了通过通信网络95接收指令并且链接到诸如网络服务器或云服务之类的外部设备62的电子设备10。外部设备62可以传输所有必需的文件49,以在电子设备10的易失性存储器15中设置和运行引导序列30,并提供新的或新近的(fresh)OS安装,包括用于电子设备10的设备驱动程序和适当配置的应用。
根据一些示例,上面描述的技术可以通过消除与计算机***一起运送(ship)物理OS和驱动程序介质(诸如例如OS和驱动程序DVD)的需要来降低成本。此外,对OS进行重新映像的过程可能依赖于上面描述的技术,以直接通过通信网络下载和部署所有必需的OS文件。在一些情况下,用户可以呼叫计算机制造商的支持单位,以便接收USB设备或CD/DVD来对用户的计算机***进行重新映像。因此,使用上面描述的技术,将CD/DVD与用于不具有CD和/或DVD驱动器的计算机***的OS和驱动程序一起运送给用户不是必需的。
上面描述的技术还允许简化的过程,使得在对计算机***进行重新映像时,从计算机制造商和/或经销商联网服务器下载最新的OS和驱动程序位。这样,由上面在本文中描述的示例提供的过程不依赖于本地恢复分区上可用的任何较旧的数据,所述数据通常包含从***从工厂被运送之日起的数据。
此外,用户可能丢失他们的恢复介质,覆盖本地恢复分区,或甚至更换***盘。利用由上面描述的示例提供的解决方案,容易地访问***重新映像,或甚至可以使用自动/预定的(scheduled)预设过程来访问***重新映像。此外,上面描述的示例还可以促进信息亭使用应用。每次计算机***引导时,它都可以从中央服务器取回OS映像以及预安装的应用。这可以降低关于维护和更新通常散布在各种地方中的***的成本。
已经参考前述示例性实现示出和描述了本公开。尽管本文中已经图示和描述了具体示例,但是显然旨在使所要求保护的主题的范围仅由下面的权利要求及其等同物限制。然而,要理解,在不脱离下面的权利要求中所限定的本公开的精神和范围的情况下,可以做出其他形式、细节和示例。

Claims (15)

1.一种电子设备,包括:
易失性存储器,用于存储虚拟存储设备;以及
处理器,用于:
在虚拟存储设备中生成操作***引导序列;
使用固件接口***驱动程序来创建设备路径,所述设备路径包括易失性存储器中包含虚拟存储设备的位置;
将计算机操作***文件保存在虚拟存储设备中;以及
通过处理来自虚拟存储设备的计算机操作***文件来加载操作***引导序列。
2.根据权利要求1所述的电子设备,其中,所述处理器用于在虚拟存储设备中创建全局唯一标识符分区表。
3.根据权利要求1所述的电子设备,其中,所述处理器用于创建到虚拟存储设备的设备路径,所述设备路径模拟到非易失性存储设备的设备路径。
4.根据权利要求1所述的电子设备,其中,所述处理器用于在虚拟存储设备中安装块输入/输出和磁盘输入/输出协议。
5.根据权利要求1所述的电子设备,其中,所述接口***驱动程序包括统一可扩展固件接口***驱动程序。
6.一种易失性存储设备,包括:
虚拟存储器,用于模拟由非易失性存储设备提供的计算机操作***引导序列,所述非易失性存储器包括用于标识虚拟存储器的名称空间的设备路径;
在虚拟存储器中的全局唯一标识符分区表;
在虚拟存储器中并与分区表对接的统一可扩展固件接口***分区;
存储在***分区中的操作***文件;以及
计算机可执行指令,用于基于操作***文件来加载虚拟存储器中的计算机操作***引导序列。
7.根据权利要求6所述的电子设备,包括虚拟存储器中的块输入/输出和磁盘输入/输出协议。
8.根据权利要求6所述的电子设备,其中,所述***分区被格式化为虚拟存储器中的文件分配表***格式。
9.根据权利要求6所述的电子设备,包括用于创建虚拟存储器的统一可扩展固件接口***驱动程序。
10.一种包括指令的非暂时性计算机可读介质,所述指令在被执行时使计算设备的处理器用于:
在计算设备的易失性存储器中创建虚拟存储设备;
安装用于加载虚拟存储设备中的操作***引导序列的指令;
在虚拟存储设备中创建***分区;
将操作***文件保存到***分区中;以及
通过运行来自虚拟存储设备的操作***文件来加载操作***。
11.根据权利要求10所述的非暂时性计算机可读介质,其中,所述处理器用于在虚拟存储设备中创建全局唯一标识符分区表。
12.根据权利要求10所述的非暂时性计算机可读介质,其中,所述处理器用于创建到虚拟存储设备的设备路径,所述设备路径模拟到非易失性存储设备的设备路径。
13.根据权利要求10所述的非暂时性计算机可读介质,其中,所述处理器用于在虚拟存储设备中安装块输入/输出和磁盘输入/输出协议。
14.根据权利要求10所述的非暂时性计算机可读介质,其中,接口***驱动程序包括统一可扩展固件接口***驱动程序,并且其中,所述处理器用于将***分区格式化为文件分配表***格式。
15.根据权利要求10所述的非暂时性计算机可读介质,其中,所述处理器用于使用统一可扩展固件接口***驱动程序来创建虚拟存储设备。
CN201780097650.4A 2017-12-14 2017-12-14 用于加载操作***的虚拟存储器 Active CN111433747B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2017/066281 WO2019117905A1 (en) 2017-12-14 2017-12-14 Virtual memories to load operating systems

Publications (2)

Publication Number Publication Date
CN111433747A true CN111433747A (zh) 2020-07-17
CN111433747B CN111433747B (zh) 2024-04-16

Family

ID=66820513

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780097650.4A Active CN111433747B (zh) 2017-12-14 2017-12-14 用于加载操作***的虚拟存储器

Country Status (4)

Country Link
US (1) US11175860B2 (zh)
EP (1) EP3724767A4 (zh)
CN (1) CN111433747B (zh)
WO (1) WO2019117905A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11995188B2 (en) * 2019-07-25 2024-05-28 Dell Products L.P. Method for faster and safe data backup using GPT remote access boot signatures to securely expose GPT partitions to cloud during OS crash
US11334364B2 (en) * 2019-12-16 2022-05-17 Microsoft Technology Licensing, Llc Layered composite boot device and file system for operating system booting in file system virtualization environments
DE112021001313T5 (de) * 2020-02-28 2022-12-15 Nebulon, Inc. Automatische population von boot-volumes über bereitgestellte url
US11269614B2 (en) * 2020-03-10 2022-03-08 Dell Products, L.P. Transfer of firmware updates using an in-band interface

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040158828A1 (en) * 2003-02-06 2004-08-12 Zimmer Vincent J. Method and system for allocating memory during system boot to reduce operating system memory resource consumption at run-time
US20040199758A1 (en) * 2003-04-03 2004-10-07 Roy Meaney Information handling system manufacture method and system
US20060020779A1 (en) * 2004-06-17 2006-01-26 Rothman Michael A Establishing a virtual drive accessible to pre-boot and operating system runtime phases
US20090259836A1 (en) * 2006-08-23 2009-10-15 Kam Fu Chan Running operating system on dynamic virtual memory
US20100037041A1 (en) * 2008-08-11 2010-02-11 Vmware, Inc. Booting a Computer System from Central Storage
CN106708474A (zh) * 2016-12-12 2017-05-24 中国航空工业集团公司西安航空计算技术研究所 一种基于dimt架构的统一染色阵列记分板实现架构
CN106796507A (zh) * 2014-09-18 2017-05-31 英特尔公司 无需内容转换支持计算设备中的多操作***环境
CN108133452A (zh) * 2017-12-06 2018-06-08 中国航空工业集团公司西安航空计算技术研究所 一种统一染色器阵列的指令发射处理电路
CN108182082A (zh) * 2017-12-06 2018-06-19 中国航空工业集团公司西安航空计算技术研究所 一种流水处理双发射处理器记分板电路
CN111026444A (zh) * 2019-11-21 2020-04-17 中国航空工业集团公司西安航空计算技术研究所 一种gpu并行阵列simt指令处理模型

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6098158A (en) 1997-12-18 2000-08-01 International Business Machines Corporation Software-enabled fast boot
US7318149B2 (en) 2001-09-28 2008-01-08 Hewlett-Packard Development Company, L.P. Semi-persistent relocatable ram-based virtual floppy disk method
US7583457B2 (en) * 2004-03-22 2009-09-01 Microsoft Corporation RAM disk boot of optical media image
US8521950B2 (en) 2006-12-05 2013-08-27 International Business Machines Corporation Booting an operating system from a virtual hard disk
US8082400B1 (en) 2008-02-26 2011-12-20 Hewlett-Packard Development Company, L.P. Partitioning a memory pool among plural computing nodes
US8819708B2 (en) * 2011-01-10 2014-08-26 Dell Products, Lp System and method to abstract hardware routing via a correlatable identifier
JP5290446B2 (ja) * 2012-02-28 2013-09-18 株式会社シー・オー・コンヴ ネットワークブートシステム

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040158828A1 (en) * 2003-02-06 2004-08-12 Zimmer Vincent J. Method and system for allocating memory during system boot to reduce operating system memory resource consumption at run-time
US20040199758A1 (en) * 2003-04-03 2004-10-07 Roy Meaney Information handling system manufacture method and system
US20060020779A1 (en) * 2004-06-17 2006-01-26 Rothman Michael A Establishing a virtual drive accessible to pre-boot and operating system runtime phases
US20090259836A1 (en) * 2006-08-23 2009-10-15 Kam Fu Chan Running operating system on dynamic virtual memory
US20100037041A1 (en) * 2008-08-11 2010-02-11 Vmware, Inc. Booting a Computer System from Central Storage
CN106796507A (zh) * 2014-09-18 2017-05-31 英特尔公司 无需内容转换支持计算设备中的多操作***环境
CN106708474A (zh) * 2016-12-12 2017-05-24 中国航空工业集团公司西安航空计算技术研究所 一种基于dimt架构的统一染色阵列记分板实现架构
CN108133452A (zh) * 2017-12-06 2018-06-08 中国航空工业集团公司西安航空计算技术研究所 一种统一染色器阵列的指令发射处理电路
CN108182082A (zh) * 2017-12-06 2018-06-19 中国航空工业集团公司西安航空计算技术研究所 一种流水处理双发射处理器记分板电路
CN111026444A (zh) * 2019-11-21 2020-04-17 中国航空工业集团公司西安航空计算技术研究所 一种gpu并行阵列simt指令处理模型

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
高原;张尧学;周悦芝;: "TVSDM:一种支持透明计算的虚拟存储设备驱动模型", 清华大学学报(自然科学版), no. 07, 15 July 2013 (2013-07-15), pages 1064 - 1068 *

Also Published As

Publication number Publication date
WO2019117905A1 (en) 2019-06-20
US20200301616A1 (en) 2020-09-24
CN111433747B (zh) 2024-04-16
US11175860B2 (en) 2021-11-16
EP3724767A1 (en) 2020-10-21
EP3724767A4 (en) 2021-07-21

Similar Documents

Publication Publication Date Title
US9507604B2 (en) Boot method and boot system
CN111433747B (zh) 用于加载操作***的虚拟存储器
EP3518099B1 (en) Installation of operating system
US8560822B1 (en) Pre-boot operating environment
US10810017B2 (en) Systems and methods for handling firmware driver dependencies in host operating systems while applying updates from bootable image file
US10747523B2 (en) Methods of updating firmware components, computer systems and memory apparatus
US20150242201A1 (en) Method for updating firmware and electronic device thereof
CN107463388B (zh) 一种uefi无盘启动方法
US10127050B2 (en) Efficient booting system
JP7454011B2 (ja) 複数のバイナリイメージのファームウェア公開方法および電子デバイス
CN113760306B (zh) 安装软件的方法、装置、电子设备及存储介质
CN115291946A (zh) 鸿蒙***移植方法、装置、电子设备及可读介质
US20160048389A1 (en) System and method for supporting part replacement
US9852028B2 (en) Managing a computing system crash
CN114072765B (zh) 用于基于容器的虚拟化***的方法
US20150212866A1 (en) Management system for service of multiple operating environments, and methods thereof
US11675601B2 (en) Systems and methods to control software version when deploying OS application software from the boot firmware
KR101420026B1 (ko) 부팅 프로세스 중에 파일들을 로딩하기 위한 방법, 장치 및 컴퓨터 판독가능 저장 매체
JP6099106B2 (ja) 少なくとも一つのデータキャリアを提供するための方法、コンピュータシステム、および、メモリデバイス
US11500646B1 (en) Tracking heterogeneous operating system installation status during a manufacturing process
US20240053992A1 (en) Systems and Methods for Automated Operating System Migration
CN110197067B (zh) 文件查杀方法、装置及存储介质
CN111936969A (zh) 用于将操作***存储在计算机可读介质上的bios代码
CN106445474A (zh) 启动加载程序图形化的方法

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
GR01 Patent grant
GR01 Patent grant