×

Method and system for managing wear-level aware file systems

  • US 8,135,907 B2
  • Filed: 06/30/2008
  • Issued: 03/13/2012
  • Est. Priority Date: 06/30/2008
  • Status: Active Grant
First Claim
Patent Images

1. A method for retrieving a logical block, comprising:

  • receiving a request to read the logical block;

    obtaining metadata associated with the logical block, wherein the metadata comprises;

    a replication type used to store the logical block;

    physical block locations in a storage pool for each physical block associated with the logical block, wherein each physical block location specifies one of a plurality of storage devices in the storage pool;

    selecting a first set of physical block locations using a wear-level selection policy, wherein selecting the first set of physical locations comprises;

    identifying the first set of physical block locations using the metadata, wherein the physical blocks at the first set of physical block locations combine to form the logical block,determining a wear cost to read each of the physical blocks located at the first set of physical block locations to obtain a first plurality of wear costs,combining the first plurality of wear costs to obtain a first aggregate wear cost,identifying a second set of physical block locations using the metadata, wherein the physical blocks at the second set of physical block locations combine to form the logical block,determining a wear cost to read each of the physical blocks located at the second set of physical block locations to obtain a second plurality of wear costs,combining the second plurality of wear costs to obtain a second aggregate wear cost, andselecting the first set of physical block locations based on the first aggregate wear cost, the second aggregate wear cost, and the wear-level selection policy;

    generating a first set of I/O requests, wherein each I/O request specifies one of the first set of physical block locations;

    issuing a first set of I/O requests;

    receiving the first set of physical blocks in response to the first set of I/O requests; and

    constructing the logical block using the first set of physical blocks.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×