Claims
- 1. In a computer system, a method, comprising:
maintaining assigned values in association with software modules, each software module having an assigned value, the assigned values having a relative order and there being an unassigned value between any two assigned values; and executing the software modules in an order determined by each of the assigned values.
- 2. The method of claim 1 wherein executing the software modules comprises calling the software modules.
- 3. The method of claim 2 wherein the software modules comprise filter drivers, and wherein calling the software modules includes passing file system requests thereto.
- 4. The method of claim 3 wherein the file system requests comprise input-output request packets.
- 5. The method of claim 1 wherein the software modules are attached in a stack.
- 6. The method of claim 1 wherein executing the software modules in an order determined by each of the assigned values includes maintaining an order.
- 7. The method of claim 1 further comprising evaluating criteria associated with the software modules, and wherein executing the software modules comprises selecting only software module that meet the criteria for execution.
- 8. The method of claim 7 wherein the software modules comprise filter drivers, and wherein evaluating criteria associated with the software modules comprises evaluating a file system request.
- 9. The method of claim 1 further comprising, assigning an assigned value to a software module.
- 10. The method of claim 9 further comprising, classifying a software module based on a type thereof, and wherein the assigned value corresponds to the type.
- 11. In a computer system, a mechanism comprising:
a plurality of software modules, each software module having an assigned value indicative of a relative order; and an ordering mechanism configured to evaluate each value and to arrange the software modules for execution in a relative order determined by the assigned values.
- 12. The mechanism of claim 11 wherein the ordering mechanism arranges the software modules by attaching them in a stacked configuration.
- 13. The mechanism of claim 11 wherein the software modules comprise filter drivers.
- 14. The mechanism of claim 11 wherein the software modules are configured to handle input-output request packets.
- 15. The mechanism of claim 11 further comprising an operating system for passing file system requests to the filter drivers.
- 16. The mechanism of claim 11 wherein the software modules comprise filter drivers, and further comprising a filter manager, the filter manager including the ordering mechanism and further configured to call the filter drivers in the relative order determined by the assigned values.
- 17. The mechanism of claim 16 wherein the filter manager calls the filter drivers to handle a file system request.
- 18. The mechanism of claim 17 wherein the filter manager is configured to evaluate criteria associated with the file system request prior to calling the filter drivers for execution in the relative order.
- 19. The mechanism of claim 11 wherein there is unassigned value between any two assigned values of any two software modules.
- 20. The mechanism of claim 11 wherein each assigned value is unique to a particular software modules.
- 21. A computer-readable medium having computer-executable instructions, comprising:
maintaining assigned values in association with filter drivers, each filter driver having an assigned value, the assigned values having a relative order and there being an unassigned value between any two assigned values; and executing the filter drivers in an order determined by each of the assigned values.
- 22. The computer-readable medium having computer-executable instructions of claim 21 wherein executing the filter drivers in an order determined by each of the assigned values includes attaching the filter drivers in a stack, and passing file system requests thereto.
- 23. The computer-readable medium having computer-executable instructions of claim 21 wherein executing the filter drivers in an order determined by each of the assigned values includes calling the filter drivers in the order determined by each of the assigned values to pass file system requests thereto.
- 24. A method, comprising:
classifying software modules into groups based on types thereof; assigning each software module a value based on its group, each assigned value having a relative order and there being an unassigned value between any two assigned values; and maintaining an association between each software module and its assigned value.
- 25. A computer-readable medium having computer-executable instructions for performing the method of claim 24.
CROSS-REFERENCE TO RELATED APPLICATION
[0001] The present invention is a continuation-in-part of U.S. patent application Ser. No. 09/505,344.
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
09505344 |
Feb 2000 |
US |
Child |
09768098 |
Jan 2001 |
US |