Patent attributes
In a write-anywhere filesystem, a write-in-place property allows the write-anywhere filesystem to selectively perform write-in-place processing for write allocation to selected data blocks. The filesystem stores a data block in a storage, and references the data block with both physical and virtual or logical block number references. The block number references allow the filesystem to manage storage of the data blocks through indirection. The data block may be modified, which generates an updated data block in memory having the new data. The filesystem performs write allocation to store the updated data block to the storage. Write-in-place within the write-anywhere filesystem allows the write-anywhere filesystem to write the data block to the same physical location and thus maintain the same physical block number reference while modifying the virtual block number reference.