Hard Link Data Access Mechanism for File System Interoperability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional file systems lack interoperability with other systems and applications that use hard links, as they rely on non-hard-link data access mechanisms, limiting their ability to support multiple names for a single file across different directories.

Innovation Solution

Implementing a hard-link data access mechanism with File_Name-to-File_ID and File_ID-to-File_Object mappings, allowing files to be accessed using multiple names across different directories, while maintaining an independent directory policy, and rekeying existing files to support hard link operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a non-hard-link data access mechanism is used, then the file system maintains an independent directory policy, but the file system lacks interoperability with other systems and applications that use hard links

Engineering Contradiction:
Improveinteroperability with hard link systemsVSAvoiddata access mechanism complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The data access mechanism is segmented into two separate mapping tables: a first mapping table that maps file names to file identifiers, and a second mapping table that maps file identifiers to file objects. This segmentation allows the system to support hard links by enabling multiple file names to map to the same file identifier, while maintaining the existing independent directory policy through the file identifier to file object mapping.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If hard link operations are implemented, then multiple names can reference the same file, but the file system structure must be modified to support File_Name-to-File_ID and File_ID-to-File_Object mappings

Engineering Contradiction:
Improvemultiple names for single fileVSAvoidmapping structure complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

A file identifier is introduced as an intermediary between the file name and the file object. The first mapping table provides the File_Name-to-File_ID mapping, and the second mapping table provides the File_ID-to-File_Object mapping. This intermediary approach enables hard link operations where multiple file names can reference the same file identifier, which in turn references the same file object, without requiring complex restructuring of the existing file system architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If a non-hard-link data access mechanism is used, then the file system structure is simpler, but CPU computation increases due to less efficient file access operations

Engineering Contradiction:
Improvefile access efficiencyVSAvoiddata access mechanism complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system performs preliminary actions by maintaining two mapping tables that pre-establish the relationships between file names, file identifiers, and file objects. When a file access operation occurs, the system can quickly resolve the file name to a file identifier and then to the file object using these pre-established mappings, reducing the CPU computation required during actual file access operations compared to searching through directory structures in real-time.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP3970027B1Hard link operations for files in a file system
Publication Date: 2024.08.14 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP3970027B1 patent drawingFigure 1A~1B
  • EP3970027B1 patent drawingFigure 2~3
  • EP3970027B1 patent drawingFigure 4~5

AI summary

Methods, systems, and computer storage media for providing data operations using hard links (hard link operations) for files in a file system are provided. Accessing files using hard link operations is based on File_Name-to-File_ID mappings and File_ID-to-File_Object mappings stored in hard link data structures. In operation, a file name for file content is received to perform a data operaton. The file content is accessed using the file name. The file name is associated with a hard link data structure having a File_Name-to-File_ID mapping and a File_ID-to-File_Object mapping. The file name is also associated with an alternate file name for the file content. The alternate file name is associated with an alternate hard link data structure having an alternate File_Name-to-File mapping and the File_ID-to-File_Object mapping. The alternate file name is received. The file content is accessed using the alternate file name to perform an alternate data operation on the file content.