IP Library Granted Patent US 11,226,933
Granted Patent B2
US 11,226,933 · App. 16/700,440 · Granted Jan 18, 2022

Enhancing write filter features using an auxiliary overlay

Inventors: Gokul Thiruchengode Vajravel (Bangalore, IN); Jyothi Bandakka (Bengaluru, IN); Ankit Kumar (Bengaluru, IN)
Assignee: Dell Products L.P.
G06F16/172G06F13/1668G06F16/1734
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 11,226,933
App. No.
16/700,440
Granted
Jan 18, 2022
Kind
B2
Abstract

An overlay optimizer can enhance the functionality of a write filter using an auxiliary overlay. An overlay optimizer can be loaded above a write filter. Based on the configuration of the write filter's overlay, the overlay optimizer can be configured to implement a volatile or persistent auxiliary overlay and then use the auxiliary overlay to selectively cache artifacts. To minimize the likelihood that the consumption of the write filter's overlay will exceed a critical threshold, the overly optimizer can be provided a list of monitored artifacts. The overlay optimizer can employ the list to selectively move monitored artifacts from the write filter's overlay to the auxiliary overlay when the overlay's consumption reaches a threshold. The overlay optimizer may also selectively allow I/O requests generated by particular applications while redirecting I/O requests generated by other applications.

Claims (53)

1. A method, implemented by an overlay optimizer, for enhancing functionality of a write filter by employing an auxiliary overlay, the method comprising:

receiving a list of artifacts that should be monitored, the list of artifacts being defined by an administrator to include artifacts for which updates should be persisted across reboots;

detecting that consumption of an overlay of the write filter has exceeded a threshold;

in response to the detection, accessing the overlay to identify artifacts that are cached in the overlay;

determining that one or more of the artifacts in the list of artifacts is cached in the overlay; and

moving the one or more artifacts from the overlay to the auxiliary overlay to thereby ensure that the one or more artifacts are persisted across reboots.

2. The method of claim 1 , further comprising:

in conjunction with a subsequent reboot, removing the one or more artifacts from the auxiliary overlay.

3. The method of claim 2 , wherein the overlay is persistent and wherein removing the one or more artifacts from the auxiliary overlay comprises formatting a partition on which the auxiliary overlay is implemented.

4. The method of claim 2 , wherein the overlay is volatile, and wherein removing the one or more artifacts from the auxiliary overlay comprises moving the one or more artifacts to the overlay.

5. The method of claim 1 , wherein the overlay optimizer comprises a file system filter driver that is loaded above the write filter and a service that sends the list of artifacts to the file system filter driver to enable the file system filter driver to move the one or more artifacts from the overlay to the auxiliary overlay.

6. The method of claim 5 , further comprising:

detecting, by the service, that the auxiliary overlay is volatile; and

removing the one or more artifacts from the auxiliary overlay.

7. The method of claim 1 , wherein the overlay optimizer comprises a registry filter driver that is loaded above the write filter and a service that sends the list of artifacts to the registry filter driver to enable the registry filter driver to move the one or more artifacts from the overlay to the auxiliary overlay.

8. The method of claim 1 , further comprising:

receiving a list of excluded applications;

receiving a first I/O request;

detecting that the first I/O request was originated by an application included in the list of excluded applications; and

allowing the first I/O request to be passed to the write filter.

9. The method of claim 8 , further comprising:

receiving a second I/O request;

detecting that the second I/O request was originated by an application not included in the list of excluded applications; and

redirecting the second I/O request to the auxiliary overlay.

10. The method of claim 9 , further comprising:

discarding the auxiliary overlay.

11. A method, implemented by an overlay optimizer, for enhancing functionality of a write filter by employing an auxiliary overlay, the method comprising:

receiving a list of excluded applications;

receiving a first I/O request that attempts to modify a first artifact stored on a protected volume;

detecting that the first I/O request was originated by an application included in the list of excluded applications;

allowing the first I/O request to be passed to the write filter to thereby cause the write filter to cache the modification to the first artifact in an overlay of the write filter;

receiving a second I/O request that attempts to modify a second artifact stored on the protected volume;

detecting that the second I/O request was originated by an application not included in the list of excluded applications; and

redirecting the second I/O request to the auxiliary overlay to thereby cause the modification to the second artifact to be cached in the auxiliary overlay.

12. The method of claim 11 , further comprising:

discarding the auxiliary overlay.

13. The method of claim 12 , wherein the overlay optimizer comprises a file system filter driver that is loaded above the write filter and a service that sends the list of excluded applications to the file system filter driver.

14. The method of claim 13 , wherein the service discards the auxiliary overlay by formatting a partition on which the auxiliary overlay is implemented.

15. The method of claim 11 , wherein the overlay optimizer comprises a registry filter driver that is loaded above the write filter and a service that sends the list of excluded applications to the registry filter driver, and wherein the first and second I/O requests are registry operations.

16. The method of claim 11 , further comprising:

receiving a list of monitored artifacts;

detecting that consumption of an overlay of the write filter has exceeded a threshold;

in response to the detection, determining that one or more of the monitored artifacts is cached in the overlay; and

moving the one or more monitored artifacts from the overlay to the auxiliary overlay.

17. The method of claim 16 , further comprising:

discarding the auxiliary overlay during a subsequent reboot.

18. One or more computer storage media storing computer executable instructions which when executed on a user device that includes a write filter implement an overlay optimizer that employs an auxiliary overlay to enhance functionality of the write filter by performing the following:

in response to detecting that an overlay of the write filter is configured to be maintained across the reboots of the user device, selectively causing artifacts to be stored in an auxiliary overlay; and

discarding the auxiliary overlay as part of a subsequent reboot.

19. The computer storage media of claim 18 , wherein selectively causing artifacts to be stored in an auxiliary overlay comprises one or more of:

moving monitored artifacts from an overlay of the write filter to the auxiliary overlay upon detecting that consumption of the overlay has reached a threshold; or

redirecting I/O requests to the auxiliary overlay upon detecting that the I/O requests were originated by a non-excluded application.

20. The computer storage media of claim 18 , wherein the artifacts include files and registry entries.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052216/0758) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0680 →
RELEASE OF SECURITY INTEREST AF REEL 052243 FRAME 0773 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0152 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 26, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052243/0773 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Mar 24, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052216/0758 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 2, 2019
From: VAJRAVEL, GOKUL THIRUCHENGODE; BANDAKKA, JYOTHI; KUMAR, ANKIT
To: DELL PRODUCTS L.P.
Reel/Frame 051154/0428 →