1461135782-b90f932d-ba75-4aad-a4a3-ad7ac86ad536

1. A method comprising:
receiving a command for storing data to a plurality of data storage resources;
storing the data in a set of buffer storage locations;
defining a plurality of jobs for the command, each of the plurality of jobs having an associated data operation with at least one of the data storage resources; and
reallocating a subset of the buffer storage locations that stored the data for a completed job prior to completion of at least one other job.
2. The method of claim 1, wherein the command comprises a command for a first data write operation to the plurality of data storage resources, and wherein reallocating the subset of buffer storage locations comprises:
reallocating the subset of buffer storage locations for a second data write operation prior to completion of the first data write operation.
3. The method of claim 2, wherein reallocating the subset of buffer storage locations comprises:
storing at least a portion of data for the second data write operation in the reallocated buffer storage locations prior to completion of the plurality of jobs.
4. The method of claim 1, wherein the command comprises a command for a data write operation to the plurality of data storage resources, wherein reallocating the subset of buffer storage locations comprises:
reallocating the subset of buffer storage locations for a read operation prior to completion of the data write operation.
5. The method of claim 1, the plurality of jobs having a defined job order that is a function of logical addresses of the data, wherein the buffer storage locations storing data for the plurality of jobs are reallocated in an order that is different than the defined job order.
6. The method of claim 1, wherein each job has a portion of data stored in the buffer, the method further comprising:
issuing each job to a respective data storage resource with the portion of data stored in the buffer for the job.
7. The method of claim 6, further comprising:
receiving information from the respective data storage resource upon completion of each job, the information indicating an amount of buffer space to be reallocated.
8. The method of claim 7, further comprising:
transmitting the information to a host indicating the amount of buffer space to be reallocated.
9. The method of claim 1, wherein the plurality of data storage resources comprise a plurality of solid-state data memory devices.
10. The method of claim 1, and further comprising utilizing a data structure to concurrently manage each of the plurality of jobs.
11. The method of claim 10, wherein the data structure comprises a linked-list of completion information for the plurality of jobs, the linked-list comprising a plurality of nodes, each node of the plurality of nodes pertaining to one of the plurality of jobs.
12. The method of claim 11, wherein each job is represented by node data in a node of the linked-list, the node data for each job comprising:
a first field indicative of a total number of data blocks in the job; and
a second field indicative of a number data blocks written to the associated data storage resource for the job.
13. The method of claim 10, wherein the data structure comprises a command descriptor and a plurality of job descriptors, each job descriptor pertaining to one of the jobs and including information indicative of a total number of data blocks for the job, wherein the command descriptor includes data comprising:
a first field indicative of a number of data blocks for the command; and
a second field indicative of a number of data blocks written to the data storage resources for the plurality of jobs.
14. A data storage device comprising:
a host interface configured to receive a data command;
a plurality of data memory devices;
a buffer memory having storage locations configured to store data for the data command; and
a controller configured to:
define a plurality of jobs for the data command, each of the plurality of jobs having an associated data operation with at least one of the data memory devices;
receive an indication that a particular one of the jobs has completed; and
reallocate storage locations of the buffer that stored the data for the completed job, prior to completion of the plurality of jobs.
15. The data storage device of claim 14, wherein the data command comprises a first data write command and the storage locations that stored the data for the completed job are reallocated to store data for a second data write command.
16. The data storage device of claim 14, wherein the data command comprises a data write command and the storage locations that stored the data for the completed job are reallocated to store data for a read command, prior to completion of the plurality of jobs.
17. The data storage device of claim 14, wherein the data command comprises a data read command and the storage locations that stored the data for the completed job are reallocated to store data for a write command, prior to completion of the plurality of jobs.
18. A controller for a data storage system, the controller comprising:
a command interface configured to receive a data write command for a portion of data;
a memory interface configured to communicate with a plurality of data storage resources; and
a control circuit configured to:
storing the portion of data in a set of buffer storage locations of a buffer memory;
define a plurality of jobs for the data write command, each of the plurality of jobs having an associated data operation with one or more of the data storage resources; and
reallocate a subset of the buffer storage locations that stored the data for a completed job prior to completion of at least one other job.
19. The controller of claim 18, wherein the controller is configured to store data for a second data write command in the reallocated subset of buffer storage locations.
20. The controller of claim 18, wherein the plurality of data storage resources comprise a plurality of solid-state data memory devices.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A heat exchanger for heating, ventilation, air conditioning and refrigeration applications, the heat exchanger having
one or more tubes for carrying a first heat transfer fluid;
one or more fins, each having a first surface and a second surface in thermal communication with the tubes, at least some of the fins having
a plurality of annular fin collar bases that are located around the outside perimeters of the tubes, the bases extending from the first surface, at least some of the plurality of fin collar bases being provided with a plurality of bumps that extend at least partially convexly from the first surface for disturbing the heat transfer fluid.
2. The heat exchanger of claim 1 wherein the first heat transfer fluid comprises a refrigerant.
3. The heat exchanger of claim 1 wherein the second heat transfer fluid comprises air.
4. The heat exchanger of claim 1 wherein the plurality of bumps comprises four bumps.
5. The heat exchanger of claim 1 wherein at least some of the plurality of bumps have a shape that is selected from the group consisting of spherical, cone-shaped, pyramidal, and combinations thereof.
6. The heat exchanger of claim 5 wherein at least some of the bumps define one or more perforations in order to reduce the airside pressure drop across a fin’s surface.
7. The heat exchanger of claim 1 wherein the one or more fins have a surface topography that is selected from the group consisting of a plane, a louver, a corrugation, a wave, and combinations thereof.
8. The heat exchanger of claim 1, wherein at least some of the bumps are characterized by spherical arc length and a sector length, the arc length being about 1.3 times the sector length.
9. The heat exchanger of claim 1, wherein at least some of the bumps have a shape that is selected from the group consisting of an ellipsoid and a faceted sphere,
10. The heat exchanger of claim 1, wherein a plurality of bumps comprises four bumps, at least one being oriented at 30 degrees from an incoming airflow direction through a tube center line.
11. The heat exchanger of claim 1, wherein the plurality of bumps comprise two bumps that are spaced 180 degrees apart in relation to a tube center line.
12. The heat exchanger of claim 1, wherein the first heat transfer fluid comprises a combustion gas.
13. The heat exchanger of claim 1, wherein the second heat transfer fluid comprises water.
14. The heat exchanger of claim 13, wherein the water is supplemented with an antifreeze.
15. A method for improving the efficiency of a fin-tube heat exchanger, comprising the steps of:
providing tubes for carrying a first heat transfer fluid;
fabricating one or more fins to accommodate the tubes;
forming a collar in the one or more fins so that a predefined pattern of protrusions is formed that extend at least partially convexly from one side of the fins
placing one or more of the fins in thermal communication with the tubes;
positioning the fin collar bases around the outside perimeters of at least some of the tubes, so that at least some of the protrusions disturb a second heat transfer fluid that passes over the fins and the tubes.
16. (canceled)
17. A heat exchanger for heating, ventilation, air conditioning and refrigeration applications, the heat exchanger having
one or more tubes for carrying a first heat transfer fluid;
one or more fins, each having a first surface and a second surface in thermal communication with the tubes, at least some of the fins having
a plurality of annular fin collar bases that are located around the outside perimeters of the tubes, the bases extending from the first surface, at least some of the plurality of fin collar bases being provided with a plurality of bumps that extend at least partially convexly from the second surface for disturbing the heat transfer fluid.