Patent ID: 9678966
Date: 2017-06-13
CPC Classifications: G06F

Claim:
1. A method of providing access to an updated file in a document management system comprising an application executing on a processor external to a storage device, wherein a file translation layer (FTL) map is maintained by an FTL between logical block addresses (LBAs) maintained by a file system and physical block addresses (PBAs) maintained by the storage device, the method comprising: receiving by the storage device a first command from the processor, the first command sent responsive to the application receiving an update comprising modified content of a first file and creation of a second file into which the modified content is copied, while access to the first file is maintained, wherein first file LBAs are mapped to first file PBAs representing storage locations of the first file on the storage device, and second file LBAs are mapped to second file PBAs representing storage locations of the second file on the storage device, and wherein the first file LBAs are different than the second file LBAs, and the first file PBAs are different from the second file PBAs, wherein parameters of the first command include a pair of LBA lists corresponding to the first file LBAs and the second file LBAs; atomically swapping the mapping of the first file LBAs from the first file PBAs to the second file PBAs in order, wherein mappings are created in the FTL map between the first file LBAs and the second file PBAs; trimming the mapping of the first file LBAs to the first file PBAs, wherein mappings are removed in the FTL map between the first file LBAs and the first file PBAs; and clearing the mapping of the second file LBAs to the second file PBAs, wherein mappings are removed in the FTL map between the second file LBAs and the second file PBAs.