Disk-Based Write Filter with Supporting Driver for File Exclusions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing file-based write filters, such as Unified Write Filter (UWF), are difficult to implement on devices running full Windows operating systems due to their file-system-specific nature and lack of support for advanced features, limiting their availability on PCs intended to function like thin clients.

Innovation Solution

A disk-based write filter is implemented, with a filter driver loaded below the file system driver to provide write filter functionality at the disk level, and a supporting driver loaded above the file system driver to enable file exclusions and commits, allowing for sector-level management and exclusion of specific files and directories.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a file-based write filter is implemented, then write protection functionality is provided, but compatibility with advanced file system features is lost

Engineering Contradiction:
Improvewrite protection functionalityVSAvoidcompatibility with advanced file system features
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The write filter is divided into two separate drivers: a disk-based filter driver that provides write protection at the sector level, and a file-based supporting driver that enables file-level exclusions and commits. This segmentation allows each driver to specialize in specific functions, with the filter driver handling low-level write redirection and the supporting driver managing file-system-specific operations, thereby achieving both write protection reliability and compatibility with advanced file system features

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The file-based supporting driver acts as an intermediary between the disk-based filter driver and the file system driver. It receives file-level exclusion and commit requests, translates them into sector-level operations that the filter driver can understand and execute, and coordinates the interaction between the two drivers. This intermediary role enables the system to support file-system-specific features while maintaining disk-level write protection

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If a disk-based write filter is implemented, then compatibility with advanced file systems is improved, but file-level exclusion and commit functionality is lost

Engineering Contradiction:
Improvecompatibility with advanced file systemsVSAvoidfile-level exclusion and commit functionality
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The file-based supporting driver serves as an intermediary that restores file-level control capabilities to the disk-based filter driver. It intercepts file-level exclusion and commit requests from the file system, translates them into sector-level operations, and communicates them to the filter driver. This intermediary layer enables file-level functionality to work seamlessly with the disk-based filter, providing both compatibility and ease of operation

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system replaces the need for a complex file-based filter driver with a simpler disk-based filter driver that operates at the sector level. File-level operations are substituted by having the supporting driver translate file-level requests into sector-level operations that the filter driver can handle. This substitution simplifies the core filter driver while maintaining file-level functionality through the supporting driver

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Ease of operation

If file-based write filter is used, then file-level management is enabled, but device complexity increases

Engineering Contradiction:
Improvefile-level managementVSAvoiddriver stack complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The write filter functionality is segmented into two distinct drivers with clearly defined roles: the disk-based filter driver handles write protection at the sector level, while the file-based supporting driver handles file-level exclusions and commits. This segmentation distributes complexity across two specialized components rather than concentrating all functionality in a single complex driver, making the overall system more manageable and easier to maintain

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11307800B2Supporting file exclusions and commits in disk-based write filters
Publication Date: 2022.04.19 DELL PROD LP
  • US11307800B2 patent drawing
  • US11307800B2 patent drawing
  • US11307800B2 patent drawing

AI summary

A disk-based write filter can include a filter driver that is loaded below the file system driver to thereby provide write filter functionality at the disk level, and a supporting driver that is loaded above the file system driver. When an excluded file is opened, the supporting driver can obtain the file's disk sector information and provide it to the filter driver to cause the filter driver to pass through I/O requests that target sectors defined in the file's disk sector information. When the excluded file is closed, the supporting driver can again obtain the file's disk sector information and provide it to the filter driver to allow the filter driver to identify any additional sectors that may have been allocated to the file. The filter driver can copy any such sectors from an overlay to disk and commence passing through I/O requests that target these sectors.