IP Library Granted Patent US 11,249,780
Granted Patent B2
US 11,249,780 · App. 15/875,414 · Granted Feb 15, 2022

VM creation by installation media probe

Inventor: Cheng Zhang (Nanjing, CN)
Assignee: Citrix Systems, Inc.
G06F9/45558G06F8/63G06F9/4555G06F2009/45562G06F2009/45575
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,249,780
App. No.
15/875,414
Granted
Feb 15, 2022
Kind
B2
Abstract

Described embodiments provide systems and methods for running virtual machines based by probing installation media. A media probe executing on one or more processors may identify an installation media for configuring a virtual machine on a type of operating system. The media probe may detect the type of operating system from the installation media. A virtualization manager executing on the one or more processors may determine a virtualization mode for configuration of the virtual machine based on the type of operating system detected from the installation media. The virtualization manager may create the virtual machine in accordance with the virtualization mode determined based on the type of operating system.

Claims (55)

1. A method of running virtual machines by probing installation media, comprising:

identifying, by a media probe executing on one or more processors, an installation media for creating a virtual machine on a host server;

detecting, by the media probe from metadata contained within one or more files of the installation media, a type of operating system to be used by the virtual machine on the host server;

determining, by a virtualization manager executing on the one or more processors, from a plurality of virtualization modes comprising at least one of a full virtualization mode, a para-virtualization mode, or a hybrid virtualization mode, a subset of virtualization modes that are supported by the type of operating system detected from the metadata contained within the one or more files of the installation media prior to creating the virtual machine on the host server;

providing, by the virtualization manager, a first graphical user interface for selecting one of the plurality of virtualization modes, the plurality of virtualization modes including a first virtualization mode supported by the type of operating system and a second virtualization mode not supported by the type of operating system detected from the installation media;

receiving, by the virtualization manager from the first graphical user interface, a selection of the first virtualization mode to be used to configure the virtual machine;

identifying, by the virtualization manager, a minimum hardware setting for configuration of the virtual machine in accordance with the first virtualization mode;

providing, by the virtualization manager, a second graphical user interface for selecting one of a plurality of hardware settings for configuration of the virtual machines, the plurality of hardware settings including a first setting corresponding to the minimum hardware setting and a second setting greater than the minimum hardware setting;

receiving, by the virtualization manager from the second graphical user interface, a selection of a hardware setting of the plurality of hardware settings to be used to configure the virtual machine; and

creating, by the virtualization manager on the host server, the virtual machine in accordance with the first virtualization mode selected from the plurality of virtualization modes and supported by the type of operating system and the hardware setting selected from the plurality of hardware settings.

2. The method of claim 1 , wherein identifying the installation media further comprises identifying a disk image file corresponding to the installation media; and

wherein detecting the type of operating system further comprises retrieving the metadata specifying the type of operating system from the disk image file.

3. The method of claim 1 , wherein identifying the installation media further comprises identifying a release package including the installation media; and

wherein detecting the type of operating system further comprises finding an operating system identification file in the release package, the operating system identification file specifying the type of operating system for the release package.

4. The method of claim 1 , wherein creating the virtual machine further comprises mounting the installation media for the virtual machine in accordance with the first virtualization mode determined based on the type of operating system.

5. The method of claim 1 , further comprising:

identifying, by the virtualization manager, a minimum hardware setting for configuration of the virtual machine in accordance with the first virtualization mode based on the type of operating system; and

wherein creating the virtual machine further comprises creating the virtual machine in accordance with the first virtualization mode using at least the minimum hardware setting.

6. The method of claim 1 , further comprising

providing, by the virtualization manager, the first graphical user interface for selecting one of the subset of virtualization modes; and

receiving, by the virtualization manager from the first graphical user interface, the selection of the first virtualization mode to be used to configure the virtual machine, and

wherein creating the virtual machine further comprises creating the virtual machine in accordance with the first virtualization mode selected from the subset of virtualization modes via the graphical user interface.

7. The method of claim 1 , further comprising:

providing, by the virtualization manager, the first graphical user interface for selecting one of the plurality of virtualization modes, the plurality of virtualization modes including the first virtualization mode supported by the type of operating system and a second virtualization mode not supported by the type of operating system detected from the installation media;

