← Back to Patent Explorer
US5432941A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and system for dynamically configuring a software system using configuration groups

Assignee: Microsoft Technology Licensing LLC
•
Filing: 1992-10-13
•
Granted: 1995-07-11
•
Expires: 2012-10-13
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract In a preferred embodiment, a multiplicity of software routines are defined. During configuration of the software system, a plurality of the software routines are selected for inclusion in the software system. Before configuring the software system, each of the multiplicity of software routines is assigned a configuration group. When configuring the software system, each of the multiplicity of software routines is invoked, one configuration group at a time. Each invoked software routine determines whether it should be included in the software system. This determination may be based on which other software routines are already included. Thus, by changing the assigned configuration order of a software routine, the configuration of the software system can be changed.

Inventors

  • 👤 Andrew P. R. Crick
  • 👤 Seetharaman Harikrishnan
  • 👤 Harish K. Naidu
  • 👤 William G. Parry

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-30 20:56
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/44; G06F9/445; G06F9/44505; G06F13/00; G06F13/10; G06F13/102

Claims Analysis

Total Claims: 33
Claim 1
Independent Claim 106 words
A method in a computer system of configuring a software system to include a subset of an available plurality of software routines, the method comprising the computer-implemented steps of: retrieving a multiplicity of indications, each indication associating one of the available plurality of software routines with one of a plurality of configuration groups, each of the configuration groups having a unique identity; selecting, for each of the configuration groups, in an order based upon the identities of the configuration groups, which of the software routines associated with the configuration group to include in the software system; and including the selected software routines in the software system.
Claim 2
Independent Claim 106 words
A method in a computer system of configuring a software system to include a subset of an available plurality of software routines, the method comprising the computer-implemented steps of: retrieving a multiplicity of indications, each indication associating one of the available plurality of software routines with one of a plurality of configuration groups, each of the configuration groups having a unique identity; selecting, for each of the configuration groups, in an order based upon the identities of the configuration groups, which of the software routines associated with the configuration group to include in the software system; and including the selected software routines in the software system.
Claim 3
Dependent Claim 26 words
The method of claim 1 wherein each software routine includes executable code and an identification of the configuration groups to which the software routine is assigned.
Claim 4
Dependent Claim 24 words
The method of claim 1 wherein the retrieving step retrieves each indication from within a file containing executable code for executing the software routine.
Claim 5
Dependent Claim 26 words
The method of claim 1 wherein the step of including the selected software routines comprises organizing the selected software routines into layers forming the software system.
Claim 6
Independent Claim 106 words
A method in a computer system of configuring a device driver to include a subset of an available plurality of component drivers, the method comprising the computer-implemented steps of: retrieving a multiplicity of indications, each indication associating one of the available plurality of component drivers with one of a plurality of configuration groups, each of the configuration groups having a unique identity; selecting, for each of the configuration groups, in an order based upon the identities of the configuration groups, which of the component drivers associated with the configuration group to include in the device driver; and including the selected component drivers in the device driver.
Claim 7
Independent Claim 106 words
A method in a computer system of configuring a device driver to include a subset of an available plurality of component drivers, the method comprising the computer-implemented steps of: retrieving a multiplicity of indications, each indication associating one of the available plurality of component drivers with one of a plurality of configuration groups, each of the configuration groups having a unique identity; selecting, for each of the configuration groups, in an order based upon the identities of the configuration groups, which of the component drivers associated with the configuration group to include in the device driver; and including the selected component drivers in the device driver.
Claim 8
Dependent Claim 25 words
The method of claim 5 wherein each component driver includes executable code and a list of configuration groups to which the component driver is assigned.
Claim 9
Dependent Claim 28 words
The method of claim 5 wherein the retrieving step retrieves indications from lists of indications, each stored within a file containing executable code for executing a component driver.
Claim 10
Dependent Claim 26 words
The method of claim 5 wherein the step of including the selected component drivers comprises organizing the selected component drivers into layers forming the device driver.
Claim 11
Independent Claim 132 words
A method in a computer system of configuring a software system to include a subset of a plurality of software routines, the method comprising the computer-implemented steps of: for each software routine, retrieving a list of one or more configuration orders associated with the software routine; initializing a plurality of configuration groups, each configuration group having associated with it a configuration order; for each software routine, for each configuration order associated with the software routine, assigning the software routine to a configuration group having associated with it the configuration order; selecting one configuration group at a time, based on the configuration order associated with each of the configuration groups; and determining for each selected configuration group which of the software routines assigned to the configuration group to include in the software system.
Claim 12
Independent Claim 132 words
A method in a computer system of configuring a software system to include a subset of a plurality of software routines, the method comprising the computer-implemented steps of: for each software routine, retrieving a list of one or more configuration orders associated with the software routine; initializing a plurality of configuration groups, each configuration group having associated with it a configuration order; for each software routine, for each configuration order associated with the software routine, assigning the software routine to a configuration group having associated with it the configuration order; selecting one configuration group at a time, based on the configuration order associated with each of the configuration groups; and determining for each selected configuration group which of the software routines assigned to the configuration group to include in the software system.
Claim 13
Dependent Claim 25 words
The method of claim 9 wherein the step of assigning the software routines assigns more than one software routine to at least one configuration group.
Claim 14
Dependent Claim 25 words
The method of claim 9 wherein each software routine includes executable code and a list of configuration groups to which the software routine is assigned.
Claim 15
Dependent Claim 36 words
The method of claim 9 wherein, for each software routine, the retrieved list of configuration groups with which the software routine is associated is stored within a file containing executable code for executing the software routine.
Claim 16
Dependent Claim 24 words
The method of claim 9 wherein the step of assigning assigns each of the plurality of software routines to one or more configuration groups.
Claim 17
Dependent Claim 25 words
The method of claim 9 wherein the step of including the selected software routines organizes the selected software routines into layers forming the software system.
Claim 18
Independent Claim 141 words
A method in a computer system of configuring a device driver to include a plurality of component drivers, the method comprising the computer-implemented steps of: for each of a multiplicity of component drivers, retrieving a list of one or more configuration orders associated with the software routine; initializing a plurality of configuration groups, each configuration group having associated with it one configuration order; for each of the multiplicity of component drivers, for each configuration order associated with the component driver, assigning the component driver to a configuration group having associated with it the configuration order; identifying each configuration group in an order based on the configuration order associated with the configuration group and selecting which of the component drivers assigned to the identified configuration group to include in the device driver; and including the selected component drivers in the device driver.
Claim 19
Independent Claim 141 words
A method in a computer system of configuring a device driver to include a plurality of component drivers, the method comprising the computer-implemented steps of: for each of a multiplicity of component drivers, retrieving a list of one or more configuration orders associated with the software routine; initializing a plurality of configuration groups, each configuration group having associated with it one configuration order; for each of the multiplicity of component drivers, for each configuration order associated with the component driver, assigning the component driver to a configuration group having associated with it the configuration order; identifying each configuration group in an order based on the configuration order associated with the configuration group and selecting which of the component drivers assigned to the identified configuration group to include in the device driver; and including the selected component drivers in the device driver.
Claim 20
Dependent Claim 25 words
The method of claim 15 wherein the step of assigning the component drivers assigns more than one component driver to at least one configuration group.
Claim 21
Dependent Claim 25 words
The method of claim 15 wherein each component driver includes executable code and a list of configuration groups to which the component driver is assigned.
Claim 22
Dependent Claim 36 words
The method of claim 15 wherein, for each component driver, the retrieved list of configuration groups with which the component driver is associated is stored within a file containing executable code for executing the component driver.
Claim 23
Dependent Claim 24 words
The method of claim 15 wherein the step of assigning assigns each of the plurality of component drivers to one or more configuration groups.
Claim 24
Dependent Claim 25 words
The method of claim 15 wherein the step of including the selected component drivers organizes the selected component drivers into layers forming the device driver.
Claim 25
Dependent Claim 113 words
A computer system for configuring a software system to include a plurality of software routines, the computer system comprising: a multiplicity of software routines each being assigned to at least one configuration group, such that at least one software routine is assigned to each of a plurality of configuration groups; means for selecting, a configuration group at a time, in an order based upon the identities of the configuration groups, which of the multiplicity of software routines assigned to the configuration group to include in the software system; and means for including in the software system the software routines that have been selected by the means for selecting the multiplicity of software routines.
Claim 26
Dependent Claim 113 words
A computer system for configuring a software system to include a plurality of software routines, the computer system comprising: a multiplicity of software routines each being assigned to at least one configuration group, such that at least one software routine is assigned to each of a plurality of configuration groups; means for selecting, a configuration group at a time, in an order based upon the identities of the configuration groups, which of the multiplicity of software routines assigned to the configuration group to include in the software system; and means for including in the software system the software routines that have been selected by the means for selecting the multiplicity of software routines.
Claim 27
Dependent Claim 29 words
The computer system of claim 21, further comprising a multiplicity of files, each storing the configuration order and executable code for executing one of the multiplicity of software routines.
Claim 28
Dependent Claim 24 words
The computer system of claim 21, further comprising means for organizing the multiplicity of software routines into layers, the layers forming the software system.
Claim 29
Dependent Claim 121 words
A computer system for configuring a device driver to include a plurality of component drivers, the computer system comprising: a multiplicity of component drivers each being assigned to at least one configuration group, such that at least one component driver is assigned to each of a plurality of configuration groups, each of the configuration groups having a unique identity; means for selecting, a configuration group at a time, in an order based upon the identities of the configuration groups, which of the multiplicity of component drivers assigned to the configuration group to include in the device driver; and means for including in the device driver component drivers that have been selected by the means for selecting the multiplicity of component drivers.
Claim 30
Dependent Claim 121 words
A computer system for configuring a device driver to include a plurality of component drivers, the computer system comprising: a multiplicity of component drivers each being assigned to at least one configuration group, such that at least one component driver is assigned to each of a plurality of configuration groups, each of the configuration groups having a unique identity; means for selecting, a configuration group at a time, in an order based upon the identities of the configuration groups, which of the multiplicity of component drivers assigned to the configuration group to include in the device driver; and means for including in the device driver component drivers that have been selected by the means for selecting the multiplicity of component drivers.
Claim 31
Dependent Claim 29 words
The computer system of claim 24 further comprising a multiplicity of files each storing the configuration order and executable code for executing one of the multiplicity of component drivers.
Claim 32
Dependent Claim 24 words
The computer system of claim 24 further comprising means for organizing the multiplicity of component drivers into layers, the layers forming the device driver.
Claim 33
Dependent Claim 53 words
The computer system of claim 24 wherein the multiplicity of component drivers are each assigned to a configuration group having a unique order number, and wherein the means for selecting component drivers to include in the device driver comprises means for selecting the configuration groups in an order based on the order numbers.

References Cited (Backward Citations)

US4468736A Cited
US4589063A Cited
US5075847A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1998-07-10 1999-01-09 1999-07-11 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2002-07-10 2003-01-09 2003-07-11 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2006-07-10 2007-01-09 2007-07-11 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag