×

Moving data from file on storage volume to alternate location to free space

  • US 7,506,004 B2
  • Filed: 07/14/2005
  • Issued: 03/17/2009
  • Est. Priority Date: 07/14/2005
  • Status: Expired due to Fees
First Claim
Patent Images

1. A method in connection with a computing device having a storage volume, a file system managing the storage volume, and a file stored on the storage volume by the file system and accessed by such file system, the file being defined to include data and metadata relating to the data but being in a ghosted form where the data has been moved to an alternate location to free space on the volume, the metadata of the ghosted file including ghosting information for being employed to at least partially retrieve the moved data for the file from the alternate location, the method comprising a ghosting filter on the computing device, wherein the ghosting filter performs the steps comprising:

  • receiving a read command from an application with respect to a requested range of the data of the ghosted file, the read command having parameters including an offset into the requested range of the data of the ghosted file and a read length with respect to such requested range of the data;

    identifying within the requested range of the data any corresponding first segments of data already present in the ghosted file;

    if the identified first segments include all of the requested range of the data, responding to the read command with the requested range of the data;

    if the identified first segments do not include all of the requested range of the data;

    computing a first set comprising a range of each segment of the requested range of data that is not one of the first segment;

    identifying within the first set any corresponding second segments of data pending to be reconstituted from the alternate location to the ghosted file;

    if the identified second segments include all of the first set, responding to the read command with the requested range of the data once all necessary second segments of data pending to be reconstituted from the alternate location to the ghosted file are in fact reconstituted from the alternate location to the ghosted file;

    if the identified second segments do not include all of the first set;

    computing a second set comprising a range of each third segment of the requested range of data that is not one of the first segment and not one of the second segment;

    initiating reconstituting of each third segment of the requested range of the data of the ghosted file based on the received ghosting information and the data of the ghosted file at the alternate location; and

    responding to the read command with the requested range of the data once all necessary second and third segments of data are in fact reconstituted to the ghosted file.

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