SCSI command
From Wikipedia, the free encyclopedia
In SCSI computer storage, a command is the basic unit of communication. The SCSI command architecture was originally defined for parallel SCSI buses but has been carried forward with minimal change for use with Fibre Channel, iSCSI and Serial Attached SCSI.
In SCSI protocol, the initiator sends a SCSI command to the target which then responds. SCSI commands are sent in a Command Descriptor Block (CDB). The CDB consists of a one byte operation code followed by five or more bytes containing command-specific parameters. At the end of the command the target returns a Status Code byte.
The rest of this article contains a list of SCSI commands, firstly in operation code order and secondly in alphabetical order. There are links to detailed descriptions for the more common SCSI commands:
[edit] List of SCSI commands by operation code
Code | Command |
---|---|
00 | TEST UNIT READY |
01 | REZERO UNIT |
03 | REQUEST SENSE |
04 | FORMAT UNIT |
07 | REASSIGN BLOCKS |
08 | READ (6) |
0A | WRITE (6) |
0B | SEEK (6) |
11 | SPACE (6) |
12 | INQUIRY |
15 | MODE SELECT (6) |
16 | RESERVE (6) |
17 | RELEASE (6) |
18 | COPY |
1A | MODE SENSE (6) |
1B | START/STOP UNIT |
1C | RECEIVE DIAGNOSTIC RESULTS |
1D | SEND DIAGNOSTIC |
1E | PREVENT/ALLOW MEDIUM REMOVAL |
23 | READ FORMAT CAPACITIES (MMC) |
25 | READ CAPACITY |
28 | READ (10) |
2A | WRITE (10) |
2B | SEEK (10) |
2E | WRITE AND VERIFY |
2F | VERIFY |
30 | SEARCH DATA HIGH |
31 | SEARCH DATA EQUAL |
32 | SEARCH DATA LOW |
33 | SET LIMITS (10) |
34 | PRE-FETCH |
35 | SYNCHRONIZE CACHE |
36 | LOCK/UNLOCK CACHE |
37 | READ DEFECT DATA |
39 | COMPARE |
3A | COPY AND VERIFY |
3B | WRITE BUFFER |
3C | READ BUFFER |
3E | READ LONG |
3F | WRITE LONG |
40 | CHANGE DEFINITION |
41 | WRITE SAME |
4C | LOG SELECT |
4D | LOG SENSE |
50 | XDWRITE |
51 | XPWRITE |
52 | XDREAD |
55 | MODE SELECT (10) |
56 | RESERVE (10) |
57 | RELEASE (10) |
5A | MODE SENSE (10) |
5E | PERSISTENT RESERVE IN |
5F | PERSISTENT RESERVE OUT |
80 | XDWRITE EXTENDED |
82 | REGENERATE |
A0 | REPORT LUNS |
A5 | MOVE MEDIUM |
A8 | READ (12) |
AA | WRITE (12) |
B3 | SET LIMITS (12) |
B4 | READ ELEMENT STATUS |
B7 | READ DEFECT DATA (12) |
[edit] List of SCSI commands, alphabetical
Code | Command |
---|---|
40 | CHANGE DEFINITION |
39 | COMPARE |
18 | COPY |
3A | COPY AND VERIFY |
04 | FORMAT UNIT |
12 | INQUIRY {Mandatory} |
36 | LOCK/UNLOCK CACHE |
4C | LOG SELECT |
4D | LOG SENSE |
15 | MODE SELECT (6) |
55 | MODE SELECT (10) |
1A | MODE SENSE (6) |
5A | MODE SENSE (10) |
A5 | MOVE MEDIUM |
5E | PERSISTENT RESERVE IN |
5F | PERSISTENT RESERVE OUT |
34 | PRE-FETCH |
1E | PREVENT/ALLOW MEDIUM REMOVAL |
08 | READ (6) |
28 | READ (10) |
A8 | READ (12) |
3C | READ BUFFER |
25 | READ CAPACITY |
37 | READ DEFECT DATA (10) |
B7 | READ DEFECT DATA (12) |
B4 | READ ELEMENT STATUS |
23 | READ FORMAT CAPACITIES (MMC) |
3E | READ LONG |
07 | REASSIGN BLOCKS |
1C | RECEIVE DIAGNOSTIC RESULTS |
82 | REGENERATE |
17 | RELEASE (6) |
57 | RELEASE (10) |
A0 | REPORT LUNS |
03 | REQUEST SENSE {Mandatory} |
16 | RESERVE (6) |
56 | RESERVE (10) |
01 | REZERO UNIT |
31 | SEARCH DATA EQUAL |
30 | SEARCH DATA HIGH |
32 | SEARCH DATA LOW |
0B | SEEK (6) |
2B | SEEK (10) |
1D | SEND DIAGNOSTIC {Mandatory} |
33 | SET LIMITS (10) |
B3 | SET LIMITS (12) |
11 | SPACE (6) |
1B | START/STOP UNIT |
35 | SYNCHRONIZE CACHE |
00 | TEST UNIT READY {Mandatory} |
2F | VERIFY |
0A | WRITE (6) |
2A | WRITE (10) |
AA | WRITE (12) |
2E | WRITE AND VERIFY |
3B | WRITE BUFFER |
3F | WRITE LONG |
41 | WRITE SAME |
52 | XDREAD |
50 | XDWRITE |
80 | XDWRITE EXTENDED |
51 | XPWRITE |
[edit] External links
- SPC-4 : comprehensive list of all SCSI 3 commands (see table D.2 in Annex D)