What is the point of read/write buffer in ATA?
Posted: Sat Jun 13, 2020 1:03 pm
So, this is kinda confusing and seems pointless to me. As ya'll know, ACS-4 defines "read buffer" and "write buffer" commands. The descriptions, for each, are:
And I'm just wondering, what is the point of these? What could they be used for in a practical setting? And do these descriptions mean that if I write data into the buffer -- whatever that is -- I have to then immediately read it back out?
And:The READ BUFFER command enables the host to read a 512-byte block of data. The command prior to a READ BUFFER command should be a WRITE BUFFER command. If the READ BUFFER command is not preceded by a WRITE BUFFER command, the data returned by READ BUFFER command may be indeterminate.
[/quote]The WRITE BUFFER command writes the contents of one 512-byte block of data to the device’s buffer. The READ BUFFER command and WRITE BUFFER command shall be synchronized within the device such that sequential WRITE BUFFER command and READ BUFFER command access the same bytes within the buffer.
And I'm just wondering, what is the point of these? What could they be used for in a practical setting? And do these descriptions mean that if I write data into the buffer -- whatever that is -- I have to then immediately read it back out?