发明名称 Emulating a skip read command
摘要 In an embodiment, a skip read command is received that requests transfer of a requested block from a storage device and that requests non-transfer of a skipped block from the storage device. The skip read command specifies a skip mask that comprises an identification of a location of the requested block relative to a location of the skipped block at the storage device. In response to the skip read command, the requested block and the skipped block are transferred from the storage device by creating a read command that requests transfer of the requested block and the skipped block and sending the read command to the storage device. In various embodiments, the skipped block is transferred to a temporary buffer and not transferred to a destination buffer, or the skipped block is transferred to the destination buffer, but overwritten by a transfer of the requested block to the destination buffer.
申请公布号 US8892807(B2) 申请公布日期 2014.11.18
申请号 US201113088665 申请日期 2011.04.18
申请人 International Business Machines Corporation 发明人 Brown William A.;Crowley Thomas R.;Howe Steven M.;Whitney Kristopher C.
分类号 G06F12/00;G06F13/16;G06F9/00 主分类号 G06F12/00
代理机构 代理人 Gamon Owen J.;Truelson Roy W.
主权项 1. A method comprising: receiving a skip read command from a client that requests transfer of at least one requested block within a range of consecutive logical blocks from a storage device to the client and that requests non-transfer of at least one skipped block within said range of consecutive logical blocks from the storage device, said skip read command including skip data specifying, with respect to each logical block within said range of logical blocks, whether the respective logical block is a requested block or a skipped block; determining whether the storage device supports a skip read operation; responsive to determining that the storage device supports the skip read operation, sending the skip read command to the storage device, and responsive thereto, receiving the at least one requested block from the storage device into a destination buffer; responsive to determining that the storage device does not support the skip read operation, (a) creating a read command to the storage device, the read command requesting transfer of all blocks within said range of consecutive logical blocks from the storage device, (b) sending the read command to the storage device, (c) in response to sending the read command, receiving the at least one requested block and the at least one skipped block from the storage device, and (d) in response to receiving the at least one requested block and the at least one skipped block from the storage device, writing only the at least one requested block without the at least one skipped block to said destination buffer; and providing the contents of said destination buffer to the client.
地址 Armonk NY US