Information processing device, program, and recording medium
AssigneeSony Interactive Entertainment Inc.
InventorNaoto Okino
Life of this patent
Estimating the term…
Abstract
An information processing device includes: a metadata retaining section retaining metadata of a file formed by a plurality of data blocks; a correspondence file retaining section retaining a correspondence file associating information identifying a recording location of a data block with information identifying the metadata retaining section retaining the metadata of the data block; a change processing section changing the recording location of the data block; and an update processing section updating the metadata retained by the metadata retaining section. The update processing section refers to the correspondence file, identifies the metadata retaining section retaining the metadata of the data block whose recording location is changed by the change processing section, and updates the metadata.
Claims15
An information processing device, comprising:
- a memory containing a plurality of data blocks constituting a computer data file;
- a file management system comprising a direct index table containing a plurality of metadata entries, wherein:
- (i) each of a subset of the plurality of metadata entries of the direct index table containing a data block number reference to a respective one of a base subset of the plurality of data blocks, and
- (ii) when a totality of the plurality of data blocks of the computer data file is too large to be referenced by the subset of the plurality of metadata entries of the direct index table, then a first of the plurality of metadata entries outside the subset of the plurality of metadata entries of the direct index table, contains an indirect index table number reference to a first indirect index table containing a plurality of metadata entries, each metadata entry of the first indirect index table containing a data block number reference to a respective one of a first subset of the plurality of data blocks outside the base subset of the plurality of data blocks;
- and
- a defragmenting system comprising a correspondence table including a plurality of entries, one entry for each of the plurality of data blocks of the computer file, each entry including a respective one of the block number references stored in association with a respective indicator flag and a respective index number, and the respective index flag indicating whether the respective index number references the direct index table or references the first indirect index table, wherein the defragmentation system operates to:
- determine that at least one of the data blocks stored in the memory is to be moved from a current location to a new location,
- search the correspondence table for entry containing the data block number reference for the at least one of the data blocks,
- obtain the respective indicator flag and the respective index number for the at least one of the data blocks,
- change the data block number reference for the at least one of the data blocks to a new data block reference number in accordance with the determination that the at least one of the data blocks is to be moved from the current location to the new location,
- change the data block number reference in the correspondence table for the at least one of the data blocks to the new data block reference number, and
- change the metadata entry of the direct index table or the first indirect index table referenced by the index number for the at least one of the data blocks to include the new data block reference number.
A method, comprising:
- storing a plurality of data blocks constituting a computer data file in a memory;
- providing a direct index table containing a plurality of metadata entries, wherein:
- (i) each of a subset of the plurality of metadata entries of the direct index table containing a data block number reference to a respective one of a base subset of the plurality of data blocks, and
- (ii) when a totality of the plurality of data blocks of the computer data file is too large to be referenced by the subset of the plurality of metadata entries of the direct index table, then a first of the plurality of metadata entries outside the subset of the plurality of metadata entries of the direct index table, contains an indirect index table number reference to a first indirect index table containing a plurality of metadata entries, each metadata entry of the first indirect index table containing a data block number reference to a respective one of a first subset of the plurality of data blocks outside the base subset of the plurality of data blocks;
- providing a correspondence table including a plurality of entries, one entry for each of the plurality of data blocks of the computer file, each entry including a respective one of the block number references stored in association with a respective indicator flag and a respective index number, and the respective index flag indicating whether the respective index number references the direct index table or references the first indirect index table;
- and
- defragmenting the stored plurality of data blocks by:
- determining that at least one of the data blocks stored in the memory is to be moved from a current location to a new location,
- searching the correspondence table for entry containing the data block number reference for the at least one of the data blocks,
- obtaining the respective indicator flag and the respective index number for the at least one of the data blocks,
- changing the data block number reference for the at least one of the data blocks to a new data block reference number in accordance with the determination that the at least one of the data blocks is to be moved from the current location to the new location,
- changing the data block number reference in the correspondence table for the at least one of the data blocks to the new data block reference number, and
- changing the metadata entry of the direct index table or the first indirect index table referenced by the index number for the at least one of the data blocks to include the new data block reference number.
A non-transitory, computer readable storage medium containing a computer program, which when executed by a computer system, causes the computer system to carry out actions, comprising:
- storing a plurality of data blocks constituting a computer data file in a memory;
- providing a direct index table containing a plurality of metadata entries, wherein:
- (i) each of a subset of the plurality of metadata entries of the direct index table containing a data block number reference to a respective one of a base subset of the plurality of data blocks, and
- (ii) when a totality of the plurality of data blocks of the computer data file is too large to be referenced by the subset of the plurality of metadata entries of the direct index table, then a first of the plurality of metadata entries outside the subset of the plurality of metadata entries of the direct index table, contains an indirect index table number reference to a first indirect index table containing a plurality of metadata entries, each metadata entry of the first indirect index table containing a data block number reference to a respective one of a first subset of the plurality of data blocks outside the base subset of the plurality of data blocks;
- providing a correspondence table including a plurality of entries, one entry for each of the plurality of data blocks of the computer file, each entry including a respective one of the block number references stored in association with a respective indicator flag and a respective index number, and the respective index flag indicating whether the respective index number references the direct index table or references the first indirect index table;
- and
- defragmenting the stored plurality of data blocks by:
- determining that at least one of the data blocks stored in the memory is to be moved from a current location to a new location,
- searching the correspondence table for entry containing the data block number reference for the at least one of the data blocks,
- obtaining the respective indicator flag and the respective index number for the at least one of the data blocks,
- changing the data block number reference for the at least one of the data blocks to a new data block reference number in accordance with the determination that the at least one of the data blocks is to be moved from the current location to the new location,
- changing the data block number reference in the correspondence table for the at least one of the data blocks to the new data block reference number, and
- changing the metadata entry of the direct index table or the first indirect index table referenced by the index number for the at least one of the data blocks to include the new data block reference number.
Dependencies are inferred from the claim text.