IP Library Granted Patent US 10,621,149
Granted Patent B1
US 10,621,149 · App. 14/255,775 · Granted Apr 14, 2020

Stable File System

Inventor: William Charles Easttom, II (McKinney, TX)
Assignee: OPEN INVENTION NETWORKS LLC
G06F16/185G06F16/13
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 10,621,149
App. No.
14/255,775
Granted
Apr 14, 2020
Kind
B1
Abstract

One or more embodiments of the present invention include a memory and a processor. The memory includes a plurality of files, a master cluster record, and an operating system. The processor is configured to execute the operating system in order to locate and load each cluster of a file. Each file includes a plurality of clusters and each cluster includes a first pointer and a second pointer. The first pointer is linked to a previous cluster of a file and second pointer is linked to a subsequent cluster of the file using a double linked list data structure.

Claims (38)

1. An apparatus, comprising:

memory comprising a plurality of files, a master cluster record, and an operating system; and

a processor configured to execute the operating system in order to locate and load each cluster of a file,

wherein the processor is further configured to locate a first cluster of the file and skip one or more intervening clusters on a medium when each cluster of the file is loaded,

the master cluster record comprises a list of each of the plurality of files and a first cluster for each of the plurality of files, the first cluster configured to point to a subsequent cluster of a file in sequence, and each subsequent cluster of the file points in sequence to next subsequent cluster of the file, and

each of the plurality of files comprise a plurality of clusters, and each of the plurality of clusters comprise a first 64-bit pointer at front of each of the plurality of clusters and a second 64-bit pointer at end of each of the plurality of clusters, the first pointer is linked to a previous cluster of a file and second pointer is linked to a subsequent cluster of the file using a double linked list data structure.

2. The apparatus of claim 1 , wherein the first pointer comprises an address of the previous cluster of the file and the second pointer comprises an address of the subsequent cluster of the file.

3. The apparatus of claim 2 , wherein the processor, when executing the operating system, is configured to determine a location of a first cluster of the file in the master cluster record and, based on the second pointer of the first cluster, the processor is configured to determine a location of the subsequent cluster of the file.

4. The apparatus of claim 1 , wherein each cluster comprises 128 sectors, and each sector is between 512 bytes and 65 kilobytes in size.

5. The apparatus of claim 1 , wherein the master cluster record comprises a first cluster of the memory.

6. The apparatus of claim 5 , wherein the master cluster record comprises first cluster information of each file stored in the memory.

7. The apparatus of claim 6 , wherein the master cluster record comprises a plurality of file names, an address for a first cluster of each file, permissions for each file, and x and y coordinates for the first cluster information of each file.

8. The apparatus of claim 7 , wherein the x and y coordinates identify a track and first cluster of each file.

9. The apparatus of claim 7 , wherein the permissions comprise read/write permission, a hard link or soft link permission, or read/write and hard link or soft link permission.

10. The apparatus of claim 7 , wherein the master cluster record comprises encryption information for each file.

11. A computer implemented method, comprising:

locating, in a master cluster record, a first cluster of a file;

skipping one or more intervening clusters on a medium, when loading each cluster of the file, to locate a second cluster of the file based on a 64-bit pointer in the cluster of the file;

when a 64-bit pointer of the second cluster references another cluster, locating the other cluster of the file; and

when the 64-bit pointer of the second cluster is empty, loading previously located clusters of the file, wherein

the master cluster record comprises a list of files and a first cluster for each of the files in sequence, and each subsequent cluster of the file points in sequence to next subsequent cluster of the file, and

each cluster of the file comprises a first 64-bit pointer at front of cluster and a second 64-bit pointer at end of cluster, the first pointer is linked to a previous cluster of a file and the second pointer is linked to a subsequent cluster of the file using a double linked list data structure.

12. The computer implemented method of claim 11 , further comprising: linking each cluster of the file utilizing a double linked list data structure.

13. The computer implemented method of claim 11 , wherein each cluster of the file comprises a first 64-bit pointer and a second 64-bit pointer, the first 64-bit pointer represents a previous cluster of the file and the second 64-bit pointer represents a subsequent cluster of the file.

14. The computer implemented method of claim 11 , wherein the master cluster record comprises a plurality of file names, an address for the first cluster of each file, permissions for each file, and x and y coordinates for the first cluster of each file.

15. The computer implemented method of claim 14 , wherein the x and y coordinates identify a track and the first cluster of each file.

16. A computer program embodied on a non-transitory computer-readable medium, the computer program causing the processor to:

locate, in a master cluster record, a first cluster of a file;

skip one or more intervening clusters on a medium, when each cluster of the file is loaded, to locate a second cluster of the file based on a 64-bit pointer in the cluster of the file;

when a 64-bit pointer of the second cluster references another cluster, locate the other cluster of the file; and

when the 64-bit pointer of the second cluster is empty, load previously located clusters of the file, wherein

the master cluster record comprises a list of files and a first cluster for each of the files in sequence, and each subsequent cluster of the file points in sequence to next subsequent cluster of the file, and

each cluster of the file comprises a first 64-bit pointer at front of cluster and a second 64-bit pointer at end of cluster, the first pointer is linked to a previous cluster of a file and the second pointer is linked to a subsequent cluster of the file using a double linked list data structure.

17. The computer program of claim 16 , wherein the computer program further causes the processor to:

link each cluster of the file utilizing a double linked list.

18. The computer program of claim 16 , wherein each cluster of the file comprises a first 64-bit pointer and a second 64-bit pointer, the first 64-bit pointer represents a previous cluster of the file and the second 64-bit pointer represents a subsequent cluster of the file.

19. The computer program of claim 16 , wherein the master cluster record comprises a plurality of file names, an address for the first cluster of each file, permissions for each file, and x and y coordinates for the first cluster of each file.

20. The computer program of claim 19 , wherein the x and y coordinates identify a track and the first cluster of each file.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 29, 2022
From: OPEN INVENTION NETWORK LLC
To: PHILIPS NORTH AMERICA LLC
Reel/Frame 061258/0318 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 22, 2021
From: EASTTOM, WILLIAM CHARLES, II
To: OPEN INVENTION NETWORK LLC
Reel/Frame 056623/0162 →
Continuity (2)
Continuation 13179216 · Jul 8, 2011
Provisional Application 61362839 · Jul 9, 2010