receiving, by the virtualization manager, a selection of the second virtualization mode from the first graphical user interface; and

sending, by the virtualization manager, the selection of the second virtualization mode to a virtualization service to establish a second virtual machine separate from the first virtual machine.

8. A system for running virtual machines by probing installation media, comprising:

a device having one or more processors coupled with memory, configured to:

identify an installation media for creating a virtual machine on a host server;

detect, from metadata contained within one or more files of the installation media, a type of operating system to be used by the virtual machine on the host server;

determine, from a plurality of virtualization modes including at least one of a full virtualization mode, a para-virtualization mode, or a hybrid virtualization mode, a subset of virtualization modes that are supported by the type of operating system detected from the metadata contained within the one or more files of the installation media prior to creating the virtual machine on the host server;

provide a first graphical user interface for selecting one of the plurality of virtualization modes, the plurality of virtualization modes including a first virtualization mode supported by the type of operating system and a second virtualization mode not supported by the type of operating system detected from the installation media;

receive, from the first graphical user interface, a selection of the first virtualization mode to be used to configure the virtual machine;

identify a minimum hardware setting for configuration of the virtual machine in accordance with the first virtualization mode;

provide a second graphical user interface for selecting one of a plurality of hardware settings for configuration of the virtual machines, the plurality of hardware settings including a first setting corresponding to the minimum hardware setting and a second setting greater than the minimum hardware setting;

receive, from the second graphical user interface, a selection of a hardware setting of the plurality of hardware settings to be used to configure the virtual machine; and

create, on the host server, the virtual machine in accordance with the first virtualization mode selected from the plurality of virtualization modes and determined and supported by the type of operating system and the hardware setting selected from the plurality of hardware settings.

9. The system of claim 8 , wherein the device is configured to:

identify the installation media by identifying a disk image file corresponding to the installation media; and

detect the type of operating system by retrieving the metadata specifying the type of operating system from the disk image file.

10. The system of claim 8 , wherein the device is configured to:

identify the installation media by identifying a release package including the installation media; and

detect the type of operating system by finding an operating system identification file in the release package, the operating system identification file specifying the type of operating system for the release package.

11. The system of claim 8 , wherein the device is further configured to create the virtual machine by mounting installation media for the virtual machine in accordance with the first virtualization mode determined based on the type of operating system.

12. The system of claim 8 , wherein the device is further configured to:

identify a minimum hardware setting for configuration of the virtual machine in accordance with the first virtualization mode based on the type of operating system; and

create the virtual machine in accordance with the first virtualization mode using at least the minimum hardware setting.

13. The system of claim 8 , wherein the device is further configured to:

provide the first graphical user interface for selecting one of the subset of virtualization modes;

receive, from the graphical user interface, the selection of the first virtualization mode to be used to configure the virtual machine; and

create the virtual machine in accordance with the first virtualization mode selected from the subset of virtualization modes via the graphical user interface.

14. The system of claim 8 , wherein the device is configured to:

provide the first graphical user interface for selecting one of the plurality of virtualization modes, the plurality of virtualization modes including the first virtualization mode supported by the type of operating system and the second virtualization mode not supporting the type of operating system detected from the installation media;

receive a selection of the second virtualization mode from the first graphical user interface; and

send the selection of the second virtualization mode to a virtualization service to establish a second virtual machine separate from the first virtual machine.

Assignments (9)
PATENT SECURITY AGREEMENT Recorded Aug 15, 2025
From: CLOUD SOFTWARE GROUP, INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 072488/0172 →
SECURITY INTEREST Recorded May 24, 2024
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 067662/0568 →
RELEASE AND REASSIGNMENT OF SECURITY INTEREST IN PATENT (REEL/FRAME 062113/0001) Recorded Apr 14, 2023
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 063339/0525 →
PATENT SECURITY AGREEMENT Recorded Apr 14, 2023
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 063340/0164 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 062113/0470 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062112/0262 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 062113/0001 →
SECURITY INTEREST Recorded Sep 30, 2022
From: CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 062079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 23, 2018
From: ZHANG, CHENG
To: CITRIX SYSTEMS, INC.
Reel/Frame 044696/0180 →
Continuity (1)
Related Publication 20190227828A1 · Jul 25, 2019