KR101484358B1 - 가상화 서버 플랫폼상에 부팅가능한 가상 스토리지 어플라이언스를 부팅하기 위한 시스템들 및 방법들 - Google Patents

가상화 서버 플랫폼상에 부팅가능한 가상 스토리지 어플라이언스를 부팅하기 위한 시스템들 및 방법들 Download PDF

Info

Publication number
KR101484358B1
KR101484358B1 KR20117003477A KR20117003477A KR101484358B1 KR 101484358 B1 KR101484358 B1 KR 101484358B1 KR 20117003477 A KR20117003477 A KR 20117003477A KR 20117003477 A KR20117003477 A KR 20117003477A KR 101484358 B1 KR101484358 B1 KR 101484358B1
Authority
KR
South Korea
Prior art keywords
boot
server platform
virtual storage
storage appliance
disk
Prior art date
Application number
KR20117003477A
Other languages
English (en)
Other versions
KR20110053427A (ko
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 엘에스아이 코포레이션
Publication of KR20110053427A publication Critical patent/KR20110053427A/ko
Application granted granted Critical
Publication of KR101484358B1 publication Critical patent/KR101484358B1/ko

Links

Images

Classifications

    • 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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • 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/22Microcontrol or microprogram arrangements
    • G06F9/24Loading of the microprogram
    • 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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45575Starting, stopping, suspending or resuming virtual machine instances

Landscapes

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

Abstract

일 실시예는 부팅가능한 가상 스토리지 어플라이언스를 가상화 서버 플랫폼상에 부팅하는 방법이다. 하나의 이러한 방법은: 서버 플랫폼상에 가상 스토리지 어플라이언스를 제공하는 단계로서, 상기 가상 스토리지 어플라이언스는 복수의 디스크들을 포함하는 디스크 어레이를 관리하도록 구성되고, 디스크들 중 적어도 하나는 부트 콘솔을 구비하는 히든 부트 파티션을 포함하는, 상기 제공 단계; 서버 플랫폼의 전원을 켜는 단계; 서버 플랫폼상에 부트 코드를 로딩하는 단계; 히든 부트 파티션으로부터 부트 콘솔을 로딩하는 단계; 및 부트 콘솔이 가상화 환경에 대한 부트 구성요소들을 로딩하는 단계를 포함한다.

Description

가상화 서버 플랫폼상에 부팅가능한 가상 스토리지 어플라이언스를 부팅하기 위한 시스템들 및 방법들{SYSTEMS AND METHODS FOR BOOTING A BOOTABLE VIRTUAL STORAGE APPLIANCE ON A VIRTUALIZED SERVER PLATFORM}
본 출원은 "Method to Install and Boot a Virtual Appliance that Owns Boot Devices"란 명칭으로 2008년 7월 16일 출원되었으며 그대로 인용참증으로서 본 명세서에 포함된 미합중국 임시 특허 출원 제 61/135,231 호의 우선권을 주장한다.
본 발명은 일반적으로 컴퓨터 데이터 스토리지(computer data storage)에 관한 것으로, 특히, 가상 스토리지 어플라이언스들(virtual storage appliances)과 서버 플랫폼(server platform)상의 가상 기계 모니터(virtual machine monitor : VMM) 환경에 관한 것이다.
비지니스 환경에서 사용하기 위한 컴퓨터 네트워크들은 계속하여 보다 많은 스토리지를 요구한다. 전형적으로, 이러한 기업들은 중앙집중 데이터 스토리지 시스템(a centralized data storage system)을 활용하고, 컴퓨터 네트워크는 네트워크를 통하여 데이터 스토리지 시스템과 통신하는 다양한 퍼스널 컴퓨터들, 랩탑들 등을 포함한다. 데이터 스토리지 시스템은 전형적으로 하드 디스크 드라이브들, 자기 또는 광 디스크들, 및/또는 스토리지 영역 네트워크(storage area network : SAN)와 같은 전용 데이터 스토리지 자원들에 정보를 저장하고 그로부터 정보를 검색하는 것을 제어하는 서버 플랫폼(server platform)을 포함한다. 서버 플랫폼은 전형적으로 물리적 디스크 드라이브들을 관리하고 논리 유닛들로서 서버 플랫폼에 이들을 제공하는 스토리지 제어기(storage controller)를 포함한다.
하나의 솔루션에서, 스토리지 제어기는 Redundant Array of Independnt Disks(RAID) 표준의 하드웨어 구현을 포함한다. RAID는 스토리지 디바이스들을 리던던시를 위한 배열들로 정렬하는 기법을 통해 보다 저가의 구성요소들로부터 스토리지 신뢰성을 제공하는 스토리지 솔루션(storage solution)이다. 일반적으로, 하드웨어 RAID 구현은 다중 스토리지 디바이스들 중의 데이터를 나누고 복사하는 전용 하드웨어를 활용하지만, 배열은 하나의 단일 디스크로서 서버 플랫폼에 의해 보여진다. 비록 이러한 구현이 저가의 옵션을 제공한다고 하더라도, 솔루션은 여전히 소정의 상황들에 있어서 바람직하지 않게 비쌀 수 있는 전용 하드웨어의 사용을 요구한다.
프로세싱 전력이 증가함에 따라서, 전용 하드웨어보다는 소프트웨어로 스토리지 제어기를 구현하는 것이 보다 일반적이 되었다. 예를 들어, 현재 RAID 로직이 서버 플랫폼의 운영 체제의 일부인 다수의 소프트웨어 RAID 구현들이 있다. 이들 솔루션들은 전반적인 비용과 특정 하드웨어 플랫폼에 대한 의존성을 상당히 감소시킬 수 있다. 그러나, 소프트웨어 구현들은 서버 플랫폼이 가상화를 통해 다중 실행 환경들(예를 들어, 다중 에뮬레이팅된 운영 체제들)을 또한 지원하는 상황들에서 상당한 결점을 가진다.
소프트웨어 RAID 구현들의 다른 중요한 한계는 이들 구현들이 각각의 지원된 운영 체제에 대해 구성될 필요가 있다는 것이며, 이는 추가적인 비용이 있을 수 있으며 개발, 디버깅, 및 배치에 불편할 수도 있다. 리눅스(Linux)의 파생상품들과 같은 몇몇 경우들에 있어서, 오픈 소스 라이센스들(예를 들어, GNU General Public License 등)의 조건들에 기초한 소스 코스 코드의 공개에 관련된 보다 복잡문제들이 있을 수 있다. 이들 오픈 소스 응낙 문제들은 이러한 운영 체체들에 대해 추가적인 비용과 소프트웨어 RAID 구현의 불편을 더할 수 있다.
가상화 기술은 가상 기계 모니터(virtual machine monitor : VMM)를 구동하는 단일 호스트 컴퓨터(single host computer)가 호스트의 다중 추상적 개념들 또는 뷰들(views)을 제공할 수 있도록 하여, 근원적인 호스트 하드웨어가 하나 이상의 독립적으로 동작하는 가상 기계들(VMs)로서 보이게 된다. VMM은 호스트 컴퓨터로 하여금 다중 실행 환경들을 지원하도록 하는 호스트 프로그램(host program)을 포함한다. 각각의 VM은 자신의 펌웨어, 운영 체제, 및/또는 소프트웨어 애플리케이션들을 구동하는 자체-포함 플랫폼(self-contained platform)으로서 기능할 수 있다. VMM은 VM들에 대한 호스트 자원들의 할당과 가상화를 관리한다.
VMM 환경에서 가상 스토리지 어플라이언스로서 소프트웨어 RAID 또는 다른 소프트웨어 스토리지 제어기들을 결합할 때, 의미있는 구성 도전(meaningful configuration challenge)이 존재한다. 예를 들어, VMM 환경에서 가상 스토리지 어플라이언스들을 인스톨 및/또는 부팅시 포함된 여러 복잡한 문제들이 존재한다. 부팅하기 위해, 가상 스토리지 어플라이언스는 플랫폼상에 존재할 것이 요구된다. 비록 각각이 다르다고 하더라도, 많은 이용가능한 VMM 환경들이 존재한다. 기존의 솔루션들은 각각의 VMM 환경에 대해 독립적으로 설계되어야 하며, 플랫폼은 사용될 특별한 VMM 환경을 위해 사전구성되어야 하고, 이는 의미있는 로지스틱 챌린지들을 생성한다. 예를 들어, 어떠한 가상화없이 단지 약간의 모듈들을 탑재한 시스템(예를 들어, BIOS, EFI)을 가지고 표준 운영 체제를 부팅하는 것은 매우 단순하다. 전형적으로, 이러한 시나리오에 있어서, 부트 로더(boot loader)와 구동기(driver)는 O/S 로더가 프로세스를 떠맡아 제어하기에 앞서 로딩될 수 있다. 그러나, VMM 환경에서, 시스템이 VMM 환경들, 호스트 운영 체제들, 및 가상 스토리지 어플라이언스(및 스토리지 제어 로직을 동반하는) 모두가 부트 로드로부터 로딩되어야 하기 때문에 이러한 프로세스는 상당히 더 복잡하다. 이들 구성요소들 모두를 로딩하는 것은 10-100MB, 또는 그 이상 만큼을 갖는 이미지(image)를 요구할 수 있다. 더욱이, 부트 디바이스는 전형적으로 RAID 볼륨(RAID volulme)이며, 따라서, RAID 엔진이 운영 체제내에 존재하면, RAID 기능은 RAID 엔진을 로딩하도록 요구되며, 이것은 부담이 되는 회귀 자기-참조(burdensome recursive self-references)를 포함할 수 있다.
이러한 문제를 다루기 위한 기존의 솔루션은 부트 코드내 RAID 로더를 이용하는 것을 포함한다. 그러나, 이것은 또 다른 RAID 스택을 생성하기 위한 비용을 야기하며, 자체 복잡함을 갖는다. 비록 큰 제조업체들이 EFI/BIOS에서 RAID 스택에 권한을 부여하고 유지할 수 있다고 하더라도, 많은 고객들은 그렇게 할 수 없거나 하려하지 않을 것이다. 이러한 문제를 다루기 위해 시도한 다른 솔루션은 서버 플랫폼의 비휘발성 메모리에 전체 VMM 환경을 제공하는 것을 포함한다. 이것은 또한 또 다른 일련의 챌린지들을 도입한다. 예를 들어, VMM 환경을 위한 코드의 사이즈가 문제가 될 수 있다. 더욱이, 전체의 VMM 환경이 서버 플랫폼의 비휘발성 메모리에 제공될 때 VMM 환경의 배포 및/또는 유지보수와 연계된 상당한 비지니스 챌린지들이 존재한다.
VMM 환경에서 가상 스토리지 어플라이언스를 결합하는데 있어서 많은 장점들에도 불구하고, 표준 서버 플랫폼에서 가상 스토리지 어플라이언스를 인스톨 및/또는 부팅하기 위한 보다 비용-효과적인 솔루션들 및 시스템들 및 방법들에 대한 기술적 필요가 존재하며, 표준 서버 플랫폼은 특별한 VMM 환경에 독립적이며 플랫폼을 사전구성하기 위한 필요성을 제거할 수 있다.
가상화 서버 플랫폼상의 가상 스토리지 어플라이언스를 인스톨 및/또는 부팅하기 위한 시스템들, 방법들, 컴퓨터 시스템들, 및 컴퓨터 프로그램들의 다양한 실시예들이 개시된다. 일 실시예는 부팅가능한 가상 스토리지 어플라이언스를 가상화 서버 플랫폼상에 부팅하는 방법이다. 하나의 이러한 방법은: 서버 플랫폼상에 가상 스토리지 어플라이언스를 제공하는 단계로서, 상기 가상 스토리지 어플라이언스는 복수의 디스크들을 포함하는 디스크 어레이를 관리하도록 구성되고, 디스크들 중 적어도 하나는 부트 콘솔을 구비하는 히든 부트 파티션(hidden boot partition)을 포함하는, 상기 제공 단계; 서버 플랫폼의 전원을 켜는 단계; 서버 플랫폼상에 부트 코드를 로딩하는 단계; 히든 부트 파티션으로부터 부트 콘솔을 로딩하는 단계; 및 부트 콘솔이 가상화 환경에 대한 부트 구성요소들을 로딩하는 단계를 포함한다.
본 발명은 보다 비용 효과적인 솔루션들 및 표준 서버 플랫폼에서 가상 스토리지 어플라이언스를 인스톨 및/또는 부팅하기 위한 시스템들 및 방법들을 제공한다.
도 1은 가상 스토리지 어플라이언스가 인스톨될 수 있는 서버 플랫폼의 실시예를 예시하는 블록도.
도 2는 도 1의 서버 플랫폼상에 가상 스토리지 어플라이언스를 인스톨하기 위해 사용될 수 있는 IOVM 설치 패키지의 실시예를 예시하는 블록도.
도 3은 도 2의 IOVM 설치 패키지를 매개로하여 도 1의 상기 서버 플랫폼상에 가상 스토리지 어플라이언스를 설치하기 위한 방법의 실시예를 예시하는 흐름도.
도 4 내지 도 11은 가상 스토리지 어플라이언스의 설치동안 서버 플랫폼의 동작을 예시하는 도면.
도 12는 가상 스토리지 어플라이언스가 설치된 서버 플랫폼의 실시예의 블록도.
도 13은 도 12의 가상 스토리지 어플라이언스를 부팅하기 위한 방법의 실시예를 예시하는 흐름도.
도 14 및 도 15는 도 12의 부팅 프로세스동안 서버 플랫폼의 동작을 예시하는 도면.
서버 플랫폼상에 가상 스토리지 어플라이언스를 설치하고/하거나 부팅하기 위한 시스템들, 방법들, 및 컴퓨터 프로그램들의 다양한 실시예들이 개시된다. 소개로서 그리고 가상 스토리지 어플라이언스 및 서버 플랫폼 동작에 있어서 작동 환경을 예시하기 위해, 도 1은 예시적인 컴퓨터 시스템(exemplary computer system)(100)을 예시한다. 컴퓨터 시스템(100)은 가상 스토리지 어플라이언스가 설치되고/되거나 부팅될 수 있는 서버 플랫폼(server platform)(102)을 포함한다. 실시예에서, 서버 플랫폼(102)은 하나 이상의 프로세서(들)(106), 메모리(108), 및 부트 코드(112)를 포함하는 비휘발성 메모리(110)를 포함하는 하드웨어(104)를 갖는 표준, 오프-더-쉘프 서버 플랫폼(standard, off-the-shelf server platform)을 포함한다. 프로세서(들)(106), 메모리(108), 비휘발성 메모리(110), 및 부트 코드(112)가 서버 플랫폼(102)상에 사전구성될 수 있으며 이하 기술된 설치 및 부팅 프로세스를 수행하기 위해 사용될 수도 있다는 것을 이해하여야 한다. 따라서, 도 1에서 다른 예시된 구성요소들은 도 2 내지 도 15를 참조하여 이하 기술된 설치 및 부트 프로세스에 따라서 서버 플랫폼(102)에 의해 로딩되는 구성요소들을 나타낸다는 것이 더 이해되어야 한다.
부트 코드(112)는 하드웨어(104)를 구성하고 운영 체제 부트 절차를 개시하기 위해 서버 플랫폼(102)에 의해 사용된 코드를 포함한다. 실시예에서, 부트 코드(112)는, 예를 들어, BIOS 환경, EFI 환경, 또는 다른 부트 환경을 로딩하기 위해 구성될 수 있다.
가상 기계 모니터(114)는 가상 기계 환경으로부터 하드웨어(104)를 격리하기 위해 사용되는 하이퍼바이저(hypervisor) 또는 얇은 소프트웨어 층(a thin software layer)을 포함한다. VMM(114)은 독립적인 운영 체제들(예를 들어, OS 116a, 116b, 116c)과 특별한 목적의 가상 기계(즉, I/O 가상 기계(118))과 연계된 하나 이상의 서비스 가상 기계들의 실행을 제어한다. 이하 보다 상세히 기술된 바와 같이, IOVM(118)은 복수의 물리적 디스크들(124)을 포함하는 디스크 어레이(122)와 연계된 I/O를 처리하도록 구성된 전용 가상 기계(dedicated virtual machine)을 포함한다. IOVM(118)은 디스크 어레이(122)로부터 데이터를 저장하고 검색하도록 구성된 스토리지 제어기(120)를 포함한다. 프로세서(들)(106)는 VMM(114), IOVM(118), O/S 116a-c, 및 기타 다른 소프트웨어 및/또는 펌웨어를 지원하기 위한 프로세싱을 포함하는 서버 플랫폼(102)과 연계된 프로세싱 동작들을 수행한다.
서버 플랫폼(102)과 IOVM(118)의 일반적인 동작 환경이 기술되었지만, 시스템들과 방법들의 다양한 실시예들이 도 3 내지 도 11을 참조하여 서버 플랫폼(102)상에 IOVM(118)을 설치하기 위해 기술될 것이다. 도 3은 서버 플랫폼(102)상에 IOVM(118)을 설치하기 위한 방법(300)의 실시예를 예시한다. 도 4 내지 도 11은 컴퓨터 시스템(100)의 구성요소들을 참조하여 프리-부트 프로세스(a pre-boot process)로서 설치 프로세스를 예시한다. 방법(300)과 연계된 하나 이상의 프로세스 또는 방법 설명들이 처리 과정에 있어서 논리적인 기능들 또는 단계들을 구현하기 위해 하나 이상의 실행가능한 명령들을 포함하는 모듈들, 세그먼트들, 로직 또는 코드의 일부들을 나타낼 수 있다는 것이 이해되어야 한다. 논리적 기능들은 소프트웨어, 하드웨어, 펌웨어, 또는 기타 이들의 조합으로 구현될 수도 있다는 것이 더 이해되어야 한다. 소정의 실시예들에 있어서, 도 3의 흐름도를 참조하여 기술된 논리적 기능들과 도 4 내지 도 11의 시스템 블록도들은 메모리(108) 또는 비휘발성 메모리(110)에 저장되고 서버 플랫폼(102)과 연계된 어떠한 다른 프로세서(들) 또는 적절한 명령 실행 시스템에 의해 실행되는 소프트웨어 또는 펌웨어로 구현될 수도 있다. 더욱이, 논리적 기능들은 명령 실행 시스템, 장치, 또는 컴퓨터-기반 시스템, 프로세서-포함 시스템과 같은 디바이스, 또는 명령 실행 시스템, 장치, 또는 디바이스로부터 명령들을 불러내어 명령들을 실행할 수 있는 서버 플랫폼(102)과 연계된 다른 시스템에 의해 또는 조합하여 사용하기 위한 어떠한 컴퓨터 판독가능 매체에서 구현될 수도 있다.
도 3을 참조하면, 서버 플랫폼(102)(블록 302)과 IOVM 설치 패키지(200)(블록 304)가 제공된다. 실시예에서, 서버 플랫폼(102)은 VMM 또는 IOVM(118)과 연계된 어떠한 특별한 구성요소들을 갖지 않는 표준 서버(예를 들어, OEM 서버)를 포함할 수 있다. 도 2에 예시된 바와 같이, 실시예에서, IOVM 설치 패키지(200)는, 예를 들어, 설치 스크립트(202), IOVM 부트 콘솔(204), IOVM 관리 모듈(206), 및 VMM(208)과 같은 IOVM(118)을 설치하는 것과 연계된 다양한 구성요소들을 포함한다. 설치 패키지(200)는 서버 플랫폼(102)에 의해 액세스가 가능한 컴팩트 디스크, 디지털 비디오 디스크, 또는 플래시 메모리 디바이스상에 제공될 수 있다. 다른 실시예들에서, 설치 패키지(200)는 서버 플랫폼(102)(예를 들어, 메모리(108), 비휘발성 메모리(110) 등)에 내부적인 구성요소로서 제공될 수도 있다. 설치 패키지(200)의 구성요소들은 원하는 설치 구현에 따라서 하나 이상의 패키지들내에 제공될 수도 있다는 것이 이해되어야 한다. 예를 들어, 설치 스크립트(202), IOVM 부트 콘솔(204), 및 IOVM 관리 모듈(206)이 하나의 설치 패키지내에 제공될 수 있으며, 및 VMM(208)은 표준, 오프-더-쉘프 VMM 설치 패키지로서 제공될 수 있다.
이와 관련하여, 설치 패키지(200)와 설치 방법(300)은 다양한 잇점들을 갖는 설치 체계를 제공할 수 있다는 것이 더 이해되어야 한다. 설치 체계는 어떠한 원하는 현재 또는 미래의 가상화 환경들 및/또는 VMM들(208)과 함께 작업하도록 설계될 수도 있다. O/S 특정 설치 절차들은 제거된다. 또한, 설치 체계는 표준화된 서버 플랫폼에 적용가능할 수 있다.
블록(306)에서, 서버 플랫폼(102)의 전원이 켜진다. 도 4에서 예시된 바와 같이 블록(308)에서, 전원이 켜진 후, 비휘발성 메모리(110)로부터의 부트 코드(112)가 로딩된다. 부트 코드(112)는, 예를 들어, BIOS 환경, EFI 환경, 또는 다른 부트 환경을 로딩하도록 구성될 수도 있다. 부트 환경은 서버 플랫폼(102)상의 스토리지 제어기(120)와 호환가능한 표준 스토리지 구동기(210)를 포함할 수 있다. 실시예에서, 스토리지 구동기(210)는 SAS 구동기를 포함할 수 있고, 스토리지 제어기(120)는 SAS 제어기를 포함할 수 있다. 그러나, 당업자는 다른 제어기들과 구동기들이 다른 데이터 전송 기술들, 표준들, 및/또는 인터페이스들을 구현하기 위해 사용될 수도 있다는 것을 이해할 것이다.
블록(310)(도 5)에서, IOVM 설치 패키지(200)는 부트 코드(112)의 상부에서 구동하기 위해 로딩된다. 도 6에 예시된 바와 같이, 블록들(312, 314)에서, 설치 스크립트(202)가 실행되고, 부트 파티션이 부트 디스크상에 생성된다. 도 6의 실시예에서, 부트 디스크는 디스크 어레이(122)(즉, 물리적 디스크(124a))내 물리적 디스크들(124) 중 하나를 포함한다. 부트 파티션은 시스템으로부터 숨겨질 수 있다. 예를 들어, RAID 구현들에 있어서, 부트 파티션은 RAID 표준들에 의해 정의된 디스크 데이터 포맷(Disk Data Format : DDF) 공간내에 또는 어떠한 다른 사적인 파티션내에 숨겨질 수 있다. 블록(316)(도 7)에서, 설치 스크립트(202)는 IOVM 설치 패키지(200)로부터의 IOVM 부트 콘솔(204)와 IOVM 관리 모듈(206)을 부트 파티션(116)에 또한 복사할 수 있다. 부트 파티션(116)은 부팅가능하도록 제조될 수 있다.
블록(318)에서, 서버 플랫폼(102)은 재부팅되고, 도 8에 예시된 바와 같이, 부트 코드(112)는 비휘발성 메모리(110)(블록 320)로부터 로딩된다. 블록(322)에서(도 9), IOVM 부트 콘솔(204)과 IOVM 관리 모듈(206)은 부트 파티션(116)으로부터 서버 플랫폼(102)으로 로딩될 수 있다. 전술한 바와 같이, IOVM(118)은 전용 OS-기반 게스트 가상 기계(dedicated OS-based guest virtual machine)을 포함할 수 있다. 따라서, OS 로더(OS loader)는 부트 환경으로부터 제어를 취할 수 있고 부트 파티션(116)으로부터 IOVM 부트 콘솔(204) 및 IOVM 관리 모듈(206)을 로딩할 수 있다. 실시예에서, IOVM 부트 콘솔(204)은 표준 운영 체제를 포함할 수 있다. 따라서, IOVM 부트 콘솔(204)은 표준 절차들을 이용한 운영 체제를 부팅할 수 있다. 그러나, 컴퓨터 시스템(100)에서 IOVM 부트 콘솔(204)은 스토리지 가상화를 관리(RAID 로직을 관리)하기 위해 구성된다는 것이 이해되어야 한다.
블록(324)에서, 사용자는 디스크 어레이(122)를 구성하기 위해 IOVM 관리 모듈(206)과 인터페이스할 수 있다. 예를 들어, IOVM 관리 모듈(206)은 사용자로 하여금 원하는 바와 같이 디스크 그룹들, 가상 디스크들, 볼륨들 등을 생성할 수 있도록 구성될 수 있다. 블록(326)(도 10)에서, IOVM 부트 콘솔(204)은 디스크 어레이(122), 본 경우에 있어서 물리적 디스크들(124b, 124c)내에 모든 디스크들상에 히든 부트 파티션(116)을 생성한다. IOVM 부트 콘솔은 다른 부트 파티션들(116)내 부트 디스크(즉, 물리적 디스크 124a)의 컨텐츠를 또한 복제할 수 있다. 예를 들어, RAID 체계에 대한 필요없이 물리적 디스크들(124)의 고장 발생시 컴퓨터 시스템(100)이 작업할 수 있도록 하는 리던던시 체계(redundancy scheme)를 이러한 프로세스가 인에이블한다는 것을 이해하여야 한다. 모든 물리적 디스크들(124)상에 부트 디스크의 컨텐츠를 복제함으로써, 표준 서버 부트 프로세스가 제 1 디스크(즉, 물리적 디스크(124a))로부터 부팅될 것이다. 이러한 디스크가 실패라면, 부트 프로세스는 N-방식 리던던시 체계를 제공함으로써 제 2 디스크(즉, 물리적 디스크(124b)) 등으로부터 부팅하기를 시도할 것이다.
블록(328)(도 11)에서 IOVM 부트 콘솔(204)을 설치하고 디스크 어레이(122)를 구성하였다면, 서버 플랫폼(102)은 스토리지 구동기로서 IOVM 부트 콘솔(204)을 이용한 가상 환경(예를 들어, VMM(208))을 설치한다. 전술한 바와 같이, 서버 플랫폼(102)은 어떠한 바람직한 가상 환경을 지원할 수 있다. 가상 환경은 IOVM 설치 패키지(200)로부터 또는 표준 OEM 분배 설치 패키지로부터 직접적으로 설치될 수 있다. 가상 환경의 설치는 종래의 방식으로 계속할 수 있다.
IOVM(118)과 가상 환경이 (전술한 방식으로 또는 서버 플랫폼(102)상에 제공된 기타 방식으로)설치된 후, 서버 플랫폼(102)은 부트 방법의 시작을 개시할 수 있다. 부트 방법의 실시예는 도 12 내지 도 15에 예시된다. 도 12는 부트 방법의 동작을 예시하는 흐름도이고, 도 13 내지 도 15는 서버 플랫폼(102)과 디스크 어레이(122)의 구성요소들을 참조하여 부트 방법을 예시한다.
도 12를 참조하면, 블록(1202)에서, 가상 스토리지 어플라이언스가 디스크 어레이를 관리하기 위해 서버 플랫폼(102)상에 제공된다. 가상 스토리지 어플라이언스는 IOVM(118)에 관한 전술한 방식, 또는 다른 방식으로 컴퓨터 시스템(100)상에 구성되고 설치될 수 있다. 블록(1204)(도 13)에서, 부트 코드(112)가 로딩된다. 부트 코드(112)는, 예를 들어, BIOS 환경, EFI 환경, 또는 다른 부트 환경을 로딩하기 위해 구성될 수 있다. 부트 환경은 서버 플랫폼(102)상의 스토리지 제어기(120)와 호환가능한 표준 스토리지 구동기(210)를 포함할 수 있다. 부트 환경이 로딩되고 부트 로더를 호출할 수 있다. 블록(1206)(도 14)에서, IOVM 부트 콘솔(204)과 IOVM 관리 모듈(206)은 디스크 어레이(122)내 물리적 디스크들 중 하나에 히든 파티션으로부터 로딩된다. 결정 블록(1208)과 블록(1210)에 도시된 바와 같이, IOVM 관리 모듈(206)은 컴퓨터 시스템(100)의 사용자가 디스크 어레이(122) 및/또는 IOVM(118)의 다양한 양태들을 구성하게 하고/구성하게 하거나 관리할 수 있도록 사용될 수 있다. 블록(1212)(도 15)에서, IOVM 부트 콘솔(204)은 가상 환경을 위한 부트 구성요소들을 로딩한다. IOVM 부트 콘솔(204)은 부트 프로세스를 시작한다. IOVM 부트 콘솔(204)은 부트 디스크(예를 들어, 물리적 디스크들(124a 내지 124c) 중 하나)를 액세스하며 설치된 VMM 부트 로더를 위치시킬 수 있다. 실시예에서, VMM 부트 로더는 설치된 가상화 환경과 통합된 구성요소를 포함할 수 있다. VMM 부트 로더는 디스크 어레이(122)의 일부인 부트 볼륨상의 O/S 설치의 일부일 수 있다. IOVM 부트 콘솔(204)은 도 15에 예시된 바와 같이, VMM(208)을 부팅한 다음, 당업자에 의해 이해될 바와 같이 전형적인 방식으로 VMM 부트 로더로 제어를 넘긴다.
이러한 개시는 하나 이상의 예시적이거나 본 발명의 원리들과 개념들을 입증하기 위한 목적으로 기술된 실시예들을 참조하여 제공되었다는 것을 주목해야 한다. 본 발명은 이들 실시예들에 제한되지 않는다. 당업자에 의해 이해될 바와 같이, 본 명세서에 제공된 설명을 고려하여, 많은 변경들이 본 명세서에 기술된 실시예들에 대해 이루어질 수 있으며 모든 이러한 변경들은 본 발명의 범주내에 있다.
102 : 서버 106 : 프로세서
112 : 부트 코드 116 : 부트 파티션
118 : I/O 가상 기계 120 : 스토리지 제어기
122 : 디스크 어레이 200 : IOVM 설치 패키지
202 : 설치 스크립트 204 : IOVM 부트 콘솔
206 : IOVM 관리 208 : 가상 기계 모니터
210 : 스토리지 구동기

Claims (13)

  1. 가상화 서버 플랫폼(virtualized server platform)상에 부팅가능한 가상 스토리지 어플라이언스를 부팅하기 위한 방법에 있어서,
    서버 플랫폼상에 가상 스토리지 어플라이언스를 제공하는 단계로서, 상기 가상 스토리지 어플라이언스는 복수의 디스크들을 포함하는 디스크 어레이를 관리하도록 구성되고, 상기 디스크들 중 적어도 하나는 부트 콘솔(boot console)을 구비하는 히든 부트 파티션(hidden boot partition)을 포함하는, 상기 가상 스토리지 어플라이언스 제공 단계를 포함하고,
    상기 가상 스토리지 어플라이언스 제공 단계는:
    상기 서버 플랫폼상에 설치 패키지를 로딩하는 단계로서, 상기 설치 패키지는 가상 스토리지 어플라이언스, 부트 콘솔, 및 관리 모듈을 설치하는 설치 스크립트(installation script)를 포함하는, 상기 설치 패키지 로딩 단계;
    상기 디스크상에 상기 히든 부트 파티션을 생성하기 위해 상기 설치 스트립트를 실행시키는 단계;
    상기 부트 콘솔 및 상기 관리 모듈을 상기 히든 부트 파티션에 복사하는 단계;
    상기 서버 플랫폼에 전원을 공급하는 단계;
    상기 서버 플랫폼상에 부트 코드를 로딩하는 단계;
    상기 히든 부트 파티션으로부터 상기 부트 콘솔 및 상기 관리 모듈을 로딩하는 단계; 및
    상기 부트 콘솔을 스토리지 구동기로서 이용하여 상기 가상 스토리지 어플라이언스를 설치하는 단계;에 의해, 상기 서버 플랫폼상에 상기 가상 스토리지 어플라이언스를 설치하는 단계를 포함하는, 가상화 서버 플랫폼상에 부팅가능한 가상 스토리지 어플라이언스를 부팅하기 위한 방법.
  2. 제 1 항에 있어서,
    상기 가상 스토리지 어플라이언스는 상기 서버 플랫폼에 연계된 게스트 운영 체제를 포함하는, 가상화 서버 플랫폼상에 부팅가능한 가상 스토리지 어플라이언스를 부팅하기 위한 방법.
  3. 제 1 항에 있어서,
    상기 가상 스토리지 어플라이언스는 RAID 제어기(RAID controller)를 포함하는, 가상화 서버 플랫폼상에 부팅가능한 가상 스토리지 어플라이언스를 부팅하기 위한 방법.
  4. 제 1 항에 있어서,
    상기 가상화 환경은 상기 가상 스토리지 어플라이언스 및 상이한 운영 체계들을 실행하는 복수의 가상 기계들을 지원하는 가상 기계 모니터를 포함하는, 가상화 서버 플랫폼상에 부팅가능한 가상 스토리지 어플라이언스를 부팅하기 위한 방법.
  5. 제 1 항에 있어서,
    상기 부트 코드는 BIOS 환경 또는 EFI 환경 중 하나를 로딩하는, 가상화 서버 플랫폼상에 부팅가능한 가상 스토리지 어플라이언스를 부팅하기 위한 방법.
  6. 제 1 항에 있어서,
    상기 디스크 어레이는 하드 디스크 드라이브 어레이를 포함하는, 가상화 서버 플랫폼상에 부팅가능한 가상 스토리지 어플라이언스를 부팅하기 위한 방법.
  7. 제 1 항에 있어서,
    상기 디스크 어레이는 스토리지 영역 네트워크(storage area network)를 포함하는, 가상화 서버 플랫폼상에 부팅가능한 가상 스토리지 어플라이언스를 부팅하기 위한 방법.
  8. 제 1 항에 있어서,
    상기 디스크 어레이는 RAID 어레이(RAID array)를 포함하는, 가상화 서버 플랫폼상에 부팅가능한 가상 스토리지 어플라이언스를 부팅하기 위한 방법.
  9. 제 1 항에 있어서,
    상기 가상 스토리지 어플라이언스를 관리하는 단계를 더 포함하는, 가상화 서버 플랫폼상에 부팅가능한 가상 스토리지 어플라이언스를 부팅하기 위한 방법.
  10. 제 1 항에 있어서,
    상기 서버 플랫폼상에 가상 스토리지 어플라이언스를 설치하는 단계는:
    상기 관리 모듈을 통해 디스크 어레이를 구성하는 단계; 및
    상기 디스크 어레이의 각 디스크 상에, 히든 부트 파티션을 생성하고 상기 부트 콘솔 및 상기 관리 모듈을 복제하는 단계를 더 포함하는, 가상화 서버 플랫폼상에 부팅가능한 가상 스토리지 어플라이언스를 부팅하기 위한 방법.
  11. 제 1 항에 있어서,
    상기 설치 패키지는 컴팩트 디스크, 디지털 비디오 디스크, 및 플래시 메모리 디바이스 중 적어도 하나를 통해 상기 서버 플랫폼에 제공되는, 가상화 서버 플랫폼상에 부팅가능한 가상 스토리지 어플라이언스를 부팅하기 위한 방법.
  12. 제 1 항에 있어서,
    상기 서버 플랫폼상에 상기 가상 스토리지 어플라이언스를 설치하는 단계는 상기 서버 플랫폼을 재부팅하는 단계를 더 포함하는, 가상화 서버 플랫폼상에 부팅가능한 가상 스토리지 어플라이언스를 부팅하기 위한 방법.
  13. 제 12 항에 있어서,
    상기 서버 플랫폼을 재부팅하는 단계는:
    상기 히든 부트 파티션으로부터 상기 부트 콘솔 및 상기 관리 모듈을 상기 디스크들 중 하나에 로딩하는 단계; 및
    상기 부트 콘솔이 상기 가상화 환경을 로딩하는 단계를 포함하는, 가상화 서버 플랫폼상에 부팅가능한 가상 스토리지 어플라이언스를 부팅하기 위한 방법.
KR20117003477A 2008-07-17 2009-06-09 가상화 서버 플랫폼상에 부팅가능한 가상 스토리지 어플라이언스를 부팅하기 위한 시스템들 및 방법들 KR101484358B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13523108P 2008-07-17 2008-07-17
US61/135,231 2008-07-17
PCT/US2009/046702 WO2010008706A1 (en) 2008-07-17 2009-06-09 Systems and methods for booting a bootable virtual storage appliance on a virtualized server platform

Publications (2)

Publication Number Publication Date
KR20110053427A KR20110053427A (ko) 2011-05-23
KR101484358B1 true KR101484358B1 (ko) 2015-01-19

Family

ID=41550645

Family Applications (2)

Application Number Title Priority Date Filing Date
KR20117003477A KR101484358B1 (ko) 2008-07-17 2009-06-09 가상화 서버 플랫폼상에 부팅가능한 가상 스토리지 어플라이언스를 부팅하기 위한 시스템들 및 방법들
KR1020117000697A KR101371270B1 (ko) 2008-07-17 2009-06-09 가상화된 서버 플랫폼 상에서 부팅가능한 가상 스토리지 설비를 설치하는 시스템들 및 방법들

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020117000697A KR101371270B1 (ko) 2008-07-17 2009-06-09 가상화된 서버 플랫폼 상에서 부팅가능한 가상 스토리지 설비를 설치하는 시스템들 및 방법들

Country Status (7)

Country Link
US (2) US8539218B2 (ko)
EP (2) EP2324426A4 (ko)
JP (2) JP5404783B2 (ko)
KR (2) KR101484358B1 (ko)
CN (2) CN102132251B (ko)
TW (1) TWI428831B (ko)
WO (2) WO2010008707A1 (ko)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8332496B2 (en) * 2009-09-23 2012-12-11 International Business Machines Corporation Provisioning of operating environments on a server in a networked environment
US8677111B2 (en) * 2010-05-04 2014-03-18 Riverbed Technology, Inc. Booting devices using virtual storage arrays over wide-area networks
CN102262589B (zh) * 2010-05-31 2015-03-25 赛恩倍吉科技顾问(深圳)有限公司 实现硬盘驱动器拷贝的应用服务器及方法
US9116728B2 (en) 2010-12-21 2015-08-25 Microsoft Technology Licensing, Llc Providing a persona-based application experience
US9058107B2 (en) * 2011-03-29 2015-06-16 Os Nexus, Inc. Dynamic provisioning of a virtual storage appliance
US20120311117A1 (en) * 2011-06-01 2012-12-06 Morgan Stanley Object Pipeline-Based Virtual Infrastructure Management
US20130024856A1 (en) * 2011-07-19 2013-01-24 Nexenta Systems, Inc. Method and apparatus for flexible booting virtual storage appliances
TWI515658B (zh) 2011-12-07 2016-01-01 萬國商業機器公司 用於創建虛擬裝置之方法及系統
US20130152081A1 (en) 2011-12-13 2013-06-13 International Business Machines Corporation Selectable event reporting for highly virtualized partitioned systems
WO2013138587A1 (en) 2012-03-14 2013-09-19 Convergent .Io Technologies Inc. Systems, methods and devices for management of virtual memory systems
KR101468983B1 (ko) * 2012-07-31 2014-12-03 한국과학기술정보연구원 동적 계산 환경을 설정하기 위한 장치, 동적 계산 환경을 설정하기 위한 방법, 및 동적 계산 환경을 설정하기 위한 프로그램을 저장하는 저장매체
EP2880520A1 (en) * 2012-12-13 2015-06-10 Hitachi, Ltd. Computer realizing high-speed access and data protection of storage device, computer system, and i/o request processing method
US9959171B2 (en) 2013-03-14 2018-05-01 International Business Machines Corporation Self-healing using a virtual boot device
TWI588751B (zh) 2013-05-31 2017-06-21 聯想企業解決方案(新加坡)有限公司 透過基板管理控制器管理虛擬機器的電腦主機與方法
DK3011442T3 (da) * 2013-06-18 2021-01-04 Ciambella Ltd Fremgangsmåde og anordning til generering af et brugerdefineret softwareudviklingskit (sdk)
CN104050014B (zh) * 2014-05-23 2017-12-29 上海爱数信息技术股份有限公司 基于虚拟化平台的高效存储管理方法
CN105373415A (zh) * 2014-08-28 2016-03-02 中兴通讯股份有限公司 基于虚拟化的应用存储方法、执行方法、装置及系统
TWI645296B (zh) * 2017-10-17 2018-12-21 慧榮科技股份有限公司 資料儲存裝置以及非揮發式記憶體操作方法
US11340797B2 (en) 2019-10-04 2022-05-24 Zettaset, Inc. Dedicated encrypted container storage
US11256816B2 (en) * 2019-10-04 2022-02-22 Zettaset, Inc. Dynamic provisioning of encrypted container storage
US11079944B2 (en) 2019-10-04 2021-08-03 Zettaset, Inc. Dynamic provisioning of container storage
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
US11347520B2 (en) * 2020-02-13 2022-05-31 Dell Products L.P. Unavailable memory device initialization system
CN111949378B (zh) * 2020-08-28 2021-09-10 腾讯科技(深圳)有限公司 虚拟机启动模式切换方法和装置、存储介质及电子设备
US20230273799A1 (en) * 2022-02-28 2023-08-31 Nebulon, Inc. Storage system with boot volume rollback points

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050088067A (ko) * 2002-07-11 2005-09-01 베리타스 오퍼레이팅 코포레이션 스토리지 서비스들 및 시스템들
KR20060134211A (ko) * 2004-04-15 2006-12-27 레이던 컴퍼니 동적 부트 이미지들 및 가상 디스크를 사용하는 컴퓨터클러스터 가상화용 시스템 및 방법

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2708608B2 (ja) * 1990-05-25 1998-02-04 富士通株式会社 仮想計算機のipl処理方式
US20020103889A1 (en) * 2000-02-11 2002-08-01 Thomas Markson Virtual storage layer approach for dynamically associating computer storage with processing hosts
US6823450B2 (en) * 2001-05-11 2004-11-23 International Business Machines Corporation Mechanism for eliminating need for flash memory in software RAID
JP4330889B2 (ja) * 2003-01-20 2009-09-16 株式会社日立製作所 記憶デバイス制御装置にソフトウエアをインストールする方法、記憶デバイス制御装置の制御方法、及び記憶デバイス制御装置
US7509644B2 (en) * 2003-03-04 2009-03-24 Secure 64 Software Corp. Operating system capable of supporting a customized execution environment
US20050015430A1 (en) * 2003-06-25 2005-01-20 Rothman Michael A. OS agnostic resource sharing across multiple computing platforms
JP2005293417A (ja) * 2004-04-02 2005-10-20 Sony Corp コンピュータ機器、コンピュータネットワークシステム、プログラム転送方法およびプログラム転送用プログラム
IL163314A (en) * 2004-08-02 2010-06-16 Lsi Technologies Israel Ltd Booting from a storage area network
US7747847B2 (en) * 2005-03-25 2010-06-29 Broadcom Corporation Method and system for iSCSI boot in which an iSCSI client loads boot code from a host bus adapter and/or network interface card
JP4963167B2 (ja) * 2005-09-15 2012-06-27 株式会社リコー システム起動方法、及びプログラム
JP2007207017A (ja) * 2006-02-02 2007-08-16 Seiko Epson Corp 情報処理装置、インストール方法、およびプログラム
US20070234000A1 (en) 2006-03-31 2007-10-04 Dell Products L.P. Method and system for dynamic management of a utility partition in a pre-operating system environment
US7441113B2 (en) * 2006-07-10 2008-10-21 Devicevm, Inc. Method and apparatus for virtualization of appliances
US8225309B2 (en) 2006-10-16 2012-07-17 Dell Products L.P. Method and process for using common preinstallation environment for heterogeneous operating systems
US7624262B2 (en) * 2006-12-20 2009-11-24 International Business Machines Corporation Apparatus, system, and method for booting using an external disk through a virtual SCSI connection
WO2008126145A1 (ja) * 2007-03-30 2008-10-23 Fujitsu Limited コンピュータシステムの仮想os環境での仮想ネットワークアダプタの設定方法及びコンピュータシステム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050088067A (ko) * 2002-07-11 2005-09-01 베리타스 오퍼레이팅 코포레이션 스토리지 서비스들 및 시스템들
KR20060134211A (ko) * 2004-04-15 2006-12-27 레이던 컴퍼니 동적 부트 이미지들 및 가상 디스크를 사용하는 컴퓨터클러스터 가상화용 시스템 및 방법

Also Published As

Publication number Publication date
EP2324426A4 (en) 2014-04-30
KR101371270B1 (ko) 2014-03-07
KR20110053427A (ko) 2011-05-23
CN102132251A (zh) 2011-07-20
CN102099787B (zh) 2014-03-26
WO2010008707A1 (en) 2010-01-21
WO2010008706A1 (en) 2010-01-21
US8578146B2 (en) 2013-11-05
TW201015439A (en) 2010-04-16
JP2011528470A (ja) 2011-11-17
KR20110034635A (ko) 2011-04-05
CN102132251B (zh) 2014-04-30
EP2324425A4 (en) 2014-04-30
EP2324425A1 (en) 2011-05-25
US20110161649A1 (en) 2011-06-30
US8539218B2 (en) 2013-09-17
CN102099787A (zh) 2011-06-15
EP2324426A1 (en) 2011-05-25
US20110078433A1 (en) 2011-03-31
JP5302397B2 (ja) 2013-10-02
JP2011528469A (ja) 2011-11-17
JP5404783B2 (ja) 2014-02-05
TWI428831B (zh) 2014-03-01

Similar Documents

Publication Publication Date Title
KR101484358B1 (ko) 가상화 서버 플랫폼상에 부팅가능한 가상 스토리지 어플라이언스를 부팅하기 위한 시스템들 및 방법들
US10261800B2 (en) Intelligent boot device selection and recovery
US8677352B2 (en) Interchangeable guest and host execution environments
US9483639B2 (en) Service partition virtualization system and method having a secure application
US9672058B2 (en) Reduced service partition virtualization system and method
US10067777B2 (en) Supporting multiple operating system environments in computing device without contents conversion
US7779305B2 (en) Method and system for recovery from an error in a computing device by transferring control from a virtual machine monitor to separate firmware instructions
US20090172661A1 (en) Method and system for establishing a robust virtualized environment
US20090094603A1 (en) In-Place Conversion of Virtual Machine State
US20120154375A1 (en) Techniques For Enabling Remote Management Of Servers Configured With Graphics Processors
US20150261952A1 (en) Service partition virtualization system and method having a secure platform
KR20110060791A (ko) 컴퓨터 구현 방법 및 시스템
CN115390996B (zh) 虚拟机迁移方法和装置、计算设备和存储介质
KR20210069981A (ko) 가상화 서버 플랫폼상에 부팅가능한 가상 스토리지 설비를 부팅하기 위한 시스템들 및 방법들
US11829772B2 (en) Heterogeneous compute domains with an embedded operating system in an information handling system
Baclit et al. Linux Virtualization

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180110

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee