public class Read6Cdb extends ReadCdb
READ (6)
SCSI command.
The READ (6) command requests that the device server read the specified logical block(s) and transfer them to the data-in buffer. Each logical block read includes user data and, if the medium is formatted with protection information enabled, protection information. Each logical block transferred includes user data but does not include protection information.
Although the READ (6) command is limited to addressing up to 2,097,151 logical blocks, this command has been maintained as mandatory since some system initialization routines require that the READ (6) command be used. System initialization routines should migrate from the READ (6) command to the READ (10) command, which is capable of addressing 4,294,947,295 logical blocks, or the READ (16) command, which is capable of addressing 18,446,744,073,709,551,615 logical blocks.
Constructor and Description |
---|
Read6Cdb(ByteBuffer buffer) |
Modifier and Type | Method and Description |
---|---|
protected long |
deserializeLogicalBlockAddress(ByteBuffer buffer)
Deserializes the value of the
ReadOrWriteCdb.logicalBlockAddress field. |
protected int |
deserializeTransferLength(ByteBuffer buffer)
Deserializes the value of the
ReadOrWriteCdb.transferLength field. |
protected int |
getLogicalBlockAddressFieldIndex()
Returns the index position of the first byte used for encoding the
ReadOrWriteCdb.logicalBlockAddress field. |
protected int |
getTransferLengthFieldIndex()
Returns the index position of the first byte used for encoding the
ReadOrWriteCdb.transferLength field. |
addIllegalFieldPointerForLogicalBlockAddress, addIllegalFieldPointerForTransferLength, getLogicalBlockAddress, getTransferLength
addIllegalFieldPointer, addIllegalFieldPointer, getIllegalFieldPointers, getScsiOperationCode, isNormalACA
public Read6Cdb(ByteBuffer buffer)
protected long deserializeLogicalBlockAddress(ByteBuffer buffer)
ReadOrWriteCdb
ReadOrWriteCdb.logicalBlockAddress
field.deserializeLogicalBlockAddress
in class ReadOrWriteCdb
buffer
- the ByteBuffer
containing the CDBReadOrWriteCdb.logicalBlockAddress
fieldprotected int deserializeTransferLength(ByteBuffer buffer)
ReadOrWriteCdb
ReadOrWriteCdb.transferLength
field.deserializeTransferLength
in class ReadOrWriteCdb
buffer
- the ByteBuffer
containing the CDBReadOrWriteCdb.transferLength
fieldprotected int getLogicalBlockAddressFieldIndex()
ReadOrWriteCdb
ReadOrWriteCdb.logicalBlockAddress
field.getLogicalBlockAddressFieldIndex
in class ReadOrWriteCdb
ReadOrWriteCdb.logicalBlockAddress
fieldprotected int getTransferLengthFieldIndex()
ReadOrWriteCdb
ReadOrWriteCdb.transferLength
field.getTransferLengthFieldIndex
in class ReadOrWriteCdb
ReadOrWriteCdb.transferLength
fieldCopyright © 2013 University of Konstanz, Distributed Systems Group. All Rights Reserved.