1Introduction 2============ 3The Tru64 port of sg3_utils contains those utilities that are _not_ 4specific to Linux. In some cases a utility could be ported but 5requires more work. An example is sg_dd which needs more work 6beyond the SCSI command pass through mechanism. 7 8Supported Utilities 9=================== 10Here is a list of utilities that have been ported: 11 sg_compare_and_write 12 sg_decode_sense 13 sg_format 14 sg_get_config 15 sg_get_lba_status 16 sg_ident 17 sg_inq [dropped ATA IDENTIFY DEVICE capability] 18 sg_logs 19 sg_luns 20 sg_modes 21 sg_opcodes 22 sg_persist 23 sg_prevent 24 sg_raw 25 sg_rdac 26 sg_read_block_limits 27 sg_read_buffer 28 sg_read_long 29 sg_readcap 30 sg_reassign 31 sg_referrals 32 sg_requests 33 sg_rmsn 34 sg_rtpg 35 sg_safte 36 sg_sanitize 37 sg_sat_identify 38 sg_sat_phy_event 39 sg_sat_set_features 40 sg_senddiag 41 sg_ses 42 sg_start 43 sg_stpg 44 sg_sync 45 sg_turs 46 sg_unmap 47 sg_verify 48 sg_vpd 49 sg_wr_mode 50 sg_write_buffer 51 sg_write_long 52 sg_write_same 53 54Most utility names are indicative of the main SCSI command 55that they execute. Some utilities are slightly higher level, for 56example sg_ses fetches SCSI Enclosure Services (SES) status pages and 57can send control pages. Each utility has a man page (placed in 58section 8). An overview of sg3_utils can be found at: 59https://sg.danny.cz/sg/sg3_utils.html . 60A copy of the "sg3_utils.html" file is in the "doc" subdirectory. 61 62This package uses autotools infrastructure with the now common 63"./configure ; make ; make install" sequence needed to build and install 64from the source found in the tarball. If the "./configure" sequence 65fails try using the ./autogen.sh prior to that sequence. 66 67Some man pages have examples which use Linux device names which hopefully 68will not confuse Tru64 users. 69 70 71Details 72======= 73Most of the ported utilities listed above use SCSI command functions 74declared in sg_cmds_*.h headers . Those SCSI command functions are 75implemented in the corresponding ".c" files. The ".c" files pass SCSI 76commands to the host operating system via an interface declared in sg_pt.h . 77There are currently five implementations of that interface depending on 78the host operating system: 79system: 80 - sg_pt_linux.c 81 - sg_pt_osf1.c [Tru64] 82 - sg_pt_freebsd.c 83 - sg_pt_solaris.c 84 - sg_pt_win32.c 85 86The sg_pt_osf1.c file uses the Tru64 CAM SCSI pass through mechanism. 87 88Tru64 does not have general library support for "long" options 89(e.g. "--verbose") which are used extensively by most of the 90utilities in this package. Rather than change all the utilities 91and their man/web pages a local implementation of the missing 92function "getopt_long()" has been placed in the "getopt_long" 93subdirectory. Currently only the Tru64 port uses it. 94 95 96Douglas Gilbert 9714th January 2013 98