Magnetic disk storage for storing data in disk block size from fixed length of host block in non-integer multiple of the disk block size
AssigneeEMC Corporation
InventorsArieh Don, Erez Ofer, Natan Vishlitzky
Life of this patent
Estimating the term…
Abstract
A method and apparatus for enabling a magnetic disk storage device that stores data according to a first data structure characterized by a fixed-length disk block size to respond to input/output requests from a host that define data according to a different data structure characterized by a different fixed-length host block size. A host adapter transfers requests and data between the host and a cache memory in the magnetic disk storage device as host blocks. A disk adapter transfers requests and data between the cache memory and magnetic disks as disk blocks. CRC data and a sector number are appended to each host block in a set of disk blocks.
Claims26
A method for processing input-output requests for data in a data processing system including a magnetic disk data storage device that stores data in fixed-length disk blocks of a first plurality of data bytes and a host that generates input-output requests for data using fixed-length host blocks of a second, non-integer multiple of data bytes, said method comprising the steps of:
- A) defining a buffer intermediate the host system and the magnetic disk data storage device, said buffer having a size that is at least the size of the larger of the host and disk blocks,
- B) establishing a correspondence between the sizes of the host and disk blocks,
- C) transferring data between the host and buffer in blocks corresponding to the size of the host blocks, and
- D) transferring data between the magnetic disk data storage device and the buffer as a number of disk blocks wherein the number of disk blocks transferred between the buffer and the magnetic disk data storage device is determined by the number of host blocks identified in the host input-output request and the correspondence in the host and disk block sizes.
A method for enabling the transfer of data between a magnetic disk storage device having a disk block size of a fixed length and a host that issues input-output requests including reference to host blocks of another, larger fixed length that is a non-integer multiple of the disk block size, said method comprising the steps of:
- A) defining in a cache memory a buffer having a size that is at least the size of a host block for storing a set of an integer number of disk blocks whereby the set of the disk blocks is capable of storing a host block,
- B) processing, in a host adapter connected to the host and the cache memory, input-output requests from the host by transferring each such request to the cache memory and by transferring corresponding data in host blocks between the host and the buffer, and
- C) processing, in a disk adapter, input-output requests in the cache memory by transferring corresponding sets of disk blocks between the buffer and the magnetic disk storage device.
Apparatus for processing input-output requests for data in a data processing system including a magnetic disk data storage device that stores data in fixed-length disk blocks of a first plurality of data bytes and a host generates input-output requests for data using fixed-length host blocks of a second, non-integer multiple of data bytes, said apparatus comprising:
- A) a buffer intermediate the host system and the data storage device, said buffer having a size that is at least the size of the larger of the host and disk blocks,
- B) a correspondency that establishes the correspondence between the sizes of the host and disk blocks,
- C) means for transferring data between the host and buffer in blocks corresponding to the size of the host blocks, and
- D) means for transferring data between the magnetic disk data storage device and the buffer as a number of disk blocks wherein the number of disk blocks transferred between the buffer and the magnetic disk data storage device is determined by the number of host blocks identified in the host input-output request and the host and disk block sizes in said correspondency.
A magnetic disk storage device having a disk block size of a fixed length for connection to a host that issues input-output requests including reference to host blocks of a larger fixed length that is a non-integer multiple of the disk block size, said device comprising:
- A) a buffer in a cache memory, said buffer having a size that is at least the size of a host block for storing a set of an integer number of disk blocks whereby a set of the disk blocks is capable of storing a host block,
- B) a host adapter connected to the host and the cache memory, said host adapter having a control for responding to input-output requests from the host by transferring an input-output request to said cache memory and by transferring corresponding data in host blocks between the host and said buffer, and
- C) a disk adapter connected to the cache memory and magnetic disk storage device, said disk adapter having a control for responding to input-output requests in said buffer by transferring corresponding sets of disk blocks between buffer and the magnetic disk storage device.
Dependencies are inferred from the claim text.