IP Library Granted Patent US 12675443
Granted Patent B2
US 12675443 · App. 17/245,930 · Granted Jul 7, 2026

System and method for performing context aware operating file system virtualization

Inventor: Joseph Franklin Scheinberg (Austin, TX)
Assignee: Unity Technologies ApS
G06F16/188G06F16/152G06F16/156G06F16/16G06F16/1824
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 12675443
App. No.
17/245,930
Granted
Jul 7, 2026
Kind
B2
Abstract

A method of accessing content in a virtualized file system is disclosed. A virtualization API is called to enumerate a list of files within a target directory. The calling of the virtualization API includes bypassing a calling of an operating system API included on a device. The enumeration includes reading from a local data structure on the device. A content data item within a file of the enumerated list of files is determined to be required for an application to perform an operation. A content identifier is determined for the content data item. The content identifier is stored in the local data structure for subsequent access to the content data item.

Claims (28)

1 . A system comprising:

one or more computer processors;

one or more computer memories;

a set of instructions incorporated into the one or more computer memories, the set of instructions causing the one or more computer processors to perform operations, the operations comprising:

based on a number of files in a list of files within a target directory on a client device, calling a virtualization application programming interface (API) to enumerate the list of files within the target directory on the client device, the enumerating of the list of files including bypassing an operating system virtual file system module on the client device, the calling of the virtualization API including creating a data structure in a memory that includes the list of files, the bypassing of the operating system virtual file system module comprising avoiding an enumeration of the list of files by the operating system virtual file system module, the memory including one or more of a local cache memory on the client device or a remote cache memory on a hash server;

determining that, to perform an operation, an application on the client device requires data within a file of the enumerated list of files and determining a content identifier for the data; and

when a hash for the file is found in the data structure, using the hash substantially immediately and, when the hash for the file is not found in the data structure, reading the file via the operating system virtual file system module, converting the file from an initial data format to a target data format, calculating the hash for the file, and storing the hash and the content identifier in the data structure in the memory for speeding up subsequent access to the data, wherein the hash identifies the converted file.

2 . The system of claim 1 , the operations further comprising, based on a determination that the application requires the hash for the file, searching data structure for the hash during the subsequent access.

3 . The system of claim 2 , the operations further comprising, based on the hash being found in the remote cache memory, downloading the hash and storing the hash in the local cache memory for a further subsequent use.

4 . The system of claim 1 , the operations further comprising receiving a projection of the list of files through an operating system API.

5 . The system of claim 1 , wherein the application is associated with a target version of a project within a source control system in which files of the list of files are stored.

6 . The system of claim 1 , wherein the determining of the content identifier is based on a one or more groupings of the data.

7 . The system of claim 6 , wherein each of the one or more groupings corresponds to a separate grouping of texture data associated with a digital object or a part of a digital object.

8 . The system of claim 1 , wherein the operation is included in an animation function within the application and the content identifier identifies a grouping of texture data within the file.

9 . The system of claim 1 , the operations further comprising converting the file from an initial format to a target format based on a requirement of the application and wherein the hash is calculated for the converted file.

10 . The system of claim 1 , wherein the operating system virtual file system module is configured to create a placeholder for each file in the list of files.

11 . The system of claim 1 , wherein the target data format is a native data format associated with the application.

12 . A non-transitory computer-readable storage medium storing a set of instructions that, when executed by one or more computer processors, causes the one or more computer processors to perform operations, the operations comprising:

based on a number of files in a list of files within a target directory on a client device, calling a virtualization application programming interface (API) to enumerate the list of files within the target directory on the client device, the enumerating of the list of files including bypassing an operating system virtual file system module on the client device, the calling of the virtualization API including creating a data structure in a memory that includes the list of files, the bypassing of the operating system virtual file system module comprising avoiding an enumeration of the list of files by the operating system virtual file system module, the memory including one or more of a local cache memory on the client device or a remote cache memory on a hash server;

determining that, to perform an operation, an application on the client device requires data within a file of the enumerated list of files and determining a content identifier for the data; and

when a hash for the file is found in the data structure, using the hash substantially immediately and, when the hash for the file is not found in the data structure, reading the file via the operating system virtual file system module, converting the file from an initial data format to a target data format, calculating the hash for the file, and storing the hash and the content identifier in the data structure in the memory for speeding up subsequent access to the data, wherein the hash identifies the converted file.

13 . The non-transitory computer-readable storage medium of claim 12 , the operations further comprising, based on a determination that the application requires the hash for the file, searching the data structure for the hash during the subsequent access.

14 . The non-transitory computer-readable storage medium of claim 13 , the operations further comprising, based on the hash being found in the remote cache memory, downloading the hash and storing the hash in the local cache memory for a further subsequent use.

15 . The non-transitory computer-readable storage medium of claim 12 , the operations further comprising receiving a projection of the list of files through an operating system API.

16 . A method comprising:

based on a number of files in a list of files within a target directory on a client device, calling a virtualization application programming interface (API) to enumerate the list of files within the target directory on the client device, the enumerating of the list of files including bypassing an operating system virtual file system module on the client device, the calling of the virtualization API including creating a data structure in a memory that includes the list of files, the bypassing of the operating system virtual file system module comprising avoiding an enumeration of the list of files by the operating system virtual file system module, the memory including one or more of a local cache memory on the client device or a remote cache memory on a hash server;

determining that, to perform an operation, an application on the client device requires data within a file of the enumerated list of files and determining a content identifier for the data; and

when a hash for the file is found in the data structure, using the hash substantially immediately and, when the hash for the file is not found in the data structure, reading the file via the operating system virtual file system module, converting the file from an initial data format to a target data format, calculating the hash for the file, and storing the hash and the content identifier in the data structure in the memory for speeding up subsequent access to the data, wherein the hash identifies the converted file.