IP Library Granted Patent US 8,671,166
Granted Patent B2
US 8,671,166 · App. 11/836,552 · Granted Mar 11, 2014

Methods and systems for deploying hardware files to a computer

Inventor: Donal Charles Noonan, III (Renton, WA)
Assignee: Prowess Consulting, LLC
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,671,166
App. No.
11/836,552
Granted
Mar 11, 2014
Kind
B2
Abstract

A method and system may include deploying a base system image to a computer, identifying a hardware device associated with the computer, and analyzing an archive comprising a node and a hardware file, the node comprising a deployment condition for determining whether to deploy the hardware file to the computer. The method and system may further include analyzing the hardware device to determine whether the hardware device complies with the deployment condition, and deploying the hardware file to the computer if the hardware device complies with the deployment condition.

Claims (94)

1. A method comprising:

creating a module comprising hardware files, wherein the hardware files are represented as a set of nodes, each node including identification of a corresponding hardware file, a node component identification (ID), at least one deployment condition for determining whether to install the hardware file to a target computer, and an indication of when to install the hardware file to the target computer;

installing a base system image to a computer;

identifying at least one hardware device associated with the computer;

analyzing the set of nodes from the module to identify a node having a node component ID that matches identification of the at least one hardware device associated with the computer;

analyzing the at least one hardware device to determine whether the at least one hardware device complies with the at least one deployment condition of the identified node based on a hardware attribute of the at least one hardware device; and

installing the at least one hardware file to the computer in the event the at least one hardware device complies with the at least one deployment condition, wherein the at least one installed hardware file is associated with the at least one identified hardware device,

wherein the indication associated with the identified node indicates installing of the at least one hardware file after the installing of the base system image and before the initial boot of an operating system contained in the base system image.

2. The method of claim 1 , wherein the base system image includes information common to a plurality of computers.

3. The method of claim 1 , wherein identifying at least one hardware device further comprises mounting a registry database of the computer.

4. The method of claim 3 , wherein identifying at least one hardware device further comprises querying the computer to identify a hardware configuration file.

5. The method of claim 4 , wherein identifying at least one hardware device further comprises identifying a hardware abstraction layer type of the computer based on the hardware configuration file.

6. The method of claim 5 , wherein identifying at least one hardware device further comprises copying a hardware abstraction layer support file to the computer based on the hardware abstraction layer type.

7. The method of claim 6 , wherein identifying at least one hardware device further comprises updating the registry database to point to the hardware abstraction layer support file.

8. The method of claim 7 , wherein identifying at least one hardware device further comprises enumerating a plurality of hardware devices.

9. The method of claim 1 , wherein analyzing the at least one hardware device further comprises:

identifying a filter associated with the node, the filter comprising a rule; and

applying the filter to the hardware attribute of the at least one hardware device.

10. The method of claim 9 , wherein analyzing the at least one hardware device further comprises determining that the hardware attribute of the at least one hardware device complies with the rule.

11. The method of claim 10 , wherein analyzing the archive further comprises extracting the at least one hardware file from the archive if the hardware attribute complies with the rule.

12. The method of claim 1 , wherein installing the at least one hardware file further comprises:

determining that the at least one hardware device is used during booting of the computer; and

injecting the at least one hardware file during a pre-installation environment.

13. The method of claim 12 , wherein injecting the at least one hardware file further comprises:

analyzing a registry database to identify a storage location on a hard disk associated with the at least one hardware device; and

storing the at least one hardware file at the storage location.

14. The method of claim 13 , wherein injecting the at least one hardware file further comprises updating the registry database to point to the at least one hardware file stored in the hard disk.

15. The method of claim 1 , wherein installing the at least one hardware file further comprises:

updating a registry database to set the indication to run during a deployment stage; and

copying the at least one hardware file associated with the indication to a storage location on a hard disk of the computer associated with the at least one hardware device.

16. A non-transitory computer readable medium comprising code which when executed by a computer performs the method of claim 1 .

17. A system comprising:

a computer processor configured to install a base system image to a first portion of memory of a computer;

a processing logic of the computer, configured to:

create a module comprising hardware files, wherein the hardware files are represented as a set of nodes, each node including identification of a corresponding hardware file, a node component identification (ID), at least one deployment condition for determining whether to install the hardware file to a target computer, and an indication of when to install the hardware file to the target computer;

identify at least one hardware device associated with the computer;

analyze the set of nodes from the module to identify a node having a node component ID that matches identification of the at least one hardware device associated with the computer;

analyze the at least one hardware device to determine whether the at least one hardware device complies with the at least one deployment condition of the identified node based on a hardware attribute of the at least one hardware device; and

install the at least one hardware file to a second portion of memory of the computer in the event the at least one hardware device complies with the at least one deployment condition,

wherein the at least one installed hardware file is associated with the at least one identified hardware device, and

wherein the indication associated with the identified node indicates installing of the at least one hardware file after the installing of the base system image and before the initial boot of an operating system contained in the base system image.

18. The system of claim 17 , wherein installing the at least one hardware file further comprises:

determining that the at least one hardware device is used during booting of the computer; and

