IP Library Granted Patent US 9,934,021
Granted Patent B2
US 9,934,021 · App. 14/644,600 · Granted Apr 3, 2018

System and method for adaptive application self-updating

Inventors: Alberto Nieves (Austin, TX); Daniel L. Hamlin (Round Rock, TX); Jeffrey S. Myers (Salado, TX)
Assignee: DELL PRODUCTS, LP
G06F8/65
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 9,934,021
App. No.
14/644,600
Filed
Mar 11, 2015
Granted
Apr 3, 2018
Kind
B2
Art Unit
2197
USPC
717/173
Abstract

An information handling system, includes a processor to execute an application and an update system to determine to provide an update to the application. The update system includes an identity context engine to determine an identity context for the information handling system and a system context engine to determine a system context for the information handling system. The update system determines whether to retrieve an update manifest for the update based upon the identity context, the system context, and a manifest policy, determines whether to download the update based upon the identity context, the system context, and a download policy, and determines whether to install update based upon the identity context, the system context, and an installation policy.

Claims (57)

1. An information handling system, comprising:

a processor to execute an application;

an update controller; and

an update system to determine to provide an update to the application, the update system comprising:

an identity context engine to determine an identity context for the information handling system, wherein the identity context is based upon a line of business associated with the information handling system, the line of business identifying the information handling system as one of a personal computer or an enterprise computer, and wherein the identity context is further based upon a physical location of the information handling system;

a system context engine to determine a system hardware and software context for the information handling system; and

a boot-checker to determine a boot context for the information handling system;

wherein the update system:

determines whether to retrieve an update manifest for the update based upon the identity context, the system hardware and software context, the boot context, and a manifest policy;

determines whether to download the update based upon the identity context, the system hardware and software context, the boot context, and a download policy;

determines whether to install update based upon the identity context, the system hardware and software context, the boot context, and an installation policy; and

determines to install the update, the update system further directs the update controller to install the update.

2. The information handling system of claim 1 ,

wherein when the update system determines to retrieve the update manifest, the update system further directs the update controller to retrieve the update manifest.

3. The information handling system of claim 2 , wherein when the update system determines to download the update, the update system further directs the update controller to download the update.

4. The information handling system of claim 1 , wherein:

the manifest policy includes a network bandwidth limit; and

in determining to retrieve the update manifest, the update system further determines that the system hardware and software context includes a network bandwidth utilization level that is lower than the network bandwidth limit.

5. The information handling system of claim 1 , wherein:

the manifest policy includes a storage utilization limit; and

in determining to retrieve the update manifest, the update system further determines that the system hardware and software context includes a storage utilization level that is lower than the storage utilization limit, and that a size of the update is within the storage utilization limit.

6. The information handling system of claim 1 , wherein:

the download policy includes a line-of-business policy; and

in determining to download the update manifest, the update system further determines that the identity context includes line-of-business information that corresponds to the line-of-business policy.

7. The information handling system of claim 1 , wherein the boot context includes an indication that the information handling system is in a boot operation.

8. The information handling system of claim 1 , further comprising:

a timer;

wherein when the update system determines to not retrieve the update manifest, the update system sets the timer to trigger a first reevaluation by the update system to determine whether to retrieve the update manifest.

9. The information handling system of claim 8 , wherein when the update system determines to not download the update, the update system sets the timer to trigger a second reevaluation by the update system to determine whether to download the update.

10. The information handling system of claim 8 , wherein when the update system determines to not install the update, the update system sets the timer to trigger a third reevaluation by the update system to determine whether to install the update.

11. A method for determining whether to update an application, the method comprising:

determining, by an identity context engine of an information handling system, an identity context for the information handling system, wherein the identity context is based upon a line of business associated with the information handling system, the line of business identifying the information handling system as one of a personal computer or an enterprise computer, and a physical location of the information handling system;

determining, by a system context engine, a system hardware and software context for the information handling system;

