System and method for scanning file systems

US12572425B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12572425-B2
Application numberUS-202318514193-A
CountryUS
Kind codeB2
Filing dateNov 20, 2023
Priority dateNov 23, 2022
Publication dateMar 10, 2026
Grant dateMar 10, 2026

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A system for scanning a file system is presented. The system includes a memory storing one or more processor-executable routines; and a processor communicatively coupled to the memory. The processor is configured to execute the one or more processor-executable routines to execute a file system scan using a depth-first concurrent scan method; create one or more checkpoints during the file system scan based on one or more predefined time intervals; and restart a scan from a latest checkpoint of the plurality of checkpoints. A related method is also presented.

First claim

Opening claim text (preview).

What is claimed is: 1 . A system for scanning a file system, the system comprising: a memory storing one or more processor-executable routines; and a processor communicatively coupled to the memory, the processor configured to execute the one or more processor-executable routines to: execute a file system scan using a depth-first concurrent scan method, the depth-first concurrent scan method comprising dividing a scan workload into a plurality of concurrent scan tracks, and assigning each scan track of the plurality of concurrent scan tracks to a corresponding scan worker; create one or more checkpoints during the file system scan based on one or more predefined time intervals; and restart a scan from a latest checkpoint of the one or more of checkpoints. 2 . The system of claim 1 , wherein the processor is configured to execute the one or more processor-executable routines to execute the depth-first concurrent scan method comprising splitting a scan track to assign a portion of the scan track to a first idle worker from an idle worker collection. 3 . The system of claim 2 , wherein the processor is configured to execute the one or more processor-executable routines to execute the depth-first concurrent scan method comprising: creating a scan worker and assigning a root track in a directory to the scan worker; sorting contents of the directory in ascending order; checking if an idle worker is available from the idle worker collection; and assigning a portion of the root track to the first idle worker if available. 4 . The system of claim 1 , wherein the processor is further configured to execute the one or more processor-executable routines to generate an array comprising a plurality of worker identifiers and corresponding scan track identifiers. 5 . The system of claim 4 , wherein the processor is further configured to execute the one or more processor-executable routines to maintain and mutate scan tracks allocated to one or more scan workers in the array comprising worker identifiers and scan track identifiers. 6 . The system of claim 4 , wherein the processor is configured to execute the one or more processor-executable routines to create the one or more checkpoints based on a snapshot of the array at the one or more predefined time intervals. 7 . The system of claim 1 , wherein the processor is configured to execute the one or more processor-executable routines to restart a scan from the latest checkpoint of the one or more checkpoints, wherein the latest checkpoint comprises a list of scan tracks that capture a state of each scan track worker of a plurality of scan track workers. 8 . The system of claim 7 , wherein the processor is configured to restart the scan from the latest checkpoint of the one or more checkpoints by: assigning a scan worker to a corresponding scan track based on an array comprising worker identifiers and scan track identifiers captured in a snapshot; assigning a scan worker to an idle worker collection if a scan track corresponding to a worker identifier is not present; and restarting a scan of a scan track from a track cursor if a scan track corresponding to a worker identifier is present. 9 . The system of claim 1 , wherein the processor is configured to execute the one or more processor-executable routines to restart a scan from a latest checkpoint of the one or more checkpoints upon crash or pre-determined termination of the file system scan. 10 . A method for scanning a file system, the method comprising: executing a file system scan using a depth-first concurrent scan method, wherein the depth-first concurrent scan method comprises dividing a scan workload into a plurality of concurrent scan tracks, and assigning each scan track of the plurality of concurrent scan tracks to a corresponding scan worker; creating one or more checkpoints during the file system scan based on one or more predefined time intervals; and restarting a scan from a latest checkpoint of the one or more checkpoints. 11 . The method of claim 10 , wherein the depth-first concurrent scan method comprises splitting a scan track to assign a portion of the scan track to a first idle worker from an idle worker collection. 12 . The method of claim 11 , wherein the depth-first concurrent scan method comprises: creating a scan worker and assigning a root track in a directory to the scan worker; sorting contents of the directory in ascending order; checking if an idle worker is available from the idle worker collection; and assigning a portion of the root track to the first idle worker if available. 13 . The method of claim 10 , wherein the method further comprises generating an array comprising a plurality of worker identifiers and corresponding scan track identifiers. 14 . The method of claim 13 , wherein the method further comprises maintaining and mutating scan tracks allocated to one or more scan workers in the array comprising worker identifiers and scan track identifiers. 15 . The method of claim 10 , wherein the method comprises creating the one or more checkpoints based on a snapshot, at the one or more predefined time intervals, of an array comprising worker identifiers and scan track identifiers. 16 . The method of claim 10 , wherein the method comprises restarting a scan from the latest checkpoint of the one or more checkpoints, wherein the latest checkpoint comprises a list of scan tracks that capture a state of each scan track worker of a plurality of scan track workers. 17 . The method of claim 16 , wherein the method comprises restarting the scan from the latest checkpoint of the one or more checkpoints by: assigning a scan worker to a corresponding scan track based on an array comprising worker identifiers and scan track identifiers captured in a snapshot; assigning a scan worker to an idle worker collection if a scan track corresponding to a worker identifier is not present; and restarting a scan of a scan track from a track cursor if a scan track corresponding to a worker identifier is present. 18 . The method of claim 10 , wherein the method comprises restarting a scan from a latest checkpoint of the one or more checkpoints upon crash or pre-determined termination of the file system scan.

Assignees

Inventors

Classifications

  • Backup scheduling policy · CPC title

  • Techniques for rebalancing the load in a distributed system · CPC title

  • Using snapshots, i.e. a logical point-in-time copy of the data · CPC title

  • to make the backup process non-disruptive · CPC title

  • Pool · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US12572425B2 cover?
A system for scanning a file system is presented. The system includes a memory storing one or more processor-executable routines; and a processor communicatively coupled to the memory. The processor is configured to execute the one or more processor-executable routines to execute a file system scan using a depth-first concurrent scan method; create one or more checkpoints during the file system…
Who is the assignee on this patent?
Druva Inc
What technology area does this patent fall under?
Primary CPC classification G06F11/1441. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 10 2026 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).