CPC G06F 12/0246 (2013.01) [G06F 3/0611 (2013.01); G06F 3/0638 (2013.01); G06F 3/0679 (2013.01); G06F 3/0688 (2013.01); G06F 8/654 (2018.02); G06F 11/1068 (2013.01); G06F 11/1072 (2013.01); G06F 12/10 (2013.01); G06F 16/1847 (2019.01); G06F 2015/766 (2013.01); G06F 2212/2022 (2013.01); G06F 2212/7207 (2013.01); G06F 2212/7208 (2013.01)] | 30 Claims |
1. A method comprising:
transmitting a query command to a solid state storage drive (SSD), wherein the SSD comprises flash memory divided into zones that are non-overlapping subdivisions of the flash memory, and responsively receiving:
a list of zones in the SSD;
starting logical block addresses for the zones;
capacities for the zones, wherein the starting logical block address and the capacity of each zone define a range of logical block addresses for that zone; and
extents to which zones are unutilized and can receive additional write data;
discovering information provided by the SSD about a specific one of the zones, the specific zone identified by its starting logical block address, wherein the information includes a state of the specific zone; and
in response to discovering the information, transmitting a maintenance command to the SSD, wherein the maintenance command identifies the specific zone by its starting logical block address.
|