IP Library Granted Patent US 8,141,071
Granted Patent B2
US 8,141,071 · App. 11/801,076 · Granted Mar 20, 2012

Intelligent patch checker

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 8,141,071
App. No.
11/801,076
Granted
Mar 20, 2012
Kind
B2
Abstract

A method for remotely updating software in a plurality of computer systems is disclosed. In one embodiment, a client computer sends application information about a software application to a server system. The server system performs a comparison between the application information about the software application and the most-updated upgrade package for the software application. The most-updated upgrade package for the software application is stored in a part database. The most-updated upgrade package for the software application is received by the client system automatically when the comparison indicates that the most-updated upgrade package has not been installed on the client system. A client database stores a plurality of configuration files for a plurality of client systems. A first configuration file provides the sever system with the knowledge of the software applications installed on the client system. The application information about the software application comprises version information of the software applications and is stored in a database in the client system.

Claims (50)

1. A method, including:

from a first client system,

sending an application update request associated with a software application to a server system, the server system having a client database storing a plurality of configuration files for a plurality of client systems, the configuration files related to the client systems by a unique identifier associated with each client system, wherein the server system performs a comparison between the configuration file related to the first client system based upon the unique identifier and a most-updated upgrade package for the software application to determine if the most-updated upgrade package has been installed on the client; and

receiving the most-updated upgrade package for the software application at the client system when the comparison indicates that the most-updated upgrade package has not been installed on the client system.

2. The method of claim 1 , wherein prior to the sending the application update request, the method further including:

communicating a request to the server system for the most-updated upgrade package for the software application; and

receiving from the server system, in response to the request, one or more instructions directing the client system to retrieve application information about the software application.

3. The method of claim 2 , including automatically generating the request for the upgrade on a periodic basis.

4. The method of claim 2 , wherein the receiving of the one or more instructions includes receiving a script file including the one or more instructions and a list of parts, the list of parts being used in conjunction with the one or more instructions to retrieve the application information.

5. The method of claim 1 , further including:

retrieving from the most-updated upgrade package an instruction file and one or more data files associated with the software application to upgrade; and

parsing commands from the instruction file and executing the commands to update the software application using the one or more data files.

6. The method of claim 1 , wherein the server system includes a part database storing the most-updated upgrade package for the software application, the configuration file comprising version information of the software application.

7. A machine-readable storage medium embodying instructions which, when executed by a machine, cause the machine to:

send a software application update request associated with a unique client identifier from a first client to a server system having a client database storing a plurality of configuration files for a plurality of client systems, the configuration files related to the client systems by a unique identifier associated with each client system, wherein the server system performs a comparison between the configuration file related to the first client based upon the unique identifier and a most-updated upgrade package for the software application to determine if the most-updated upgrade package has been installed on the first client; and

receive the most-updated upgrade package for the software application at the first client system when the comparison indicates that the most-updated upgrade package has not been installed on the client system.

8. The machine-readable storage medium of claim 7 , including instructions when executed by a machine further cause the machine to:

receive from the server system, in response to the software application update request, one or more instructions directing the client system to retrieve application information about the software application from the client.

9. A method, including:

at a server system,

sending to a client a script having a command, the command operable to execute a utility application already loaded on the client, the utility application for determining application information of the client, the script including a list of applications that a configuration file on the server indicates to be on the client, the utility application applying the list to determine the application information;

receiving the application information about a software application from a client system;

comparing the application information about the software application to a most-updated upgrade package for the software application; and

sending the most-updated upgrade package for the software application to the client system automatically when the comparison indicates that the most-updated upgrade package has not been installed on the client system.

10. The method of claim 9 , wherein prior to the receiving application information, the method further including:

receiving a request from the client system for the most-updated upgrade package for the software application;

in response to the request, retrieving from a client database at least one configuration file for the client system providing the server system with knowledge pertaining to the software application; and

generating one or more instructions based on the at least one configuration file to communicate to the client system, the one or more instructions directing the client system to retrieve the application information about the software application.

11. The method of claim 10 , wherein the generating of the one or more instructions includes generating a script file including the one or more instructions and a list of parts, the list of parts being used in conjunction with the one or more instructions by the client system to retrieve the application information.

12. A machine-readable storage medium embodying instructions which, when executed by a machine, cause the machine to:

send a script from a server to a client, the script having a list of one or more applications identified by the server as stored on the client;

identify application information at the client, the application information comprising at least a version of the one or more applications;

receive application information about the one or more software applications from the client system;

compare the application information about the software application to a most-updated upgrade package for the software application; and

send the most-updated upgrade package for the software application to the client system automatically when the comparison indicates that the most-updated upgrade package has not been installed on the client system.

13. The machine-readable storage medium of claim 12 , including instructions when executed by a machine further cause the machine to:

receive a request for the client system for the most-updated upgrade package for the software application, the request including a unique identifier for the client;

retrieve from a client database at least one configuration file for the client system unique identifier providing the server system with the list of one or more applications stored on the client; and

generate one or more instructions based on the at least one configuration file to communicate to the client system, the one or more instructions to direct the client system to retrieve the application information about the software application.

14. A system, including:

a machine readable storage medium executing instructions for:

a client system to send application information associated with a software application to a server system, the client system sending the application information in response to a user input at a patch checker icon displayed in a tool bar and associated with a dynamic link library;

a server system to perform a comparison between the application information and a most-updated upgrade package for the software application and to communicate the most-updated upgrade package for the software application to the client system when the comparison indicates that the most-updated upgrade package is not installed on the client system; and

the client system to receive, based on the most-updated upgrade package, one or more files to upgrade the software application.

15. The system of claim 14 , further including:

the client system to communicate a request to a server system for the most-updated upgrade package for a software application, the request including at least one configuration file;

the server system to generate one or more instructions based on the at least one configuration file to communicate to the client system, the one or more instructions to direct the client system to retrieve the application information about the software application; and

the client system to receive from the server system, in response to the request, one or more instructions directing the client system to retrieve the application information about the software application.

16. The system of claim 15 , wherein the server system to generate of the one or more instructions includes the server to generate a script file including the one or more instructions and a list of parts, the list of parts being used in conjunction with the one or more instructions by the client system to retrieve the application information.

17. The system of claim 14 , including the client system to retrieve from the most-updated upgrade package an instruction file and one or more data files associated with the software application to upgrade and to execute commands parsed from the instruction file to update the software application using the one or more data files.

Assignments (16)
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: DELL USA L.P.; ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; 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 SECURITY INTEREST Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040065/0618 →
RELEASE OF SECURITY INTEREST Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040040/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLANT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040065/0216 →
PATENT SECURITY AGREEMENT (TERM LOAN) Recorded Jan 2, 2014
From: DELL INC.; APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 031899/0261 →
PATENT SECURITY AGREEMENT (ABL) Recorded Jan 2, 2014
From: DELL INC.; APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 031898/0001 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Jan 2, 2014
From: APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS FIRST LIEN COLLATERAL AGENT
Reel/Frame 031897/0348 →
MERGER Recorded Nov 15, 2013
From: DELL MARKETING USA L.P.
To: DELL MARKETING L.P.
Reel/Frame 031614/0908 →
MERGER Recorded Oct 21, 2008
From: EVERDREAM CORPORATION
To: DELL MARKETING USA, L.P.
Reel/Frame 021701/0262 →