Patent ID: 9075763
Filing Date: 2015-07-07
Classification: G06F

Abstract:
1. A method for managing non-volatile memory, wherein the non-volatile memory includes a plurality of data blocks, the method comprising: receiving a first plurality of commands for accessing the non-volatile memory, wherein the first plurality of commands includes at least one write command and at least one erase command, wherein the at least one write command and the at least one erase command specify a selected one data block of the plurality of data blocks; associating two or more commands of the first plurality of commands dependent upon metadata included in each of the two or more commands of the first plurality of commands, wherein the metadata in each of the two or more commands indicates the two or more commands relate to a same multi-step operation; determining a second plurality of commands different from the first plurality of commands dependent upon the associated commands, wherein at least one command of the first plurality of commands is excluded from the second plurality of commands dependent upon the metadata in the at least one command; promoting execution of a given command from the first plurality of commands over at least one other command in the second plurality of commands in response to a determination that a time lapsed from receipt of the given command is greater than a threshold time, wherein the time lapsed from receipt of the given command is determined dependent upon metadata in the given command; and executing the second plurality of commands in the non-volatile memory.