Ordered Filter Driver List Generation for Device Stack Ordering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computing systems lack a declarative method to order filter drivers, leading to inefficient processing and potential conflicts due to reliance on explicit ordering and knowledge of surrounding filters, which consumes resources and causes dependencies between different vendors.

Innovation Solution

A computerized method and system that generates an ordered filter driver list based on defined filter driver levels, allowing for declarative inclusion and registration of filter drivers by class, function, or purpose, reducing the need for extensive knowledge of other drivers and enabling seamless integration of new filter drivers while maintaining legacy functionality.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If explicit ordering mechanisms are used to determine filter driver placement, then the ordering can be controlled, but processing and memory resources are consumed and dependencies between vendors are created

Engineering Contradiction:
Improvefilter driver ordering controlVSAvoidprocessing and memory resource consumption
Core Design Contradiction:
Ease of operationVSUse of energy by moving object

Solution Approach 1:

The system performs preliminary evaluation of filter driver compatibility and ordering requirements during installation or system initialization, storing the results in a data structure. This pre-computed information is then reused during runtime without requiring repeated resource-intensive evaluations, thus resolving the contradiction between ordering control and resource consumption.

Inventive Principle:
Principle #10Preliminary action

2Use of energy by moving object

If runtime evaluation is used to determine filter driver placement, then resource consumption is reduced, but the system requires substantial knowledge of surrounding drivers and filters

Engineering Contradiction:
Improveprocessing and memory resource consumptionVSAvoidknowledge of surrounding drivers and filters
Core Design Contradiction:
Use of energy by moving objectVSDevice complexity

Solution Approach 1:

The system introduces an intermediary data structure that stores pre-evaluated filter driver ordering information and compatibility relationships. This intermediary layer abstracts the complex knowledge requirements from the runtime system, allowing efficient lookup and decision-making without requiring the runtime system to have substantial knowledge of all surrounding drivers and filters.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of manufacture

If separate executable installation programs are used for filter drivers, then installation can be performed, but processing and memory resources are affected and performance is reduced

Engineering Contradiction:
Improvefilter driver installationVSAvoiddevice performance
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The system merges the filter driver installation process with the main device installation process, eliminating the need for separate executable installation programs. Filter drivers are installed and integrated as part of the unified installation workflow, reducing the cumulative processing and memory resource consumption that would result from multiple separate installation executables running sequentially.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS10621130B1Ordering filter drivers in a device stack with filter levels
Publication Date: 2020.04.14 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10621130B1 patent drawing
  • US10621130B1 patent drawing
  • US10621130B1 patent drawing

AI summary

The disclosure herein describes generating an ordered filter driver list defining a processing order of filter drivers in a device stack for a device. A filter driver level order associated with the device is defined, and a request from an entity is received for an ordered filter driver list. Filter driver data of filter drivers associated with the device is accessed from a data store. The filter driver data includes an identifier and filter driver level of each filter driver. The ordered filter driver list is generated to include the filter driver identifiers of the plurality of filter drivers in an order of the associated filter driver levels in the filter driver level order. The ordered filter driver list is provided to the entity. The use of filter driver levels and an associated order enables accurate, declarative order assignment of filter drivers.