Legal claims defining the scope of protection, as filed with the USPTO.
1. A method for reading data from a data storage device, the method comprising: receiving, from a media having data stored in a range of storage locations, a first portion of data and an associated first indicator, and a second portion of data and an associated second indicator, wherein the second indicator is non-sequential with respect to the first indicator and wherein the first indicator is equivalent to a target starting location of the range of storage locations; associating the first indicator with a range descriptor associated with the range of storage locations; associating the second indicator with an auxiliary list associated with the range of storage locations; receiving a third portion of data and an associated third indicator; upon determining that the third indicator is sequential with respect to the first indicator: associating the third indicator with the range descriptor associated with the range of storage locations; incrementing a count associated with the range of storage locations; and determining whether the second indicator is sequential with respect to the third indicator; and upon determining that the third indicator is not sequential with respect to the first indicator, associating the third indicator with the auxiliary list associated with the range of storage locations.
2. The method of claim 1 , further comprising incrementing the count associated with the range of storage locations upon determining that the second indicator is sequential with respect to the third indicator.
3. The method of claim 1 , wherein the first indicator, the second indicator and the third indicator are logical block addresses.
4. The method of claim 1 , further comprising determining whether the count associated with the range of storage locations is equivalent to a count of data locations in the range of data locations.
5. The method of claim 4 , further comprising processing the data associated with each indicator in sequence when the count associated with the range of storage locations is equivalent to the count of data locations in the range of data locations.
6. A data storage device, comprising: a read channel; and a controller configured to: receive a plurality of sequential data sectors and a plurality of non-sequential data sectors from the read channel, wherein each data sector has an associated indicator; store the sequential indicators in a list of available ordered data sectors; store the non-sequential indicators in a list of non-sequential data sectors; receive a subsequent data sector and an associated indicator from the read channel; and in response to receiving the subsequent data sector: determine whether the indicator of the subsequent data sector is sequential with respect to the sequential indicators in the list of available ordered data sectors; and upon determining that the indicator of the subsequent data sector is sequential with respect to the sequential indicators: update the list of available ordered data sectors; and determine whether one or more non-sequential indicators in the list of non-sequential data sectors is sequential with respect to the indicator of the subsequent data sector.
7. The data storage device of claim 6 , wherein the controller is further configured to increment a count associated with the number of sequential indicators in the list of available ordered data sectors.
8. The data storage device of claim 7 , wherein the controller is further configured to process data in the sequential data sectors when the count associated with the number of sequential indicators reaches a predetermined threshold.
9. The data storage device of claim 6 , wherein the indicators are logical block addresses.
10. The data storage device of claim 6 , wherein the controller is further configured to store the indicator of the subsequent data sector in the list of non-sequential data sectors in response to determining that the indicator of the subsequent data sector is not sequential with respect to the sequential indicators in the list of available ordered data sectors.
11. The data storage device of claim 6 , wherein the controller is further configured to return the sequential data sectors associated with the list of available ordered data sectors when the list of available ordered data sectors is equivalent to a desired range of data sectors.
12. An apparatus comprising a processor, wherein the processor is configured to: receive a plurality of sequential data sectors and a plurality of non-sequential data sectors, wherein each data sector has an associated indicator; store the sequential indicators in a list of available ordered data sectors; store the non-sequential indicators in a list of non-sequential data sectors; receive a subsequent data sector and an associated indicator; and in response to receiving the subsequent data sector: determine whether the indicator of the subsequent data sector is sequential with respect to the sequential indicators in the list of available ordered data sectors; and upon determining that the indicator of the subsequent data sector is sequential with respect to the sequential indicators: update the list of available ordered data sectors; and determine whether one or more non-sequential indicators in the list of non-sequential data sectors is sequential with respect to the indicator of the subsequent data sector.
13. The apparatus of claim 12 , wherein the processor is further configured to store the indicator of the subsequent data sector in the list of non-sequential data sectors in response to determining that the indicator of the subsequent data sector is not sequential with respect to the sequential indicators in the list of available ordered data sectors.
14. The apparatus of claim 12 , wherein the indicators are logical block addresses.
15. The apparatus of claim 12 , wherein the processor is further configured to increment a count associated with the number of sequential indicators in the list of available ordered data sectors.
16. The apparatus of claim 12 , wherein the processor is further configured to return the sequential data sectors associated with the list of available ordered data sectors when the count associated with the list of available ordered data sectors is equivalent to a desired range of data sectors.
17. A method for reading data from a data storage device, the method comprising: receiving, from a media having data stored in a range of storage locations, a first portion of data and an associated first indicator, and a second portion of data and an associated second indicator, wherein the second indicator is non-sequential with respect to the first indicator and wherein the first indicator is equivalent to a target starting location of the range of storage locations; associating the first indicator with a range descriptor associated with the range of storage locations; associating the second indicator with an auxiliary list associated with the range of storage locations; receiving a third portion of data and an associated third indicator; upon determining that the third indicator is sequential with respect to the first indicator: associating the third indicator with the range descriptor associated with the range of storage locations; and incrementing a count associated with the range of storage locations; upon determining that the third indicator is not sequential with respect to the first indicator, associating the third indicator with the auxiliary list associated with the range of storage locations; and in response to receiving the third portion of data, determining whether one or more indicators associated with the auxiliary list, and different from the third indicator, are sequential with respect to an indicator associated with the range descriptor.
18. A data storage device, comprising: a read channel; and a controller configured to: receive a plurality of sequential data sectors and a plurality of non-sequential data sectors from the read channel, wherein each data sector has an associated indicator; store the sequential indicators in a list of available ordered data sectors; store the non-sequential indicators in a list of non-sequential data sectors; receive a subsequent data sector and an associated indicator from the read channel; and in response to receiving the subsequent data sector: determine whether the indicator of the subsequent data sector is sequential with respect to the sequential indicators in the list of available ordered data sectors; upon determining that the indicator of the subsequent data sector is sequential with respect to the sequential indicators, update the list of available ordered data sectors; and determine whether one or more non-sequential indicators in the list of non-sequential data sectors, and different from the indicator of the subsequent data sector, are sequential with respect to an indicator in the list of available ordered data sectors.
19. An apparatus comprising a processor, wherein the processor is configured to: receive a plurality of sequential data sectors and a plurality of non-sequential data sectors, wherein each data sector has an associated indicator; store the sequential indicators in a list of available ordered data sectors; store the non-sequential indicators in a list of non-sequential data sectors; receive a subsequent data sector and an associated indicator; and in response to receiving the subsequent data sector: determine whether the indicator of the subsequent data sector is sequential with respect to the sequential indicators in the list of available ordered data sectors; upon determining that the indicator of the subsequent data sector is sequential with respect to the sequential indicators, update the list of available ordered data sectors; and determine whether one or more non-sequential indicators in the list of non-sequential data sectors, and different from the indicator of the subsequent data sector, are sequential with respect to an indicator in the list of available ordered data sectors.
Unknown
May 1, 2018
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.