IP Library Granted Patent US 9,128,820
Granted Patent B1
US 9,128,820 · App. 13/526,241 · Granted Sep 8, 2015

File management among different zones of storage media

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 9,128,820
App. No.
13/526,241
Granted
Sep 8, 2015
Kind
B1
Abstract

Apparatus and methods for managing files among different zones of storage media in at least one non-volatile storage device. At least a first zone is associated with a first type of storage media and a second zone is associated with a second type of storage media. A file having at least one attribute is accepted with the at least one attribute describing a characteristic of the file. It is determined whether the at least one attribute meets an attribute criteria and the file is stored in the first zone and/or the second zone based on the determination of whether the at least one attribute meets the attribute criteria.

Claims (67)

1. A method performed by a computer system for managing files among different zones of storage media in at least one non-volatile data storage device of the computer system, wherein at least a first zone is associated with a first type of storage media and a second zone is associated with a second type of storage media, the method comprising:

accepting a file having a stream identifier associating the file with a stream of data;

determining whether the stream identifier matches a predetermined stream identifier for a particular stream of data among multiple streams of data; and

storing the file in the first zone if the stream identifier matches the predetermined stream identifier so that the file is stored with other files associated with the particular stream of data in the first zone.

2. The method of claim 1 , wherein the first zone includes overlapping tracks on a disk of a first disk drive.

3. The method of claim 2 , wherein the second zone includes non-overlapping tracks on a disk of the first disk drive, non-overlapping tracks on a disk of a second disk drive, or a memory region in a solid state drive.

4. The method of claim 3 , wherein the method further comprises marking the file as obsolete in the second zone if the file is stored in the first zone.

5. The method of claim 3 , further comprising:

determining whether a vibration condition exists in the at least one non-volatile data storage device; and

storing the file in the second zone when it is determined that the vibration condition exists.

6. The method of claim 1 , wherein the file is stored in both the first and second zones when it is determined that the stream identifier matches the predetermined stream identifier.

7. The method of claim 1 , wherein a first file system is used for files in the first zone and a second file system is used for files in the second zone.

8. The method of claim 1 , further comprising:

determining whether a vibration condition exists in the at least one non-volatile data storage device; and

delaying the storing of the file until it is determined that the vibration condition no longer exists.

9. The method of claim 1 , further comprising:

determining whether the computer system is in an idle state; and

increasing a rate of garbage collection of data in the at least one non-volatile data storage device if it is determined that the computer system is in the idle state.

10. The method of claim 1 , further comprising:

determining whether the computer system is in a low battery state; and

decreasing a rate of garbage collection of data in the at least one non-volatile data storage device if it is determined that the computer system is in the low battery state.

11. The method of claim 1 , wherein storing the file further comprises compressing the file before storing the file depending on whether the file is to be stored in the first zone or the second zone.

12. The method of claim 1 , wherein storing the file further comprises adding an error correction wrapper to the file before storing the file depending on whether the file is to be stored in the first zone or the second zone.

13. A host device capable of managing files among different zones of storage media in at least one non-volatile data storage device connected to the host device, wherein at least a first zone is associated with a first type of storage media and a second zone is associated with a second type of storage media, the host device comprising:

a memory configured to store computer-executable instructions; and

a processor configured to execute the computer-executable instructions stored in the memory;

wherein the computer-executable instructions stored in the memory cause the processor to:

accept a file having a stream identifier associating the file with a stream of data;

determine whether the stream identifier matches a predetermined stream identifier for a particular stream of data among multiple streams of data; and

generate a write command for the at least one non-volatile data storage device to store the file in the first zone if the stream identifier matches the predetermined stream identifier so that the file is stored with other files associated with the particular stream of data in the first zone.

14. The host device of claim 13 , wherein the first zone includes overlapping tracks on a disk of a first disk drive.

15. The host device of claim 14 , wherein the second zone includes non-overlapping tracks on a disk of the first disk drive, non-overlapping tracks on a disk of a second disk drive, or a memory region in a solid state drive.

16. The host device of claim 15 ,

wherein the computer-executable instructions stored in the memory further cause the processor to mark the file as obsolete in the second zone if the file is stored in the first zone.

17. The host device of claim 15 , wherein the computer-executable instructions further cause the processor to:

determine whether a vibration condition exists in the at least one non-volatile data storage device; and

generate the write command to store the file in the second zone when it is determined that the vibration condition exists.

