Method and apparatus for transferring data between a host device and a data
storage device having a first memory space and a second memory space. The first
memory space employs a first command queue and a second command queue. The host
issues access commands to store and retrieve data. The device stores commands in
the first command queue and moves the commands to the second command queue. Write
commands are removed from the first command queue and a message is sent to the
host device to signal that the command has completed. Read and write commands are
sorted at the second command queue for execution in an efficient order. Host transfer
resources and disc transfer resources are utilized in such a way as to allow independent
operation and to allow transfers using both sets of resources at once. More queue
space is available for commands at the first command queue.