IP Library Granted Patent US 11,379,209
Granted Patent B2
US 11,379,209 · App. 16/419,210 · Granted Jul 5, 2022

Upgrade of a software product

Inventors: Min Liu (Shanghai, CN); Weiyang Liu (Shanghai, CN); Ming Zhang (Shanghai, CN); Yubing Zhang (Shanghai, CN); Naveen Rastogi (San Jose, CA)
Assignee: EMC IP HOLDING COMPANY LLC
G06F8/65G06F9/45558G06F2009/45583
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,379,209
App. No.
16/419,210
Granted
Jul 5, 2022
Kind
B2
Abstract

An apparatus for upgrading a software product is provided. The apparatus generates an upgrade package of the software product, the upgrade package including an installation file of the software product, a metadata file and one or more executable files. The apparatus also executes the one or more executable files to perform operations for upgrading the software product. The operations include unpacking the installation file; adding a disk file in the installation file to a virtual machine based on a file name indicated in the metadata file, the disk file including upgraded files of the software product; mounting the disk file to a mount point of the virtual machine, wherein the mount point is indicated in the metadata file; and providing a path to access the upgraded files based on the mount point and a folder path of the upgraded files indicated in the metadata file.

Claims (32)

1. A method of upgrading a software product, comprising:

generating an upgrade package of the software product, the upgrade package including an installation file of the software product, a metadata file and one or more executable files, wherein the metadata file indicates a version of upgraded files of the software product, and a type of a disk file system, the version of the upgraded files being used to determine whether to upgrade the software product, wherein the one or more executable files are in a format of shell script files, and wherein the installation file of the software product has a size close to a size of the upgrade package; and

executing the one or more executable files to perform operations for upgrading any one or all of optional components in the software product, including:

unpacking the installation file, wherein the installation file includes files of the software product with a latest version;

adding a disk file in the installation file to a virtual machine as a disk based on a file name indicated in the metadata file, the disk file including the upgraded files;

mounting the disk file to a mount point of the virtual machine, wherein the mount point is based on the type of the disk file system indicated in the metadata file; and

providing a path to access the upgraded files based on the mount point and a folder path of the upgraded files indicated in the metadata file.

2. The method of claim 1 , wherein the installation file of the software product is an open virtualization appliance (OVA) file.

3. The method of claim 1 , wherein the upgrade package is included in an integrated software product as an optional component of the integrated software product.

4. The method of claim 1 , wherein the upgrade package does not include the upgraded files outside the installation file.

5. The method of claim 1 , wherein the metadata file is a JavaScript object notation (JSON) file or an extensible markup language (XML) file.

6. An apparatus for upgrading a software product, the apparatus comprising a processor and a memory storing executable instructions that, in response to execution by the processor, cause the apparatus to:

generate an upgrade package of the software product, the upgrade package including an installation file of the software product, a metadata file and one or more executable files, wherein the metadata file indicates a version of upgraded files of the software product, and a type of a disk file system, the version of the upgraded files being used to determine whether to upgrade the software product, wherein the one or more executable files are in a format of shell script files, and wherein the installation file of the software product has a size close to a size of the upgrade package; and

execute the one or more executable files to perform operations for upgrading any one or all of optional components in the software product, including:

unpack the installation file, wherein the installation file includes files of the software product with a latest version;

add a disk file in the installation file to a virtual machine as a disk based on a file name indicated in the metadata file, the disk file including the upgraded files;

mount the disk file to a mount point of the virtual machine, wherein the mount point is based on the type of the disk file system indicated in the metadata file; and

provide a path to access the upgraded files based on the mount point and a folder path of the upgraded files indicated in the metadata file.

7. The apparatus of claim 6 , wherein the installation file of the software product is an open virtualization appliance (OVA) file.

8. The apparatus of claim 6 , wherein the upgrade package is included in an integrated software product as an optional component of the integrated software product.

9. The apparatus of claim 6 , wherein the upgrade package does not include the upgraded files outside the installation file.

10. The apparatus of claim 6 , wherein the metadata file is a JavaScript object notation (JSON) file or an extensible markup language (XML) file.

11. A computer-readable storage medium for upgrading a software product, the computer-readable storage medium being non-transitory and having computer-readable program code stored therein that in response to execution by a processor, causes an apparatus to:

generate an upgrade package of the software product, the upgrade package including an installation file of the software product, a metadata file and one or more executable files, wherein the metadata file indicates a version of upgraded files of the software product, and a type of a disk file system, the version of the upgraded files being used to determine whether to upgrade the software product, wherein the one or more executable files are in a format of shell script files, and wherein the installation file of the software product has a size close to a size of the upgrade package; and

execute the one or more executable files to perform operations for upgrading any one or all of optional components in the software product, including:

unpack the installation file, wherein the installation file includes files of the software product with a latest version;

add a disk file in the installation file to a virtual machine as a disk based on a file name indicated in the metadata file, the disk file including the upgraded files;

mount the disk file to a mount point of the virtual machine, wherein the mount point is based on the type of the disk file system indicated in the metadata file; and

provide a path to access the upgraded files based on the mount point and a folder path of the upgraded files indicated in the metadata file.

12. The computer-readable storage medium of claim 11 , wherein the installation file of the software product is an open virtualization appliance (OVA) file.

13. The computer-readable storage medium of claim 11 , wherein the upgrade package is included in an integrated software product as an optional component of the integrated software product.

14. The computer-readable storage medium of claim 11 , wherein the upgrade package does not include the upgraded files outside the installation file.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (050724/0571) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0088 →
RELEASE OF SECURITY INTEREST AT REEL 050406 FRAME 421 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 058213/0825 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Oct 15, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 050724/0571 →
SECURITY AGREEMENT Recorded Sep 17, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 050406/0421 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 22, 2019
From: LIU, MIN; LIU, WEIYANG; ZHANG, MING; ZHANG, YUBING; RASTOGI, NAVEEN
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 049252/0453 →