18. The host device of claim 13 , wherein the processor generates the write command to store the file in the first zone and the second zone when the processor determines that the stream identifier matches the predetermined stream identifier.

19. The host device of claim 13 , wherein the processor executes computer-executable instructions of a first file system for files in the first zone and executes computer-executable instructions of a second file system for files in the second zone.

20. The host device of claim 13 , wherein the computer-executable instructions further cause the processor to:

determine whether a vibration condition exists in the at least one non-volatile data storage device; and

delay generating the write command when it is determined that the vibration condition exists.

21. The host device of claim 13 , wherein a computer system includes the host device and the at least one non-volatile data storage device, and wherein the computer-executable instructions stored in the memory further cause the processor to:

determine whether the computer system is in an idle state; and

increase a rate of garbage collection of data in the at least one non-volatile data storage device if it is determined that the computer system is in the idle state.

22. The host device of claim 13 , wherein a computer system includes the host device and the at least one non-volatile data storage device, and wherein the computer-executable instructions stored in the memory further cause the processor to:

determine whether the computer system is in a low battery state; and

decrease a rate of garbage collection of data in the at least one non-volatile data storage device if it is determined that the computer system is in the low battery state.

23. The host device of claim 13 , wherein the computer-executable instructions stored in the memory further cause the processor to compress the file before storing the file depending on whether the file is to be stored in the first zone or in the second zone.

24. The host device of claim 13 , wherein the computer-executable instructions stored in the memory further cause the processor to add an error correction wrapper to the file before storing the file depending on whether the file is to be stored in the first zone or in the second zone.

25. A non-transitory computer-readable medium storing computer-executable instructions for managing files among different zones of storage media in at least one non-volatile data storage device, wherein at least a first zone is associated with a first type of storage media and a second zone is associated with a second type of storage media, and wherein when the computer-executable instructions are executed by a processor, the computer-executable instructions cause the processor to:

accept a file having a stream identifier associating the file with a stream of data;

determine whether the stream identifier matches a predetermined stream identifier for a particular stream of data among multiple streams of data; and

generate a write command to store the file in the first zone if the stream identifier matches the predetermined stream identifier so that the file is stored with other files associated with the particular stream of data in the first zone.

26. A method performed by a computer system for managing files among different zones of storage media in at least one non-volatile data storage device of the computer system, wherein at least a first zone is associated with a first type of storage media and a second zone is associated with a second type of storage media, the method comprising:

accepting a file having at least one attribute describing a characteristic of the file;

determining whether the at least one attribute of the file meets an attribute criteria; and

storing the file in the first zone and/or the second zone based on the determination of whether the at least one attribute meets the attribute criteria,

wherein the file is stored in a zone of tracks on a disk of a first disk drive and in a zone on a disk of a second disk drive, and wherein rotation of the disk of the first disk drive is synchronized with rotation of the disk of the second disk drive and the location of the beginning of the file on the disk of the first disk drive is rotationally out of phase with the location of the beginning of the file on the disk of the second disk drive.

27. A host device capable of managing files among different zones of storage media in at least one non-volatile data storage device connected to the host device, wherein at least a first zone is associated with a first type of storage media and a second zone is associated with a second type of storage media, the host device comprising:

a memory configured to store computer-executable instructions; and

a processor configured to execute the computer-executable instructions stored in the memory;

wherein the computer-executable instructions stored in the memory cause the processor to:

accept a file having at least one attribute describing a characteristic of the file;

determine whether the at least one attribute of the file meets an attribute criteria; and

store the file in the first zone and/or the second zone based on the determination of whether the at least one attribute meets the attribute criteria,

wherein the file is stored in a zone of tracks on a disk of a first disk drive and in a zone on a disk of a second disk drive, and wherein rotation of the disk of the first disk drive is synchronized with rotation of the disk of the second disk drive and the location of the beginning of the file on the disk of the first disk drive is rotationally out of phase with the location of the beginning of the file on the disk of the second disk drive.

Assignments (8)
PATENT COLLATERAL AGREEMENT - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
PATENT COLLATERAL AGREEMENT - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
RELEASE OF SECURITY INTEREST AT REEL 038744 FRAME 0481 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058982/0556 →
RELEASE OF SECURITY INTEREST Recorded Mar 5, 2018
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 045501/0714 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038744/0481 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 038744/0281 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038722/0229 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 18, 2012
From: MALINA, JAMES N.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 028396/0275 →