determining, by a boot-checker, a boot context for the information handling system;

determining, by an update system, whether to retrieve an update manifest for the update based upon the identity context, the system hardware and software context, the boot context, and a manifest policy;

determining whether to download the update based upon the identity context, the system hardware and software context, the boot context, and a download policy;

determining whether to install update based upon the identity context, the system hardware and software context, the boot context, and an installation policy; and

directing an update controller of the information handling system to install the update in response to determining to install the update.

12. The method of claim 11 , further comprising: directing the update controller of the information handling system to retrieve the update manifest in response to determining to retrieve the update manifest.

13. The method of claim 12 , further comprising:

directing the update controller to download the update in response to determining to download the update.

14. The method of claim 11 , wherein:

the manifest policy includes a network bandwidth limit; and

in determining to retrieve the update manifest, the method further comprises determining that the system hardware and software context includes a network bandwidth utilization level that is lower than the network bandwidth limit.

15. The method of claim 11 , wherein:

the manifest policy includes a storage utilization limit; and

in determining to retrieve the update manifest, the method further comprises determining that the system hardware and software context includes a storage utilization level that is lower than the storage utilization limit, and that a size of the update is within the storage utilization limit.

16. The method of claim 11 , wherein:

the download policy includes a line-of-business policy; and

in determining to download the update manifest, the method further comprises determining that the identity context includes line-of-business information that corresponds to the line-of-business policy.

17. The method of claim 11 , wherein the boot context includes an indication that the information handling system is in a boot operation.

18. A non-transitory computer-readable medium including code for performing a method for determining to update an application, the method comprising:

determining an identity context for an information handling system, wherein the identity context is based upon a line of business associated with the information handling system, the line of business identifying the information handling system as one of a personal computer or an enterprise computer, and a physical location of the information handling system;

determining a system hardware and software context for the information handling system; determining, by a boot-checker, a boot context for the information handling system; determining whether to retrieve an update manifest for the update based upon the identity context, the system hardware and software context, the boot context, and a manifest policy;

determining whether to download the update based upon the identity context, the system hardware and software context, the boot context, and a download policy;

determining whether to install update based upon the identity context, the system hardware and software context, the boot context, and an installation policy; and

directing an update controller of the information handling system to install the update in response to determining to install the update.

Assignments (15)
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 (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
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 →
SECURITY AGREEMENT Recorded Mar 21, 2019
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 049452/0223 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
RELEASE OF REEL 035860 FRAME 0797 (TL) Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; COMPELLENT TECHNOLOGIES, INC.; SECUREWORKS, INC.; STATSOFT, INC.
Reel/Frame 040028/0551 →
RELEASE OF REEL 035860 FRAME 0878 (NOTE) Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; COMPELLENT TECHNOLOGIES, INC.; SECUREWORKS, INC.; STATSOFT, INC.
Reel/Frame 040027/0158 →
RELEASE OF REEL 035858 FRAME 0612 (ABL) Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; COMPELLENT TECHNOLOGIES, INC.; SECUREWORKS, INC.; STATSOFT, INC.
Reel/Frame 040017/0067 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (ABL) Recorded Jun 9, 2015
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; COMPELLENT TECHNOLOGIES, INC.; SECUREWORKS, INC.; STATSOFT, INC.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 035858/0612 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (TERM LOAN) Recorded Jun 9, 2015
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; COMPELLENT TECHNOLOGIES, INC.; SECUREWORKS, INC.; STATSOFT, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 035860/0797 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (NOTES) Recorded Jun 9, 2015
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; COMPELLENT TECHNOLOGIES, INC; SECUREWORKS, INC.; STATSOFT, INC.
To: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 035860/0878 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 18, 2015
From: NIEVES, ALBERTO; HAMLIN, DANIEL L.; MYERS, JEFFREY S.
To: DELL PRODUCTS, LP
Reel/Frame 035194/0220 →
Continuity (1)
Related Publication 20160266888A1 · Sep 15, 2016