injecting the at least one hardware file during a pre-installation environment,

wherein injecting the at least one hardware file further comprises:

analyzing a registry database to identify a storage location on a hard disk associated with the at least one hardware device; and

storing the at least one hardware file at the storage location.

19. The system of claim 17 , wherein installing the at least one hardware file further comprises:

updating a registry database to set the indication to run during a deployment stage; and

copying the at least one hardware file associated with the indication to a storage location on a hard disk of the computer associated with the at least one hardware device.

20. The system of claim 17 , wherein the base system image includes information common to a plurality of computers.

21. A method comprising:

creating a module comprising hardware files, wherein the hardware files are represented as a set of nodes, each node including identification of a corresponding hardware file, a node component identification (ID), at least one deployment condition for determining whether to install the hardware file to a target computer, and an indication of when to install the hardware file to the target computer;

installing a base system image to a computer;

identifying at least one hardware device associated with the computer;

analyzing the set of nodes from the module to identify a node having a node component ID that matches identification of the at least one hardware device associated with the computer;

analyzing the at least one hardware device to determine whether the at least one hardware device complies with the at least one deployment condition of the identified node based on a hardware attribute of the at least one hardware device; and

installing the at least one hardware file to the computer in the event the at least one hardware device complies with the at least one deployment condition, wherein the at least one installed hardware file is associated with the at least one identified hardware device,

wherein the base system image does not include device-specific hardware files and is installed to a first portion of a memory before the at least one hardware device is installed and the installing the at least one hardware file is indicated by the indication associated with the identified node to occur before the initial boot of an operating system contained in the base system image.

22. The method of claim 21 , wherein the base system image includes information common to a plurality of computers.

23. The method of claim 21 , wherein installing the at least one hardware file further comprises:

determining that the at least one hardware device is used during booting of the computer; and

injecting the at least one hardware file during a pre-installation environment,

wherein injecting the at least one hardware file further comprises:

analyzing a registry database to identify a storage location on a hard disk associated with the at least one hardware device; and

storing the at least one hardware file at the storage location.

24. The method of claim 21 , wherein installing the at least one hardware file further comprises:

updating a registry database to set the indication to run during a deployment stage; and

copying the at least one hardware file associated with the indication to a storage location on a hard disk of the computer associated with the at least one hardware device.

25. A method comprising:

creating a module comprising hardware files, wherein the hardware files are represented as a set of nodes, each node including identification of a corresponding hardware file, a node component identification (ID), at least one deployment condition for determining whether to install the hardware file to a target computer, and an indication of when to install the hardware file to the target computer;

installing a base system image to a first portion of memory in a computer;

identifying at least one hardware device associated with the computer;

analyzing the set of nodes from the module to identify a node having a node component ID that matches identification of the at least one hardware device associated with the computer;

analyzing the at least one hardware device to determine whether the at least one hardware device complies with the at least one deployment condition of the identified node based on a hardware attribute of the at least one hardware device; and

installing the at least one hardware file to a second portion of memory in the computer in the event the at least one hardware device complies with the at least one deployment condition, wherein the at least one installed hardware file is associated with the at least one identified hardware device, and

wherein the at least one hardware file is installed after the base system image is installed and before the initial boot of an operating system contained in the base system image, as indicated in the indication associated with the identified node.

26. The method of claim 25 , wherein installing the at least one hardware file further comprises:

determining that the at least one hardware device is used during booting of the computer; and

injecting the at least one hardware file during a pre-installation environment,

wherein injecting the at least one hardware file further comprises:

analyzing a registry database to identify a storage location on a hard disk associated with the at least one hardware device; and

storing the at least one hardware file at the storage location.

27. The method of claim 25 , wherein installing the at least one hardware file further comprises:

updating a registry database to set the indication to run during a deployment stage; and

copying the at least one hardware file associated with the indication to a storage location on a hard disk of the computer associated with the at least one hardware device.

28. The method of claim 25 , wherein identifying at least one hardware device further comprises:

mounting a registry database of the computer;

querying the computer to identify a hardware configuration file; and

identifying a hardware abstraction layer type of the computer based on the hardware configuration file.

29. The method of claim 28 , wherein identifying at least one hardware device further comprises:

copying a hardware abstraction layer support file to the computer based on the hardware abstraction layer type; and

updating the registry database to point to the hardware abstraction layer support file.

30. The method of claim 25 , wherein the base system image includes information common to a plurality of computers.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 17, 2023
From: PROWESS CONSULTING, LLC
To: SMARTDEPLOY, LLC
Reel/Frame 063022/0805 →
SECURITY INTEREST Recorded Feb 28, 2022
From: SMARTDEPLOY, LLC
To: BARINGS FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 059119/0471 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 30, 2021
From: PROWESS CONSULTING, LLC
To: SMARTDEPLOY, LLC
Reel/Frame 058508/0500 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 9, 2007
From: NOONAN, DONAL CHARLES, III
To: PROWESS CONSULTING, LLC
Reel/Frame 019674/0278 →
Continuity (1)
Related Publication 20090043890A1 · Feb 12, 2009