Basic laws of physics dictate that there is not much leeway for hard drive performance improvements. For example, the limits of actuator movement, which is important for quick access times and proper I/O performance, are being reached. Additionally, rotation speeds and transfer rates cannot be increased indefinitely. However, command queuing, at least in theory, offers hard drives a way to more efficiently analyze commands in real time.
Command queuing is also applicable to multi-threaded environments, which are growing in application. Why? Since threads are designed to run in parallel, various commands can reach a hard drive at the same time.
Thus, introducing command queuing to the storage world makes more and more sense in order to accommodate an increasing amount of random access requirements inherent in multi-threaded applications.
While Command Queuing has been used for a long time in the SCSI area, it is now being applied to SATA as well.