DST/DIS SCSI Tape Drive UNIX Software Programmer’s Guide FOR Digital Equipment Corporation Digital UNIX Hewlett-Packard HP-UX IBM AIX Silicon Graphics IRIX Sun Microsystems Solaris ® 1308911-02 ™
NOTICE The contents of this technical manual have been checked and are believed to be accurate. However, no responsibility is assumed for any inaccuracies in the information provided herein. Ampex Corporation reserves the right to make changes without notice to improve reliability, function or design. TRADEMARKS AIX is a registered trademark of International Business Machines Corporation. DEC is a trademark of Digital Equipment Corporation. DST is a registered trademark of Ampex Corporation.
DST/DIS Tape Drive UNIX Programmer’s Guide Addendum Addendum Introduction This addendum provides supplementary information applicable to using the libdd2 API version 6.0 with SGI Irix 6.5 tpsc magnetic tape (mt) and devscsi passthru (pt) devices, or Irix 6.4 TDR tpsc devices. The information covers only those features that are unique to the IRIX TDR5 configuration. See the remainder of the document for information on other features that are common to all supported UNIX platforms.
Model No. DST/DIS Tape Drive UNIX Programmer’s Guide Running Head Addendum • – dst_setpos() accommodates tape formats up to 255 partitions. If you need additional positioning capability, use dst_setpart_pt() which accommodates tape formats up to 1024 partitions. – dst_status() does not clear an error code. The last error code is retained until it is overwritten by another error code. – dst_version() does not report device driver strings.
DST/DIS Tape Drive UNIX Programmer’s Guide Note: Addendum To use pt functions, the function goes through the devscsi driver. Upon every system reboot, devscsi permissions are reset to root access only. Therefore, to use the passthru function, the devscsi permissions must be changed to give user read/write access after every reboot. Functions that use the pt interface must specify a file descriptor that provides a devscsi path name. To obtain a devscsi file descriptor: 1.
Running Head Addendum Model No. DST/DIS Tape Drive UNIX Programmer’s Guide dst_setnoflush() NAME dst_setnoflush() - select buffered or unbuffered filemarks. SYNOPSIS #include int dst_setnoflush(int fd, int noflush_setting); DESCRIPTION dst_setnoflush() configures the DST_NO_FLUSH drive interface parameter which controls whether or not the buffer is flushed to tape when filemarks are written.
DST/DIS Tape Drive UNIX Programmer’s Guide Addendum dst_getptpathname() NAME dst_getptpathname() - get devscsi pathname needed for libdd2 API passthru (*_pt) functions. SYNOPSIS #include int dst_getptpathname(int fd, char *devscsi_name, int namelen); DESCRIPTION dst_getptpathname() retrieves the devscsi pathname of an open tpsc scsi device. It is available to all users. PARAMETERS fd The tpsc file descriptor returned by the open call.
Running Head Addendum Model No. DST/DIS Tape Drive UNIX Programmer’s Guide RETURN VALUES The return value is DST_SUCCESS (0) or DST_FAILURE (-1). See the dst_api_intro() manual page for information on errno failure messages and associated DST result codes.
DST/DIS Tape Drive UNIX Programmer’s Guide Addendum dd2_setnoflush_drive NAME dd2_setnoflush_drive - Set or reset the noflush drive setting. USE When set, filemarks are buffered. When reset, the buffer is flushed when filemarks are written. this setting can be read back from the drive as the DST_NO_FLUSH bit in the attrib field of the ddt_getparam_drive command. This setting persists within the drive until set/reset again by command or power-on.
Model No. DST/DIS Tape Drive UNIX Programmer’s Guide Running Head Contents Contents Addendum Introduction .................................................................................................................. iii API Functions ............................................................................................................... iii Device Special Files ..................................................................................................... iv dst_setnoflush() ............
DST/DIS Tape Drive UNIX Programmer’s Guide 3.3 3.4 3.4.1 3.4.2 3.4.3 3.4.4 3.5 Section 4 Introduction ....................................................................................................4-1 Tape Drive Block Size ...................................................................................4-3 Tape Partitions ................................................................................................4-3 libdd2 API Functions 5.1 5.2 5.2.1 5.2.2 5.2.3 5.2.4 5.3 5.4 5.5 5.6 5.7 5.
Model No. DST/DIS Tape Drive UNIX Programmer’s Guide Running Head Contents 5.21 5.22 5.23 Section 6 DD-2 Utilities Manual Pages 6.1 6.2 6.2.1 6.2.2 6.2.3 6.2.4 6.2.5 6.2.6 6.2.7 6.2.8 6.3 6.4 6.5 6.6 6.7 6.8 6.9 6.10 6.11 6.12 6.13 6.14 6.15 6.16 6.17 6.18 6.19 6.20 6.21 Appendix A Glossary ........................................................................................................ A-1 Acronyms ................................................................................................
DST/DIS Tape Drive UNIX Programmer’s Guide Appendix C Result Codes and Machine Status C.1 Appendix D Introduction ...................................................................................................D-1 RF Status Field ..............................................................................................D-1 Latched/Continuous Status Field ..................................................................D-2 Physical Block Related Status Field .......................................
Running Head Figures Model No. DST/DIS Tape Drive UNIX Programmer’s Guide Figures 3-1 xiv DD-2 Tape Entities ..............................................................................................................
DST/DIS Tape Drive UNIX Programmer’s Guide Tables Tables 2-1 2-2 3-1 4-1 4-2 B-1 B-2 B-3 B-4 B-5 B-6 B-7 B-8 C-1 C-2 C-3 C-4 C-5 C-6 C-7 D-1 D-2 D-3 E-1 E-2 E-3 DST/DIS Tape Drive Software Operations ......................................................................2-2 DST/DIS Tape Device Driver Interfaces ............................................................................2-5 DST and DIS Tape Format Compatibility ..........................................................................
General Information Introduction Section 1 General Information 1.1 Introduction Ampex DST/DIS tape drives write data to and read data from a DST cartridge — a high-capacity magnetic tape media incorporating the DD-2 (Data Digital-2) tape standard. This document describes how to use the Ampex DST/DIS tape drive software installed on your UNIX host system. The software includes Version 6.0 of the Tape Management Utilities and a libdd2 Application Programming Interface (API).
Running Head Manual Contents 1.2 1-2 Model No. General Information Manual Contents • Section 1, “General Information,” describes document conventions used in this manual, its intended audience, and related documents. • Section 2, “Software Overview,” provides a general overview of the host system tape device driver interface, tape drive behavior, the libdd2 API functions, and the DD-2 Tape Management Utilities. • • Section 3,“DD-2 Tape Format,” introduces the DD-2 tape format.
General Information 1.3 Notational Conventions Notational Conventions This manual uses the following typographical conventions: Bold In a syntax description, indicates text that must be typed literally. In other contexts, indicates UNIX command names, program/application names, or C function names. Italic In a syntax description, indicates generic arguments or options; these should be replaced with user-supplied values.
Model No. General Information Running Notices andHead Notes 1.4 Notices and Notes The following are examples of warning notices and informational notes that may appear in this document. Notice! Indicates a hazard that may result in equipment damage or loss of data. Note: 1.5 A Note contains information that requires more emphasis than can be given in a normal paragraph. This might include additional guidance, hints, reminders, or further explanation.
General Information Technical Support DST/DIS Software Installation Guide for HP UX Operating Systems, Part No. 1306826, describes how to install system software for Ampex SCSI tape drives and Automated Cartridge Libraries on Hewlett Packard host platforms running the HP UX operating system. DST/DIS Software Installation Guide for Digital UNIX Operating Systems, Part No.
Software Overview Introduction Section 2 Software Overview 2.1 Introduction This section provides a general overview of the host system tape device driver interface, tape drive behavior, the libdd2 API functions, and the DD-2 Tape Management Utilities. Table 2-1. lists the operations performed by the libdd2 functions and the Tape Management Utilities.
Model No. Software Overview Running Tape DeviceHead Driver Table 2-1. DST/DIS Tape Drive Software Operations Operation DD-2 Utility libdd2 API Function TAPE DRIVE STATUS Get tape drive current state dd2_status_drive and dst_status() report more information than dst_getstate() dd2_status_drive (See paragraph 6.18 on page 6-56) dst_getstate() (see paragraph 5.11 on page 5-40) dst_status() (see paragraph 5.19 on page 5-59) Get results of last I/O operation. dd2_status_drive (See paragraph 6.
Software Overview Tape Device Driver Table 2-1. DST/DIS Tape Drive Software Operations (Continued) Operation DD-2 Utility libdd2 API Function Get tape drive default write-data block size. dd2_status_drive (see paragraph 6.18 on page 6-56) dst_status() (see paragraph 5.19 on page 5-59) Get tape drive configuration attributes and parameter settings. dd2_query_drive (see paragraph 6.9 on page 6-25) dst_getdrive() (see paragraph 5.6 on page 5-22) dst_getdrive_ex() (see paragraph 5.
Model No. Software Overview Running Tape DeviceHead Driver Table 2-1. DST/DIS Tape Drive Software Operations (Continued) Operation DD-2 Utility Synchronize (flush) tape drive buffer dd2_weof_tape (see paragraph 6.20 on page 6-61) libdd2 API Function dst_weof() (see paragraph 5.22 on page 5-66) dst_weof_ex() (see paragraph 5.23 on page 5-68) TAPE DRIVE CAPABILITIES Get tape drive capabilities dd2_query_drive dst_getdrive() (see paragraph 5.6 on page 5-22) dst_getdrive_ex() (see paragraph 5.
Software Overview Tape Drive Behavior Table 2-2. DST/DIS Tape Device Driver Interfaces Interface Description COMMAND LINE INTERFACES Ampex dd2 utilities The dd2 utilities take full advantage of the DD-2 tape format. They are the recommended method for controlling the tape drive from the command line. UNIX mt utility The mt utility provides an alternate method of controlling the tape drive from the command line but it doesn’t take full advantage of the DD-2 tape format.
Model No. Software Overview Running Head libdd2 API Overview 2.4.1 Operation of libdd2 The libdd2 API layer packages SCSI tape drive commands as C functions, isolating the caller from the device driver layer. C programs that use the libdd2 API normally use the C preprocessor #include directive to include the following header file. dd2.h Contains the libdd2 function prototypes and provides several useful definitions such as the DST_SPACE type argument.
Software Overview 2.5 DD2 Utilities Overview DD2 Utilities Overview The dd2 utilities provide command-line access to an Ampex DST or DIS tape drive. They are compatible with the DST/DIS Automated Cartridge Library (ACL) Utilities and can be used together with them in scripts that perform higher-level operations. Both sets of utilities use a consistent set of input and output conventions that make them easy to integrate. 2.5.
DD-2 Tape Format Introduction Section 3 DD-2 Tape Format 3.1 Introduction This section introduces the DD-2 tape format. For additional information, see the DST/DIS SCSI Tape Drive DD-2 Tape Format Guide. 3.2 DST Cartridge The DST cartridge is available in the following capacities: • • • 3.
DD-2 TapeModel Format No. Running DD-2 FormatHead Types BOP clear BOT leader zone VFI EOP/BOP EOP/BOP EOP partition partition partition partition EOT clear 0 1 n n+1 zone trailer INFORMATION ZONE EOP/BOP EOP/BOP (PARTITION DETAIL) BOM FSN #2 FSN #1 FSN #n EOR/ EOD EMW/EW PARTITION BOT SIDE LOAD OPERATION ZONE (LOZ) VFI ZONE EOT SIDE SYSTEM ZONE (SYTEMS ZONES ARE INTERSPERSED THROUGHOUT THE INFORMATION ZONE. THEIR SPACING IS USER CONFIIGURABLE.) Figure 3-1.
DD-2 Tape Format • DD-2 Format Types Fully formatted (or preformatted). Initialized (or non-preformatted) is the simplest kind of formatting. This is a relatively quick operation (about 20 seconds). Initializing records some Volume Format Information at the beginning of tape and leaves the remaining tape unrecorded. An initialized tape allows only for a single partition of data; that is, the volume cannot be sub-divided into smaller volumes on the cartridge.
Running DD-2 FormatHead Types 3.4.3 DD-2 TapeModel Format No. File Sections A file section consists of zero or more consecutive data blocks bounded on each end by a filemark, BOP, or EOD. File sections are numbered sequentially within a partition, starting at one. Some older tape formats use a set of two consecutive filemarks to indicate EOD. Because the DD-2 format keeps track of EOD independently, double filemarks are not required; they merely indicate an empty file.
DD-2 Tape Format Instrumentation and Data Storage Recording block sizes that are small or that divide (with their checksums) into 1,199,840 leaving only a small remainder. For example, a data block size of 600,000 would waste almost half the space in each physical block. A second factor in choosing a data block size is that all transfers to/from the drive must be in multiples of the data block size. Byte-Stream Mode.
Tape Drive Operational Characteristics IntroductionIntroduction Section 4 Tape Drive Operational Characteristics 4.1 Introduction The following paragraphs describe tape drive basic behavior (see Table 4-1 and 4-2) you should be familiar with when using the libdd2 API functions or dd2 utilities. Table 4-1. DST/DIS Tape Drive Basic Behavior Platform HP, DEC, Solaris (device special file *.0) Default Actions On Open: • Retains current block size. • Retains current position.
Model No. Running HeadDrive Operational CharacteristicsTape Drive Operational Characteristics IntroductionTape Table 4-1. DST/DIS Tape Drive Basic Behavior (Continued) Platform Default Actions AIX (device special file *.0) Same as DEC, HP, and Solaris, except implements the user-defined block size on open. SGI Same as DEC, HP, and Solaris, except: (device special file /tps Xdy) • On open, the tape drive is not reserved for exclusive use by current process.
Tape Drive Operational Characteristics 4.2 Tape Drive Block SizeTape Drive Block Size Tape Drive Block Size The DST/DIS tape drive is a fixed block device and enables the following block sizes to be used during its operation: • • 1 byte (byte stream mode) - checksums are disabled. 80 to 1199840 bytes (even values only) - checksums can be enabled or disabled. There are three block sizes that must be considered in tape drive operation: • File block size – The block size used in a given file section.
libdd2 API Functions Introduction Section 5 libdd2 API Functions 5.1 Introduction This section contains the manual pages for the libdd2 API functions. All information in the section was accurate at the time of publication, but is subject to change without notice. For the latest information on the libdd2 API functions, see the Release Notes for your version of the tape drive software. 5.
Model No. libdd2 API Functions Running Head DST API Overview 5.2.2 dst_rewind() Rewind tape to Beginning of Partition (BOP). dst_setdrive() Change tape drive configuration parameters. dst_setparam() Change tape drive data block size and tape device driver debug level. dst_setpos() Set tape drive position to the specified location. dst_space() Change current position by a specified number of blocks or files, or set current position to end of data (EOD).
libdd2 API Functions DST API Overview type Specifies the position form and format (see dst_pos_type_en below). pos Union containing the position information in the specified form and format (see dst_position_un below). dst_pos_type_en This typedef enumeration supports the following definitions of position form and format. The position format must be compatible with the current drive capabilities, however.
Model No. libdd2 API Functions Running Head DST API Overview dd2 Structure of type dst_dd2_pos_st for representing position in standard DST (DD-2) format (see dst_dd2_pos_st below). dst600 Structure of type dst_600_pos_st for representing position in DST600 format. (see dst_600_pos_st below). dis Structure of type dst_600_pos_st for representing position in DIS format (see dst_dis_pos_st below).
libdd2 API Functions DST API Overview int adfn; /* Absolute double-frame number */ int ptid; /* Partition ID (starting at zero!) */ int fsn; /* File section number (within partition) */ dst_dbn_st ldbn; /* Logical data block number (within FSN) */ dst_dd2_pos_st; valid Bit mask that indicates whether the position is valid and, if so, which structure members contain valid information #define #define #define #define #define #define adfn DST_POSN_INVALID DST_ADFN_VALID DST_DBN_VALID DST_FSN_VALID DST_PTID
Model No. libdd2 API Functions Running Head DST API Overview } /* Absolute double-frame number */ /* Partition ID (starting at zero!) */ /* File section number (within partition) */ /* Cumulative data block no. (within partition.) /* (not counting FSNs as blocks) */ dst_600_pos_st; valid Same as described for dst_dd2_pos_st. adfn Same as described for dst_dd2_pos_st. ptid Same as described for dst_dd2_pos_st. fsn Same as described for dst_dd2_pos_st.
libdd2 API Functions 5.2.3 DST API Overview Return Values All libdd2 C-Library functions return either DST_SUCCESS (0) or DST_FAILURE (-1). For convenience, the dstio.h header file defines the symbolic constant DST_SUCCESS to indicate a success return value (0) and the symbolic constant DST_FAILURE to indicate a failure return value (-1).
Model No. libdd2 API Functions Running Head DST API Overview ENOSPC ETIME ENODEV • Read attempted at EOD. A timeout occurred on a SCSI command. The DST device is not properly connected to the host system. If the write operation could not be completed, this call sets errno to a value that may include one of the following. EIO EINVAL ENOSPC ETIME ENODEV Hardware fault or position undefined at start of operation.
libdd2 API Functions DST API Overview DstCodeDriveIsReserved Drive is reserved DstCodeEnvErr Environmental error (internal target failure) DstCodeEOD EOD detected DstCodeEODNotFound EOM/EOP encountered DstCodeEODPosError Error while setting position to EOD DstCodeEOFPosError Error while setting position to EOF DstCodeEOMPosErr EOM encountered unexpectedly DstCodeEOP EOM/EOP detected DstCodeFSN Filemark detected DstCodeGetPosError Error while getting position on tape DstCodeHitEW Hit e
Model No.
libdd2 API Functions 5.2.
Model No. libdd2 API Functions Running Head dst_clrlog 5.3 dst_clrlog NAME dst_clrlog - clear tape drive error and operational statistics. SYNOPSIS #include int dst_clrlog(int fd, dst_log_st *log); DESCRIPTION dst_clrlog() sets the tape drive error and operational statistics to their default values except for service statistics. The service statistics (such as total scanner head contact time) are not resettable. You must have root permissions to use dst_clrlog().
libdd2 API Functions 5.4 dst_convpos dst_convpos NAME dst_convpos() - convert tape position from structure form to token form or token form to structure form. SYNOPSIS #include int dst_convpos(int fd, dst_convpos_st *pos); DESCRIPTION dst_convpos() converts a tape position from one form to another; i.e., from token to structure or structure to token.
Model No. libdd2 API Functions Running Head dst_convpos typedef struct { dst_pos_type_en source; dst_position_un srcpos; dst_pos_type_en dest; dst_position_un destpos; } dst_convpos_st; /* Source position type */ /* Source position */ /* Destination position type */ /* Destination position */ Before calling dst_convpos(): • Initialize the srcpos union with the source position specification.
libdd2 API Functions dst_convpos RETURN VALUES The return value is DST_SUCCESS (0) or DST_FAILURE (-1). See “DST API Overview” on page 5-1 for information on errno failure messages and associated DST result codes.
Model No. libdd2 API Functions Running Head dst_format 5.5 dst_format NAME dst_format() - format a DD-2 tape. SYNOPSIS #include int dst_format(int fd, dst_format_st *fmt); DESCRIPTION A DD-2 tape must be formatted before it can be used for data storage. See the DST SCSI Tape Drive DD-2 Tape Format Guide for information on formatting and examples of several commonly used formats.
libdd2 API Functions dst_format dst_volid_t u_int u_char u_int u_char dst_fmt_layout_en u_int volid; asize; acount; bsize; bcount; layout; sz_size; u_int spacing; u_char u_int u_short dst_tape_sz_en dst_tape_type_en lastzone; lastptsz; lastptid; tapesize; tapetype; } /* Volume ID */ /* Partition A size in phys blks */ /* Partition A count */ /* Partition B size in phys blks */ /* Partition B count */ /* System zone layout */ /* System zone size (0 on input means use * default size for installed tap
Running Head dst_format asize Model No. libdd2 API Functions The size, in physical blocks, of the Group A partitions on the tape. Minimum partition size is 235 physical blocks. However, you can use zero to indicate that the partition takes up the remainder of the tape. Values in the range 1-234 are not allowed.
libdd2 API Functions dst_format DstWaste - Does not allocate partitions across system zones. Instead, allocates each partition with exactly the specified size, wasting any space between the end of the partition and the system zone if there’s not enough room for another partition before the system zone. If there is not enough space for a full partition between the last system zone and EOT, the remaining space is not used.
Model No.
libdd2 API Functions dst_format SEE ALSO “DST API Overview” on page 5-1, dst_status()), dd2_format_tape, DST SCSI Tape Drive DD-2 Tape Format Guide Ampex 1308911-02 5-21
Model No. libdd2 API Functions Running Head dst_getdrive 5.6 dst_getdrive NAME dst_getdrive() - get tape drive product information, configuration and capabilities, and tape device driver version. SYNOPSIS #include int dst_getdrive(int fd, dst_drive_st *drive); DESCRIPTION dst_getdrive() reports the following: • Tape drive product information, configuration attributes and parameter settings, capabilities and buffer size.
libdd2 API Functions dst_getdrive typedef struct { u_int valid; u_int config; u_char rdretryct; u_char wrretryct; u_char wrbuffull; u_char rdbuffull; int wrdelay; u_char sctimeout; u_char thtimeout; int ewoffset; int cleantime; dst_ddver_st ddver; dst_tdver_st tdver; u_int capability; int bufsize; } dst_drive_st; /* Valid members - see defines above */ /* Drive configuration attributes */ /* Read retry count (0-80) */ /* Write retry count (0-127) */ /* Write buffer full ratio/256 (25-200) */ /* Read buff
Model No. libdd2 API Functions Running Head dst_getdrive wrretryct Write retry count. The default is 5. The range is 0-255. wrbuffull Write buffer full ratio, divided by 256 to obtain percentage. The default is 0. The range is 0 or 1-255. A value of zero indicates that the drive waits until the its buffer is half full before writing to tape. rdbuffull Read buffer full ratio, divided by 256 to obtain percentage. The default is 0. The range is 0 or 1-255.
libdd2 API Functions dst_getdrive ** No terminating NULs are with any string ops! */ typedef struct { char vendor[8]; char product[16]; char rcfver[4]; char tcfver[4]; char pcfver[4]; char systemrev[8]; char serialnum[4]; char mfgid[16]; u_char transport; char ibsboard[20]; char sbcboard[20]; char eccboard[20]; char eqltboard[20]; char astctlboard[20]; char mdaboard[20]; } dst_tdver_st; guaranteed, so use counts /* DST tape drive vendor name */ /* DST tape drive product name */ /* RCF firmware version *
Model No. libdd2 API Functions Running Head dst_getdrive_ex 5.7 dst_getdrive_ex NAME dst_getdrive_ex() - get tape drive product information, configuration and extended capabilities, and tape device driver version. SYNOPSIS #include int dst_getdrive_ex(int fd, dst_drive_ex_st *drive); DESCRIPTION dst_getdrive_ex() reports the following: • Tape drive product information, configuration attributes and parameter settings, extended capabilities, and buffer size.
libdd2 API Functions dst_getdrive_ex typedef struct { } u_int valid; u_int config; u_char rdretryct; u_char wrretryct; u_char wrbuffull; u_char rdbuffull; int wrdelay; u_char sctimeout; u_char thtimeout; int ewoffset; int cleantime; dst_ddver_st ddver; dst_tdver_st tdver; u_int capability; int bufsize; u_int capability_ex; dst_density_en density; dst_speed_en speed; u_int reserved0; u_int reserved1; dst_drive_ex_st; /* Valid members - see defines above */ /* Drive configuration attributes */ /* Read re
Model No. libdd2 API Functions Running Head dst_getdrive_ex DST_EOR_BLOAD - search forward after load DST_PARK_ANY - park anywhere DST_CHECKSUM - enable data block checksums rdretryct Read retry count. The default is 5. The range is 0-255. wrretryct Write retry count. The default is 5. The range is 0-255. wrbuffull Write buffer full ratio, divided by 256 to obtain percentage. The default is 0. The range is 0 or 1-255.
libdd2 API Functions tdver dst_getdrive_ex An extensive structure of tape drive product information. /* ** Structure for tape drive version info. ** All fields are plain ASCII characters unless otherwise noted.
Running Head dst_getdrive_ex Model No. libdd2 API Functions RETURN VALUES The return value is DST_SUCCESS (0) or DST_FAILURE (-1). See paragraph 5.2 for information on errno failure messages and associated DST result codes. EXAMPLE The following is an example of how to call the dst getdrive_ex() function: /* ** get extendeddrive configuration */ d2_drive_ex.
libdd2 API Functions 5.8 dst_getlog dst_getlog NAME dst_getlog() - get tape drive error, operational, service, and diagnostic statistics. SYNOPSIS #include int dst_getlog(int fd, dst_log_st *log); DESCRIPTION dst_getlog() retrieves error and operational statistics from tape drive integer counters. This information is intended to aid service personnel in diagnosing and correcting problems. The tape drive increments a given counter every time the associated event occurs.
Model No.
libdd2 API Functions dst_getlog wrerrc Write Errors Corrected - The number of successful applications of the write retry algorithm that occurred within the allowed number of retries. wrretry Write Retries - The total number of times the drive attempted a write retry, regardless of whether the write attempt succeeded. wrerru Write Errors Uncorrected - The number of unsuccessful applications of the write retry algorithm that occurred within the allowed number of retries.
Running Head dst_getlog Model No.
libdd2 API Functions 5.9 dst_getparam dst_getparam NAME dst_getparam() - get tape drive data block size, tape device driver debug level, and device special file interface parameter settings. SYNOPSIS #include int dst_getparam(int fd, dst_param_st *parms); DESCRIPTION dst_getparam() reports the current tape drive block size, debug level, and device special file interface parameter settings. The interface parameters specify default behavior for the tape drive.
Model No. libdd2 API Functions Running Head dst_getparam u_int int u_int u_int } valid; blksize; dbglevel; attributes; dst_param_st; /* Valid members */ /* Current blocksize in bytes */ /* Device driver debug message level */ /* Bit mask of attributes */ STRUCTURE MEMBERS valid Bit mask that specifies which members to get information for on input, and which members contain valid information on return. The following definitions apply (see the dstio.
libdd2 API Functions dst_getparam RETURN VALUES The return value is DST_SUCCESS (0) or DST_FAILURE (-1). See “DST API Overview” on page 5-1 for information on errno failure messages and associated DST result codes.
Model No. libdd2 API Functions Running Head dst_getpos 5.10 dst_getpos NAME dst_getpos() - get current position. SYNOPSIS #include int dst_getpos(int fd, dst_position_st *pos); DESCRIPTION dst_getpos() reports the current tape drive position in token or structure form. This is the data block address at which the next read or write operation occurs. The position returned by dst_getpos() does not necessarily reflect the actual physical tape head position.
libdd2 API Functions } dst_getpos dst_position_st; Before calling dst_getpos(), initialize the type member of the *pos structure with the definition of the position specification you want the drive to return. The other members need not be initialized. RETURN VALUES The return value is DST_SUCCESS (0) or DST_FAILURE (-1). See “DST API Overview” on page 5-1 for information on errno failure messages and associated DST result codes. 1.
Model No. libdd2 API Functions Running Head dst_getstate 5.11 dst_getstate NAME dst_getstate() - get tape drive current state. SYNOPSIS #include int dst_getstate(int fd, dst_state_st *state); DESCRIPTION dst_getstate is a limited version of dst_status that lets you quickly determine whether a tape is installed and ready for I/O operations. It is available to all users. PARAMETERS fd The file descriptor returned by the open call. *state Pointer to a structure of type dst_state_st.
libdd2 API Functions dst_getstate DST_LOADED or DST_IS_LOADED is set when the drive completes a volume search; however, this doesn’t mean that the drive is ready for user interaction. DST_WR_PROTECT or DST_WR_PROTECTED is set when the installed tape is found to be write protected. DST_READY or DST_IS_READY is set when necessary to perform operations that establish a logical position on tape. The tape drive is ready for user interaction, when DST_READY, DST_PRESENT, and DST_LOADED are all set.
Model No. libdd2 API Functions Running Head dst_gettrace 5.12 dst_gettrace NAME dst_gettrace() - get a firmware trace log from the tape drive. SYNOPSIS #include int dst_gettrace(int fd, dst_trace_st *trace); DESCRIPTION dst_gettrace() gets one of the four available tape drive firmware trace logs. This information is intended to aid service personnel in diagnosing and correcting problems. A trace log consists of printable ASCII characters.
libdd2 API Functions dst_gettrace When you request an entire log, data retrieval starts with the first (earliest) entry in the log. The offset member permits specifying whether any data bytes should be discarded before loading of the buffer is enabled. Should a buffer full condition occur, dst_gettrace() succeeds, terminates successfully and remembers where it left off. To continue retrieving data from the log, repeat the dst_gettrace() call. STRUCTURE MEMBERS type Specifies the trace log to get.
Running Head dst_gettrace Model No.
libdd2 API Functions 5.13 dst_reset dst_reset NAME dst_reset() - reset the tape drive. SYNOPSIS #include int dst_reset(int fd); DESCRIPTION dst_reset() resets the tape drive. This restores the drive’s configuration parameters to the last saved values and clears any active I/O process, pending data, and status. The tape drive performs its standard power-on self tests, after which the drive status indicators and display begin normal operation. dst_reset() returns immediately, however.
Model No. libdd2 API Functions Running Head dst_rewind 5.14 dst_rewind NAME dst_rewind() - rewind tape to Beginning of Partition (BOP). SYNOPSIS #include int dst_rewind(int fd); DESCRIPTION dst_rewind moves the current position to the beginning of the current partition (BOP). If the cartridge was just inserted, the current partition is assumed to be 0. dst_rewind is available to all users. PARAMETERS fd The file descriptor returned by the open call.
libdd2 API Functions 5.15 dst_setdrive dst_setdrive NAME dst_setdrive() - changes tape drive configuration parameters. SYNOPSIS #include int dst_setdrive(int fd, dst_drive_st *drive); DESCRIPTION dst_setdrive() changes the specified tape drive configuration parameters to the values requested. dst_setdrive() is available to all users. PARAMETERS fd The file descriptor returned by the open call. *drive Pointer to a structure of type dst_drive_st.
Model No.
libdd2 API Functions dst_setdrive To determine the current configuration, call the dst_getdrive() function. The default is Sync on Early Warning with checksums enabled. rdretryct The Read Retry Count drive configuration parameter specifies the maximum number of retries to read a physical block from tape. The default setting is 5. The range is 0-255. wrretryct The Write Retry Count parameter specifies the maximum number of retries to write a physical block to tape. The default setting is 5.
Model No. libdd2 API Functions Running Head dst_setdrive ddver Read only member; see dst_getdrive(). tdver Read only member; see dst_getdrive(). capability Read only member; see dst_getdrive(). bufsize Read only member; see dst_getdrive(). RETURN VALUES The return value is DST_SUCCESS (0) or DST_FAILURE (-1). See the “DST API Overview” on page 5-1 for information on errno failure messages and associated DST result codes.
libdd2 API Functions 5.16 dst_setparam dst_setparam NAME dst_setparam() - change tape drive data block size and tape device driver debug level. SYNOPSIS #include int dst_setparam(int fd, dst_param_st *parms); DESCRIPTION dst_setparam() changes tape drive data block size and/or tape device driver debug level. To view the current settings, use the dst_getparam() function. dst_setparam() is available to all users. PARAMETERS fd The file descriptor returned by the open call.
Model No. libdd2 API Functions Running Head dst_setparam STRUCTURE MEMBERS The members of the dst_param_st structure are defined below. This structure type is used by both dst_getparam() and dst_setparam(). The attributes member is valid only for dst_getparam(). valid Bit mask that indicates which members contain valid data on input and return. The following definitions apply: DST_BLK_VALID (blksize member valid) DST_DBG_VALID (dgblevel member valid) blksize Data block size in bytes.
libdd2 API Functions dst_setparam DST_DBG_RETRY - Outputs statements associated with SCSI command retry attempts. DST_DBG_INTERRUPT - Outputs statements associated with the handling of tape device driver interrupts. DST_DBG_PARAMETERS - Each SCSI command descriptor block (cdb) is displayed before being sent to the tape drive; this allows invalid settings to be checked. DST_DBG_RESULTS - Outputs statements associated with the drive receiving SCSI Request Sense data.
Model No. libdd2 API Functions Running Head dst_setpos 5.17 dst_setpos NAME dst_setpos() - set tape drive position to the specified location. SYNOPSIS #include int dst_setpos(int fd, dst_position_st *pos); DESCRIPTION dst_setpos() positions the tape drive to the specified location. This is the data block address at which the next read or write operation occurs, and is often referred to as the current position.
libdd2 API Functions dst_setpos dst_setpos() determines whether the tape drive is already positioned at the desired location prior to issuing any positioning commands. If the data buffer contains write data, dst_setpos() flushes the buffer to tape before setting the new position. Therefore, dst_setpos() can fail if there is a problem flushing the buffer.
Running Head dst_setpos Model No. libdd2 API Functions 6. If the user supplies a partition that doesn’t exist, dst_setpos() returns -1 with errno set to EINVAL (22). 7. If the position type is DstPosDIS and the tape is not formatted for instrumentation purposes, dst_setpos() returns -1 with errno set to EINVAL (22).
libdd2 API Functions 5.18 dst_space dst_space NAME dst_space() - change current position by a specified number of blocks or files, or set current position to end of data (EOD). SYNOPSIS #include int dst_space(int fd, int type, int count); DESCRIPTION dst_space() performs relative rather than absolute positioning. The current position can be changed by: • Spacing forward or backward by the specified number of filemarks.
Running Head dst_space Model No. libdd2 API Functions 1. If no tape is installed, dst_space() returns -1 with errno set to EIO (5) and the DST result code set to DstCodeNoTapeInstalled. 2. If the tape is installed but the Ready/Not Ready button on the front panel is Not Ready, dst_space() returns -1 with errno set to EIO (5) and the DST result code set to DstCodeNoEstablishedPos. 3. If the desired tape position cannot be found (i.e.
libdd2 API Functions 5.19 dst_status dst_status NAME dst_status() - Get information on tape drive and tape cartridge. SYNOPSIS #include int dst_status(int fd, dst_status_st *stat); DESCRIPTION dst_status() returns current information on the tape drive and the tape cartridge. This includes: • Tape Drive - block size, state, position, results of last I/O operation, and number of bytes in data buffer. • Tape Cartridge - format and remaining capacity of current partition.
Model No.
libdd2 API Functions dst_status DST_BUFDTA_VALID DST_RPCAP_VALID DST_WRBLK_VALID DST_FILEBLK_VALID minblksz Minimum data block size (in bytes) supported by the tape drive. maxblksz Maximum data block size (in bytes) supported by the tape drive. drvblksz Current data block size (in bytes) reported by the tape drive. wrblksz Data block size used when new files are written. state Tape drive state expressed as a bit-mask.
Model No. libdd2 API Functions Running Head dst_status rpcap The remaining capacity of the current partition in physical blocks, with respect to the current location. RETURN VALUES The return value is DST_SUCCESS (0) or DST_FAILURE (-1). See “DST API Overview” on page 5-1 for information on errno failure messages and associated DST result codes.
libdd2 API Functions 5.20 dst_unload dst_unload NAME dst_unload() - unload the tape cartridge from the tape drive. SYNOPSIS #include int dst_unload(int fd); DESCRIPTION dst_unload() flushes any data still in the tape drive write buffer to tape, parks the tape at the nearest system zone on the BOT side of the current position, and ejects the cartridge. System zone locations depend on the tape format and might not correspond to the start of a partition.
Model No. libdd2 API Functions Running Head dst_version 5.21 dst_version NAME dst_version() - get version information for the tape device driver. SYNOPSIS #include int dst_version(int fd, dst_dri_ver *ver); DESCRIPTION dst_version() returns version information that identifies the current tape device driver. This information is intended primarily for checking whether the interface supported by the tape device driver differs from that of the calling program.
libdd2 API Functions Note: dst_version These are null-terminated strings. RETURN VALUES The return value is DST_SUCCESS (0) or DST_FAILURE (-1). See “DST API Overview” on page 5-1 for information on errno failure messages and associated DST result codes.
Model No. libdd2 API Functions Running Head dst_weof 5.22 dst_weof NAME dst_weof() - write filemark(s) to tape SYNOPSIS #include int dst_weof(int fd, int count); DESCRIPTION dst_weof() writes the specified number of filemarks at the current position unless zero filemarks are specified. In that case, the tape driver buffer is flushed to tape without writing any filemarks. Writing a filemark invalidates any data in the partition that was written previously to locations beyond the filemark.
libdd2 API Functions dst_weof RETURN VALUES The return value is DST_SUCCESS (0) or DST_FAILURE (-1). See “DST API Overview” on page 5-1 for information on errno failure messages and associated DST result codes. 1. If the tape installed is write protected, an errno of EROFs (30) is returned and the DST result code is set to DstCodeWriteProt. 2. If a negative count is specified, an errno of EINVAL (22) is returned and the DST result code is set to DstCodeNegativeFMCount. 3.
Model No. libdd2 API Functions Running Head dst_weof_ex 5.23 dst_weof_ex NAME dst_weof_ex() - write filemarks to tape (extended). SYNOPSIS #include int dst_weof_ex(int fd, int count, int flush); DESCRIPTION dst_weof_ex() writes the specified number of filemarks at the current position unless zero filemarks are specified. In that case, the tape driver buffer is flushed to tape without writing any filemarks.
libdd2 API Functions dst_weof_ex USAGE 1. If the DST_NO_FLUSH interface is set, all filemarks are written as buffered filemarks; i.e., the tape drive buffer will not flush to tape unless count is set to zero (thereby specifying an explicit buffer flush). 2. If the DST_NO_FLUSH interface parameter is not set, the flush parameter specifies whether to write buffered or unbuffered filemarks. 3. dst_weof_ex() fails if the current position is undefined.
DD-2 Utilities Manual Pages Introduction Section 6 DD-2 Utilities Manual Pages 6.1 Introduction This section contains the manual pages for the DD-2 utilities. All information in the section was accurate at the time of publication, but is subject to change without notice. For the latest information, see the Release Notes for your version of the tape drive software. 6.
DD-2 Utilities ManualModel Pages No. Running DD-2 UtilitiesHead Overview 6.2.2 dd2_read_perf Measure overall read performance of device and host. dd2_reset_drive Reset the tape drive. dd2_rewind_tape Rewind tape to Beginning of Partition (BOP). dd2_set_drive Change tape drive configuration parameters. dd2_setparam_drive Change tape drive data block size and tape device driver debug level. dd2_setpos_tape Set current position to the specified location.
DD-2 Utilities Manual Pages DD-2 Utilities Overview The device special file can invoke default actions on open (such as rewinding the tape) before the utility performs its operation. The device special file can also cause default actions on close. In addition, the device special file configuration might affect other characteristics of the interface, such as the logical data block size. For detailed information on device special file options, see Appendix B. 6.2.
Running DD-2 UtilitiesHead Overview DD-2 Utilities ManualModel Pages No. -stdout The -stdout argument specifies the output stream written to stdout. It is required for all DD2 Management Utilities that produce an output, unless you use the -help argument. The -stdout argument allows you to specify the following: • Keywords [%field_name or %(field_name) as documented in the utility’s manual page] that designate the fields in the output stream written to stdout.
DD-2 Utilities Manual Pages 6.2.6 DD-2 Utilities Overview Environment The $TAPE environment variable specifies the tape device to use if the -f option is omitted. There is no default if $TAPE is not defined. 6.2.7 Exit Status The dd2 utilities use the following exit status codes to indicate success or failure. To view an exit status code in C-shell, type echo $status. 0 Operation succeeded. nonzero Operation failed.
Running DD-2 UtilitiesHead Overview DD-2 Utilities ManualModel Pages No. The limited number of error definitions in the file requires mapping of multiple DST drive errors onto single values. Because of this overloading, the dd2_status_drive utility supplies additional error information beyond that provided by the errno variable and the message written to stderr. The information includes a result code, a result class, and a printable message describing the result.
DD-2 Utilities Manual Pages 6.3 dd2_clrlog_drive dd2_clrlog_drive NAME dd2_clrlog_drive - clear tape drive error and operational statistics. SYNOPSIS dd2_clrlog_drive [ -f ] dd2_clrlog_drive -help [ help_type ] DESCRIPTION dd2_clrlog_drive sets all tape drive error log parameters to their default values except for service statistics. The service statistics parameters (such as total scanner head contact time) are not resettable.
DD-2 Utilities ManualModel Pages No. Running Head dd2_clrlog_drive EXIT STATUS The dd2 utilities use the following exit status codes, and may also produce output to -stdout on success: 0 Operation succeeded. nonzero Operation failed. A nonzero return value describes the error encountered error during processing (see “Exit Status” on page 6-5).
DD-2 Utilities Manual Pages 6.4 dd2_format_tape dd2_format_tape NAME dd2_format_tape - format a DD-2 tape. SYNOPSIS dd2_format_tape -format [ -f ] dd2_format_tape -help [ help_type ] DESCRIPTION A DD-2 tape must be formatted before it can be used for data storage. See the DST SCSI Tape Drive DD-2 Tape Format Guide for information on formatting and examples of several commonly used formats.
DD-2 Utilities ManualModel Pages No. Running Head dd2_format_tape -format Specifies how to format the tape. You must provide a -format argument except when using the -help argument. The -format argument comprises an eight-element specification ordered as follows: -format :fmttype:volid:asize:bsize:layout:spacing:. Each element must be delineated by colons and included in the specification even if left empty (a space between colons is not considered empty).
DD-2 Utilities Manual Pages dd2_format_tape Initialize volid Indicates a tape that is initialized but not formatted. The tape holds only a single group A partition that occupies the entire tape and is formatted on the fly during I/O operations. Default element values for the Initialize option are listed below. A hyphen (-) indicates there is no default and you must enter a valid value for that element.
DD-2 Utilities ManualModel Pages No. Running Head dd2_format_tape 35 physical blocks are reserved for system information and therefore not available for user data, leaving a usable minimum size of 200 physical blocks (roughly 240 million bytes). If the format type is Initialize or Partial, zero is the only valid value. bcount The number of Group B partitions per partition pattern, in the range 0-255. A zero indicates that there is only one type of partition on the tape (the Group A partition).
DD-2 Utilities Manual Pages spacing dd2_format_tape The number of physical blocks between system zones. If zero or null, dd2_format_tape uses a default system zone spacing based on the tape size. If not zero or null, the minimum value is 235. If the layout element is Alternate or NoZones, spacing must be zero (or left empty, which defaults to zero). ENVIRONMENT $TAPE Specifies the device special file to use when you omit the -f option.
Running Head dd2_getlog_drive 6.5 DD-2 Utilities ManualModel Pages No. dd2_getlog_drive NAME dd2_getlog_drive - get tape drive operational, service, and diagnostic statistics. SYNOPSIS dd2_getlog_drive -log -stdout [ -f ] [ -n ] dd2_getlog_drive -help [ help_type ] DESCRIPTION dd2_getlog_drive retrieves error and operational statistics from tape drive integer counters.
DD-2 Utilities Manual Pages dd2_getlog_drive -stdout Specifies the output fields written to stdout. You must provide both -stdout and -log arguments except when using the -help argument. The -stdout argument supports the following keywords: %service Specifies service statistics (see Appendix E, Table E-1). %optm Specifies transport module operational statistics (see Appendix E, Table E-2).
Running Head dd2_getlog_drive DD-2 Utilities ManualModel Pages No. EXAMPLE Obtain the cumulative value of service operational data from the drive and store it in the file log.ser. dd2_getlog_drive -log :Cumulative: -stdout %optm > log.
DD-2 Utilities Manual Pages 6.6 dd2_getparam_drive dd2_getparam_drive NAME dd2_getparam_drive - get tape drive data block size, tape device driver debug level, and device special file interface parameter settings. SYNOPSIS dd2_getparam_drive -stdout [ -f ] [ -n ] dd2_getparam_drive -help [ help_type ] DESCRIPTION dd2_getparam_drive reports the current tape drive data block size, tape device driver debug level, and device special file interface parameter settings.
DD-2 Utilities ManualModel Pages No. Running Head dd2_getparam_drive The -stdout argument supports the keywords listed below. Some fields can print in verbose or non-verbose style, depending on the keyword specified. Non-verbose style (%keyword) prints only the returned value; verbose style (%v_keyword) replaces the returned value with a descriptive string. If the data for a particular keyword is not available, na prints instead of the value (or string) for that keyword.
DD-2 Utilities Manual Pages DST_ZERO_ON_FM, DST_ZERO_ON_EW, DST_IGN_FM, DST_OPEN_RDONLY, DST_OBSOLETE, DST_WRITE_PROT, DST_OBSOLETE1, DST_OBSOLETE2, DST_OBSOLETE3, dd2_getparam_drive 0x00002000, 0x00004000, 0x00008000, 0x00010000, 0x00020000, 0x00040000, 0x00080000, 0x00100000, 0x00200000, ":Set by the O_SYNC open flag:" ":Report zero bytes for read after FM:" ":Ignore FM on first read after open:" ":Opened for read only:" ":obsolete used to be DST_WRITTEN:" ":Cartridge is Write Protected:" ":obsolete1:
Running Head dd2_getpos_tape 6.7 DD-2 Utilities ManualModel Pages No. dd2_getpos_tape NAME dd2_getpos_tape - get current position and estimated remaining capacity of partition. SYNOPSIS dd2_getpos_tape -stdout [ -f ] [ -n ] dd2_getpos_tape -help [ help_type ] DESCRIPTION dd2_getpos_tape reports the current tape drive position and the estimated remaining capacity in the partition past the current position.
DD-2 Utilities Manual Pages dd2_getpos_tape ARGUMENTS -help [ help_type ] Displays help on stderr and invalidates all other options, cancelling any other actions. Valid keywords for the optional help_type specification are: stdout, revision, and v_revision. -stdout Specifies the output fields written to stdout. You must provide a -stdout argument except when using the -help argument.
DD-2 Utilities ManualModel Pages No. Running Head dd2_getpos_tape %v_dis Current time code location on a DIS formatted cartridge. Displayed as a string: ddd hh:mm:ss.sss ENVIRONMENT The $TAPE environment variable specifies the tape device to use if the -f option is omitted. EXIT STATUS The dd2 utilities use the following exit status codes, and may also produce output to -stdout on success: 0 Operation succeeded. nonzero Operation failed.
DD-2 Utilities Manual Pages 6.8 dd2_gettrace_drive dd2_gettrace_drive NAME dd2_gettrace_drive - get a firmware trace log from the tape drive. SYNOPSIS dd2_gettrace_drive -stdout [ -f ] [ -n ] dd2_gettrace_drive -help [ help_type ] DESCRIPTION dd2_gettrace_drive gets a tape drive firmware trace log. The information in the log is intended to aid service personnel in diagnosing and correcting problems. dd2_gettrace_drive is available to all users.
DD-2 Utilities ManualModel Pages No. Running Head dd2_gettrace_drive %rcf Specifies the recorder control firmware trace log. %tcf Specifies the transport control firmware trace log. %scsi Specifies the SCSI control firmware trace log. ENVIRONMENT The $TAPE environment variable specifies the tape device to use if the -f option is omitted. EXIT STATUS The dd2 utilities use the following exit status codes, and may also produce output to -stdout on success: 0 Operation succeeded.
DD-2 Utilities Manual Pages 6.9 dd2_query_drive dd2_query_drive NAME dd2_query_drive - get tape drive product information, configuration and capabilities, and tape device driver version. SYNOPSIS dd2_query_drive -stdout [ -f ] [ -n ] dd2_query_drive -help [ help_type ] DESCRIPTION dd2_query_drive reports the following: • • Tape drive version, capabilities, configuration parameter settings, and buffer size.
DD-2 Utilities ManualModel Pages No. Running Head dd2_query_drive -stdout Specifies the output fields written to stdout. You must provide a -stdout argument except when using the -help argument. The -stdout argument supports the following keywords; see the dd2_set_drive manual page for detailed descriptions of the drive configuration parameters. 6-26 %ddversion Tape device driver version. %ddnotes Tape device driver notes.
DD-2 Utilities Manual Pages dd2_query_drive %sbc_vnum SBC board version number. %sbc_rev SBC board revision number. %sbc_snum SBC board serial number. %sbc_ssnum SBC board system serial number. %sbc_pwa SBC board pwa number. %ecc_pnum ECC board part number. %ecc_vnum ECC board version number. %ecc_rev ECC board revision number. %ecc_snum ECC board serial number. %ecc_ssnum ECC board system serial number. %ecc_pwa ECC board pwa number. %eqlt_pnum EQLT board part number.
DD-2 Utilities ManualModel Pages No. Running Head dd2_query_drive %mda_ssnum MDA board system serial number. %mda_pwa MDA board pwa number. %tdcapability Bit mask indicating tape drive capabilities (excluding asterisked items). %tdcapability_ex Bit mask indicating tape drive capabilities ( asterisked items only). %v_tdcapability String indicating tape drive capabilities (all items).
DD-2 Utilities Manual Pages Name dd2_query_drive Value Strings DST Defaults DST_CAN_RHIDENS, 0x01000000 ":Can read high-density:" Drive dependent DST_CAN_WHIDENS, 0x02000000 ":Can write high-density:" Drive dependent DST_CAN_ODDPOS, 0x04000000 ":Can position to odd-byte:" Enabled DST_CAN_ODDXFER, 0x08000000 ":Can transfer odd-size block (byte-stream mode):" Enabled DST_CAN_RWHISPD, 0x10000000 ":Can transfer at 20MB/sec:" Drive dependent DST_CAN_HLTAPE, 0x20000000 ":Can handle lar
DD-2 Utilities ManualModel Pages No. Running Head dd2_query_drive %tdbufsize Tape drive data buffer size (in bytes). ENVIRONMENT The $TAPE environment variable specifies the tape device to use if the -f option is omitted. EXIT STATUS The dd2 utilities use the following exit status codes, and may also produce output to -stdout on success: 0 Operation succeeded. nonzero Operation failed.
DD-2 Utilities Manual Pages 6.10 dd2_query_tape dd2_query_tape NAME dd2_query_tape - get tape format attributes. SYNOPSIS dd2_query_tape -stdout [ -f ] [ -n ] dd2_query_tape -help [ help_type ] DESCRIPTION dd2_query_tape returns the current tape format attributes. It is available to all users. OPTIONS -f Specifies the device special file to use for the operation (see Appendix B).
DD-2 Utilities ManualModel Pages No. Running Head dd2_query_tape Partial Indicates a partially-formatted tape, also called "format group A only." Only the first set of group A partitions is formatted. The set of group A partitions is followed by a single group B partition that occupies the remainder of the tape and is formatted on the fly during I/O operations. Initialize Indicates a tape that is initialized but not formatted.
DD-2 Utilities Manual Pages dd2_query_tape Pack -Specifies that as many partitions as possible are packed onto the tape, allowing any given partition to span system zones if needed. If there is not enough space for a full partition between the last system zone and EOT, the remaining space is not used. Stretch - Specifies that any given partition is stretched to the next system zone if there is not room for another partition before the system zone.
DD-2 Utilities ManualModel Pages No. Running Head dd2_query_tape ENVIRONMENT The $TAPE environment variable specifies the tape device to use if the -f option is omitted. EXIT STATUS The dd2 utilities use the following exit status codes, and may also produce output to -stdout on success: 0 Operation succeeded. nonzero Operation failed. A nonzero return value describes the error encountered error during processing (see “Exit Status” on page 6-5). EXAMPLES 1.
DD-2 Utilities Manual Pages 6.11 dd2_read_perf dd2_read_perf NAME dd2_read_perf - measure overall read performance of device and host. SYNOPSIS dd2_read_perf -perf [ -f ] dd2_read_perf -help [ help_type ] DESCRIPTION dd2_read_perf calculates the read data rate from a SCSI device to host system memory. It measures time around each of the read calls and outputs individual read and overall times. dd2_read_perf is available to all users.
DD-2 Utilities ManualModel Pages No. Running Head dd2_read_perf sample_rate Integer that specifies the sample rate for displaying read calls. If the sample rate is 1, every read is displayed. If the sample rate is 10, every tenth read is displayed. ENVIRONMENT The $TAPE environment variable specifies the tape device to use if the -f option is omitted.
DD-2 Utilities Manual Pages dd2_read_perf SEE ALSO “DD-2 Utilities Overview” on page 6-1, dd2_write_perf DST SCSI Tape Drive DD-2 Tape Format Guide Ampex 1308911-02 6-37
Running Head dd2_reset_drive 6.12 DD-2 Utilities ManualModel Pages No. dd2_reset_drive NAME dd2_reset_drive - reset the tape drive. SYNOPSIS dd2_reset_drive [ -f ] dd2_reset_drive -help [ help_type ] DESCRIPTION dd2_reset_drive resets the tape drive. This restores the drive’s configuration parameters to the last saved values and clears any active I/O process, pending data, and status.
DD-2 Utilities Manual Pages dd2_reset_drive ENVIRONMENT The $TAPE environment variable specifies the tape device to use if the -f option is omitted. EXIT STATUS The dd2 utilities use the following exit status codes, and may also produce output to -stdout on success: 0 Operation succeeded. nonzero Operation failed. A nonzero return value describes the error encountered error during processing (see “Exit Status” on page 6-5).
DD-2 Utilities ManualModel Pages No. Running Head dd2_rewind_tape 6.13 dd2_rewind_tape NAME dd2_rewind_tape - rewind tape to Beginning of Current Partition (BOP). SYNOPSIS dd2_rewind_tape [ -f ] dd2_rewind_tape -help [ help_type ] DESCRIPTION dd2_rewind_tape rewinds the tape to the beginning of the current partition (BOP). If the cartridge has just been inserted, position not yet extablished, the current partition is assumed to be 0. dd2_rewind_tape is available to all users.
DD-2 Utilities Manual Pages nonzero dd2_rewind_tape Operation failed. A nonzero return value describes the error encountered error during processing (see “Exit Status” on page 6-5).
Running Head dd2_set_drive 6.14 DD-2 Utilities ManualModel Pages No. dd2_set_drive NAME dd2_set_drive - change tape drive configuration parameters. SYNOPSIS dd2_set_drive -setdrv [ -f ] dd2_set_drive -help [ help_type ] DESCRIPTION dd2_set_drive changes the tape drive configuration parameters to the values specified. To view the current settings, use the dd2_query_drive utility.
DD-2 Utilities Manual Pages tdconfig dd2_set_drive This bit mask specifies the tape drive configuration as a hexadecimal value representing the enabled options.
DD-2 Utilities ManualModel Pages No. Running Head dd2_set_drive sctime The Scanner Timeout parameter specifies (in minutes) how long the tape drive idles before stopping scanner rotation after a thread timeout. The default is 5. The range is 0-30. thtime The Thread Timeout parameter specifies (in seconds) how long the tape drive idles before doing a park and unthread operation. The park location is determined by the Park Anywhere configuration parameter. The default is 30. The range is 6-30.
DD-2 Utilities Manual Pages dd2_set_drive Enter the hexadecimal value for the configuration parameter mask in the first element and the buffer ratios in the fourth and fifth elements. Leave all other elements empty to retain the current settings for these parameters.
Running Head dd2_setparam_drive 6.15 DD-2 Utilities ManualModel Pages No. dd2_setparam_drive NAME dd2_setparam_drive - change tape drive data block size and tape device driver debug level. SYNOPSIS dd2_setparam_drive -param param_spec[ -f ] dd2_setparam_drive -help [ help_type ] DESCRIPTION dd2_setparam_drive changes the tape drive data block size and/or the tape device driver debug level. To view the current settings, use the dd2_getparam_drive utility.
DD-2 Utilities Manual Pages dd2_setparam_drive blksize Integer that specifies the data block size in bytes. Valid for write operations only (read operations adjust to the existing block size). This value must be the same for all data blocks within a file section and can be 1 or any even number from 80 through 1199838. The block size does not include the two-byte checksum, if any. If checksums are disabled, the maximum block size is 1199840.
DD-2 Utilities ManualModel Pages No. Running Head dd2_setparam_drive EXIT STATUS The dd2 utilities use the following exit status codes, and may also produce output to -stdout on success: 0 Operation succeeded. nonzero Operation failed. A nonzero return value describes the error encountered error during processing (see “Exit Status” on page 6-5). EXAMPLES 1. Set the data block size to 16384 and enable Request Sense information: dd2_setparam_drive -param ’:16384:0x0400:’ 2.
DD-2 Utilities Manual Pages 6.16 dd2_setpos_tape dd2_setpos_tape NAME dd2_setpos_tape - positions the tape drive to the specified location. SYNOPSIS dd2_setpos_tape -position position_spec [ -f ] dd2_setpos_tape -help [ help_type ] DESCRIPTION dd2_setpos_tape positions the tape drive to the specified location. This is the data block address at which the next read or write operation occurs, and is often referred to as the current position.
DD-2 Utilities ManualModel Pages No. Running Head dd2_setpos_tape The -position argument comprises a multi-element specification ordered as described below. Each element must be delineated by colons and included in the specification even if left empty (a space between colons is not considered empty). To specify a DD-2 position, provide a six-element -position ordered as follows: -position :postype:volid:adfn:ptid:fsn:ldbn:.
DD-2 Utilities Manual Pages dd2_setpos_tape If this element is left empty, the utility fails unless you specify the partition ID, in which case tape positions to FSN 1 of the specified partition. Setting the FSN element to -1 sets the position to the end of data (EOD) of the target partition. ldbn Logical Data Block Number (LDBN), numbered starting at zero for the first data block in the file section.
Running Head dd2_setpos_tape DD-2 Utilities ManualModel Pages No. dd2_setpos_tape -position ’:DD2:::::278:’ 2. Using the same starting position as above, the following example sets the position to the start of file section 20 in the same partition. Because the ldbn element is left empty, a change in the file section sets the position to the start of the file section rather than to block 234. dd2_setpos_tape -position ’:DD2::::20::’ 3.
DD-2 Utilities Manual Pages 6.17 dd2_space_tape dd2_space_tape NAME dd2_space_tape - change current position by a specified number of blocks or files, or set current position to end of data (EOD) in the current partition. SYNOPSIS dd2_space_tape -space [ -f ] dd2_space_tape -help [ help_type ] DESCRIPTION dd2_space_tape performs relative rather than absolute positioning.
DD-2 Utilities ManualModel Pages No. Running Head dd2_space_tape The -space argument comprises a two-element specification ordered as follows: -space :spacetype:count:. Each element must be delineated by colons and included in the specification. Valid parameters for the elements are described below. spacetype String that specifies the type of spacing performed: • • • count FM Space by filemarks. BLK Space by blocks.
DD-2 Utilities Manual Pages dd2_space_tape dd2_space_tape -space :EOD:: 4.
Running Head dd2_status_drive 6.18 DD-2 Utilities ManualModel Pages No. dd2_status_drive NAME dd2_status_drive - get tape drive current operational status and results of last I/O operation. SYNOPSIS dd2_status_drive -stdout [ -f ] [ -n ] dd2_status_drive -help [ help_type ] DESCRIPTION dd2_status_drive returns current tape drive operational status and the results of last I/O operation. For drive configuration information, use the dd2_query_drive utility.
DD-2 Utilities Manual Pages dd2_status_drive The -stdout argument supports the keywords listed below. Some fields can print in verbose or non-verbose style, depending on the keyword specified. Non-verbose style (%keyword) prints only the returned value; verbose style (%v_keyword) replaces the returned value with a descriptive string. If the data for a particular keyword is not available, na prints instead of the value (or string) for that keyword.
DD-2 Utilities ManualModel Pages No. Running Head dd2_status_drive %drvblksz Drive’s current block size. %fileblksz Block size of file at current position on tape. ENVIRONMENT The $TAPE environment variable specifies the tape device to use if the -f option is omitted. EXIT STATUS The dd2 utilities use the following exit status codes, and may also produce output to -stdout on success: 0 Operation succeeded. nonzero Operation failed.
DD-2 Utilities Manual Pages 6.19 dd2_unload_tape dd2_unload_tape NAME dd2_unload_tape - unload the tape cartridge from the tape drive. SYNOPSIS dd2_unload_tape [ -f ] dd2_unload_tape -help [ help_type ] DESCRIPTION dd2_unload_tape unloads and ejects the tape cartridge from the drive after parking it at the system zone nearest to the Beginning of Tape (BOT) side of the current position.
DD-2 Utilities ManualModel Pages No. Running Head dd2_unload_tape EXIT STATUS The dd2 utilities use the following exit status codes, and may also produce output to -stdout on success: 0 Operation succeeded. nonzero Operation failed. A nonzero return value describes the error encountered error during processing (see “Exit Status” on page 6-5).
DD-2 Utilities Manual Pages 6.20 dd2_weof_tape dd2_weof_tape NAME dd2_weof_tape - write filemark(s) or flush tape drive buffer to tape. SYNOPSIS dd2_weof_tape -weof [ -f ] dd2_weof_tape -help [ help_type ] DESCRIPTION dd2_weof_tape writes the specified number of filemarks at the current position unless zero filemarks are specified; in that case, the drive buffer is flushed to tape without writing any filemarks. dd2_weof_tape fails if the current position is undefined.
DD-2 Utilities ManualModel Pages No. Running Head dd2_weof_tape -weof Specifies how many filemarks to write and whether or not to flush the drive buffer to tape. You must provide a -weof argument except when using the -help argument. The -weof argument comprises a two-element specification ordered as follows: -weof :count:flush:. Each element must be delineated by colons and included in the specification. Valid parameters for the elements are described below.
DD-2 Utilities Manual Pages 6.21 dd2_write_perf dd2_write_perf NAME dd2_write_perf - measure overall write performance of device and host. SYNOPSIS dd2_write_perf -perf [ -f ] dd2_write_perf -help [ help_type ] DESCRIPTION dd2_write_perf calculates the write data rate from host system memory to a SCSI device. It measures time around each of the write calls and outputs individual write and overall times. dd2_write_perf is available to all users.
DD-2 Utilities ManualModel Pages No. Running Head dd2_write_perf sample_rate Integer that specifies sample rate for displaying write calls. If the sample rate is 1, every write is displayed. If the sample rate is 10, every tenth write is displayed. ENVIRONMENT The $TAPE environment variable specifies the tape device to use if the -f option is omitted.
DD-2 Utilities Manual Pages dd2_write_perf Instance Transfer 9 write time 0.682080 Bytes/Sec 14732254 Totals: 10 Cumulative write time Bytes/Sec 11.327365 08871062 16.
Glossary and Acronyms Glossary Appendix A Glossary and Acronyms A.1 Glossary Absolute Double Frame Number (ADFN) The basic unit of data storage on a DD-2 tape. There is a unique, unsigned 24-bit numerical identifier for each double frame (physical block) on a formatted tape. ADFN increments by one for each successive double frame, including those containing only system information as well as those that can accept user data. Helical recording begins at ADFN 2048.
Model No. Glossary and Acronyms Running Head Glossary Block Size The size, in bytes, of a block. For data blocks, there is one block size within any given file section. Physical blocks have a single fixed size of 1199840 bytes. Byte-stream interfaces have a data block size of 1 byte. Buffer An area in computer memory where output data is stored pending a write operation or where input data is received from a read operation. See also Buffered I/O and Tape Drive Data Buffer.
Glossary and Acronyms Glossary Current Position An indicator that specifies the tape location at which the next I/O operation is to occur. See also Position. Data Block A series of consecutive bytes of a fixed length that comprises the logical unit in which an application transfers data to or from a device. Any given file section on tape has only one data block size. Each data block is followed by a two-byte checksum, unless the checksum feature has been disabled. See also Physical Block.
Model No. Glossary and Acronyms Running Head Glossary Driver See Device Driver. DST Data Storage Technology, a registered trademark of Ampex Corporation, identifies the technology used in storage products designed around the DD-2 medium format. DST 310 A DST tape drive that uses the fast and wide SCSI-2 protocol to issue commands and transfer data. DST Cartridge A high-capacity data storage magnetic tape cartridge that meets the ANSI DD-2 standard. Cartridges come in three sizes: small (4.3 x 6.
Glossary and Acronyms Glossary End of Media (EOM) Same as End of Partition. End of Media Warning (EMW) (End of Media Warning is more appropriately thought of as End of Partition Warning. The terminology is maintained for consistency with earlier DD-2 tape configurations.) EMW is a position located ten physical blocks (approximately 11.4 MB) before the end of a partition. This position is a recorded mark on tape that is not user configurable.
Model No. Glossary and Acronyms Running Head Glossary Filemark A physical indicator on the tape that delimits file sections. Logically, a filemark can be read or written the same as a data block. However, a filemark does not actually occupy space on the tape itself in the DD-2 format, but is instead implemented as a special block marker. File Section A set of zero or more consecutive data blocks preceded by a filemark or BOP and followed by a filemark or EOD.
Glossary and Acronyms Glossary Interface Parameters A set of attributes that control the characteristics of an open interface to a device. Most interface parameters are configured as static device special file attributes. Others, such as the data block size, can be changed on the fly after the device is opened. ioctl A system call that performs a device I/O control operation on behalf of the calling program. Kilobyte (KB) 210 (1024) bytes.
Running Head Glossary Open Model No. Glossary and Acronyms A system call that establishes an interface to a device special file and determines the characteristics of that interface within the bounds defined by the device special file. Pack Partition Layout A tape format that packs as many partitions as possible onto a tape, with system zones occurring anywhere within a partition. See also Alternate, Stretch, and Waste partition layouts.
Glossary and Acronyms Glossary Position A location on a DD-2 tape that is specified by a combination of partition, FSN, and LDBN. Some drives allow a DST600-compatible positioning mode that uses the CDBN (cumulative data block number within the partition) instead of the LDBN. See also current position. Preformatting See Full Formatting. Process The unique execution of a program. An operating system process has a process ID, which is a unique number assigned when the program is invoked.
Running Head Glossary SCSI-2 Model No. Glossary and Acronyms Small Computer System Interface, version 2. An ANSI standard that defines the characteristics of an input/output bus for interconnecting computers and peripheral devices. SCSI-2 provides host computers with device independence within a class of devices. The pass-through interface to the DST Driver allows an application to use the DST310 SCSI-2 interface with minimal interpretation.
Glossary and Acronyms Glossary Tape Drive Buffer A temporary storage area that the DST drive uses to hold data being transferred to or from the tape. In write mode, the drive uses the buffer to store data that the DST Driver has written to the drive, but which the drive has not yet transferred to the tape itself. In read mode, the drive uses the buffer to read in data from the tape in anticipation of future read requests by the DST Driver.
Running Head Glossary Model No. Glossary and Acronyms Volume Format Information Zone (VFI) A set of data that identifies a given DD-2 cartridge and describes its format — partition size and count, system zone layout etc. Volume format information is written on the tape in each VFI zone. Volume ID A six-byte value intended to hold a label that uniquely identifies the tape. Each VFI contains a copy of the volume ID.
Glossary and Acronyms A.2 Acronyms Acronyms ADFN BOM BOP BOT CDBN DBN DD-2 DST EMW EOD EOF EOM EOR EOP EOT EW FSN GB LDBN MB NOP PBOM PBOT PEOM PEOT PID PWA SCSI-2 TB UID VFI Ampex 1308911-02 Absolute Double Frame Number. Beginning of Media. Beginning of Partition. Beginning of Tape. Cumulative Data Block Number. Data Block Number. Data Digital 2. Data Storage Technology End of Media Warning. End of Data. End of File. End of Media. End of Recording. End of Partition. End of Tape. Early Warning.
Device Special Files Introduction Appendix B Device Special Files B.1 Introduction An application or utility accesses the DST/DIS or IRIX tpsc tape device driver by opening a device special file. Each file has a name and unique default interface parameter settings that control the actions taken on open, while open, and on close. On all platforms except IRIX, you can change the default interface parameter settings for a device special file by editing the configuration file.
Model No. Device Special Files Running Head Introduction Table B-1.
Device Special Files Introduction Table B-2.
Model No. Device Special Files Running Head Introduction Table B-3.
Device Special Files Introduction Table B-4. AIX Device Special Files Default Actions Device Special File Interface Parameter Setting and Action Performed Default Actions on Open /dev/rmt*.0 /dev/rmt*.1 /dev/rmt*.2 /dev/rmt*.4 /dev/rmt*.5 /dev/rmt*.6 /dev/rmt*.8 /dev/rmt*.9 /dev/rmt*.10 /dev/rmt*.12 /dev/rmt*.13 /dev/rmt*.14 /dev/rmt*.3 /dev/rmt*.11 DST_SBLK_SIZE — On Implements the user-defined block size on open. This is the block size specified in the device special file configuration file.
Model No. Device Special Files Running Head Introduction Table B-4. AIX Device Special Files Default Actions (Continued) Device Special File Interface Parameter Setting and Action Performed Default Actions While Open /dev/rmt*.0 /dev/rmt*.1 /dev/rmt*.2 /dev/rmt*.4 /dev/rmt*.6 DST_APPEND_ONLY- Off Allows writing at any position up to and including EOD (even if it results in overwriting of previously recorded data). DST_NO_REFORMAT- Off Allows reformatting of tapes.
Device Special Files Introduction Table B-4. AIX Device Special Files Default Actions (Continued) Device Special File Interface Parameter Setting and Action Performed Default Actions While Open (Continued) /dev/rmt*.8 /dev/rmt*.9 /dev/rmt*.10 /dev/rmt*.12 /dev/rmt*.14 DST_APPEND_ONLY, DST_NO_REFORMAT, DST_IGN_FM, and DST_NO_FLUSH Same as rmt*.0 above.
Model No. Device Special Files Running Head Introduction Table B-4. AIX Device Special Files Default Actions (Continued) Device Special File Interface Parameter Setting and Action Performed Default Actions During Close /dev/rmt*.0 /dev/rmt*.4 /dev/rmt*.8 /dev/rmt*.12 DST_NO_FM — Off If the last command issued before the close() was a SCSI Write command, writes a single filemark (flushing any data in the tape drive buffer to tape). DST_NO_FLUSH — Off Flushes the tape drive buffer to tape.
Device Special Files Introduction Table B-4. AIX Device Special Files Default Actions (Continued) Device Special File Interface Parameter Setting and Action Performed Default Actions During Close (Continued) /dev/rmt*.3 /dev/rmt*.7 /dev/rmt*.11 /dev/rmt*.15 DST_NO_FM — On Does not write a filemark automatically. (You can, however, write a filemark at or before close by issuing a Write Filemark command.) DST_NO_FLUSH — On Does not flush the tape drive data buffer.
Model No. Device Special Files Running Head Introduction Table B-5. .DEC, HP-UX, and Solaris Device Special Files Default Actions Device Special File1 Interface Parameter Setting and Action Performed Default Actions on Open *.0 *.1 *.2 *.4 *.5 *.6 *.8 *.9 *.10 *.12 *.13 *.14 DST_SBLK_SIZE — Off *.3 *.11 DST_SBLK_SIZE, DST_NO_OPN_CMD, DST_DEF_POS_OPN, and DST_RETEN_OPN Same as *.0 above. Retains current block size. DST_NO_OPN_CMD — Off Clears outstanding Unit Attention conditions.
Device Special Files Introduction Table B-5. .DEC, HP-UX, and Solaris Device Special Files Default Actions (Continued) Device Special File1 Interface Parameter Setting and Action Performed Default Actions While Open *.0 *.1 *.2 *.4 *.6 DST_APPEND_ONLY- Off Allows writing at any position up to and including EOD (even if it results in overwriting of previously recorded data). DST_NO_REFORMAT- Off Allows reformatting of tapes.
Model No. Device Special Files Running Head Introduction Table B-5. .DEC, HP-UX, and Solaris Device Special Files Default Actions (Continued) Device Special File1 Interface Parameter Setting and Action Performed Default Actions While Open (Continued) *.8 *.9 *.10 *.12 *.14 DST_APPEND_ONLY, DST_NO_REFORMAT, DST_IGN_FM, and DST_NO_FLUSH Same as *.0 above.
Device Special Files Introduction Table B-5. .DEC, HP-UX, and Solaris Device Special Files Default Actions (Continued) Device Special File1 Interface Parameter Setting and Action Performed Default Actions During Close *.0 *.4 *.8 *.12 DST_NO_FM — Off If the last command issued before the close() was a SCSI Write command, writes a single filemark (flushing any data in the tape drive buffer to tape). DST_NO_FLUSH — Off Flushes the tape drive buffer to tape.
Model No. Device Special Files Running Head Introduction Table B-5. .DEC, HP-UX, and Solaris Device Special Files Default Actions (Continued) Device Special File1 Interface Parameter Setting and Action Performed Default Actions During Close (Continued) *.3 *.7 *.11 *.15 DST_NO_FM — On Does not write a filemark automatically. (You can, however, write a filemark at or before close by issuing a Write Filemark command.) DST_NO_FLUSH — On Does not flush the tape drive data buffer.
Device Special Files Introduction Table B-6. DST/DIS Device Special Files Default Actions Device Special File Interface Parameter Setting and Action Performed Default Actions on Open /dev/rmt/tpsXdY /dev/rmt/tpsXdYnr /dev/rmt/tpsXdYnm /dev/rmt/tpsXdYnrnm /dev/rmt/tpsXdYnrnf /dev/rmt/tpsXdYnrnfnm DST_SBLK_SIZE — Off Retains current block size. DST_NO_OPN_CMD — Off Clears outstanding Unit Attention conditions. DST_DEF_POS_OPN and DST_RETEN_OPN — Off The current position is not changed.
Model No. Device Special Files Running Head Introduction Table B-6. DST/DIS Device Special Files Default Actions (Continued) Device Special File Interface Parameter Setting and Action Performed Default Actions While Open (Continued) /dev/rmt/tpsXdYnrnf /dev/rmt/tpsXdYnrnfnm DST_APPEND_ONLY, DST_NO_REFORMAT, DST_IGN_FM, DST_ZERO_ON_FM, and DST_ZERO_ON_EW — Same as/dev/rmt/tpsXdY above. DST_NO_FLUSH - On Filemarks written to tape are buffered.
Device Special Files Introduction Table B-6. DST/DIS Device Special Files Default Actions (Continued) Device Special File Interface Parameter Setting and Action Performed Default Actions During Close (Continued) /dev/rmt/tpsXdYnm DST_NO_FM — On Does not write a filemark automatically. (You can, however, write a filemark at or before close by issuing a Write Filemark command.) DST_NO_FLUSH — Off Flushes the tape drive buffer to tape.
Model No. Device Special Files Running Head Introduction Table B-6. DST/DIS Device Special Files Default Actions (Continued) Device Special File Interface Parameter Setting and Action Performed Default Actions During Close (Continued) /dev/rmt/tpsXdYnrnf DST_NO_FM — Off If the last command issued before the close() was a SCSI Write command, writes a single filemark (flushing any data in the tape drive buffer to tape). DST_NO_FLUSH — On Does not flush the tape drive buffer.
Device Special Files Introduction Table B-7. Actions Controlled by DST/DIS Device Special Interface Parameters Interface Parameter Action On Open Action On Close Overwriting of data on tape. DST_APPEND_ONLY Append only DST_DEF_POS_OPN Action While Open Initial position. Set default position on open Read behavior when the first read detects a filemark before any data is transferred. DST_IGN_FM Ignore filemark on first read Automatic writing of filemark.
Model No. Device Special Files Running Head Introduction Table B-7. Actions Controlled by DST/DIS Device Special Interface Parameters (Continued) Interface Parameter DST_ZERO_ON_EW Report zero bytes on read or write after Early Warning (EW) DST_ZERO_ON_FM Report zero bytes on read after filemark B-20 Action On Open Action While Open Action On Close Read/write behavior when Early Warning is detected. Read behavior when a filemark is detected.
Device Special Files Introduction Table B-8. Device Special File Interface Parameter Description Mnemonic Name (Bit Location) DST_APPEND_ONLY Append only (Ox0000100) DST_DEF_POS_OPN Set default position on open (Ox0000400) Description On — Allows writing only at end of recorded data (EOD). Note that this is not the same as the open call O_APPEND flag, which the tape device driver does not support.
Model No. Device Special Files Running Head Introduction Table B-8. Device Special File Interface Parameter Description (Continued) Mnemonic Name (Bit Location) DST_NO_REFORMAT No tape reformatting (Ox0000400) DST_NO_RESERVE No reserve (Ox0000800) DST_NO_REWIND No rewind on close (Ox0000001) Description On — Prevents reformatting of tapes. Off — Allows reformatting of tapes. On — Allows multiple hosts to use the tape drive concurrently. Off — Reserves the tape drive for exclusive use by the initiator.
Device Special Files Introduction Table B-8. Device Special File Interface Parameter Description (Continued) Mnemonic Name (Bit Location) DST_SYNC_WRITE Synchronize tape drive buffer after write (Ox0001000) Description When set to on, automatically flushes tape drive buffer to tape after each write data command. When set to off, does not flush tape drive buffer after a write data command. Note: The DST_NO_FLUSH parameter controls tape drive behavior when a write filemark command is issued.
Result Codes and Machine Status Introduction Appendix C Result Codes and Machine Status C.1 Introduction This section defines Ampex DST/DIS tape drive Result and Machine Status Codes. This information is intended to aid service personnel in diagnosing and correcting problems. It is reported by dd2_status_drive. Acronyms used in the following tables are defined at the end of each table. Note: Table C-1.
Model No. Result Codes and Machine Status Running Head Introduction Table C-2. MSR Result Code Definitions C-2 Code Hex Meaning 0 00h Success - Result codes are included in responses to MSI* commands upon completion, and with the Cartridge Load Complete Interrupt. If the result code is other than Success, the command failed to complete its execution properly (see also EOR* Encountered and Completed, below).
Result Codes and Machine Status Introduction Table C-2. MSR Result Code Definitions (Continued) Code Hex Meaning 12 0Ch Implicit R/W Position Not Established - An attempt was made to read or write a Physical Block, but no Implicit Position has been established at which to read or write.
Model No. Result Codes and Machine Status Running Head Introduction Table C-2. MSR Result Code Definitions (Continued) C-4 Code Hex Meaning 23 17h Linear Tracks Fault - An error was encountered involving the Linear Tracks such that the command being executed cannot complete successfully; for example, Linear Tracks non-recording detected while formatting.
Result Codes and Machine Status Introduction Table C-2. MSR Result Code Definitions (Continued) Code Hex 37 25h Reserved for internal use. 38 26h Reserved for internal use. 39 27h Non-recording Detected - A write or format operation has failed due to detection that older data or no data was read while writing. 40 28h Completed - A queued Physical Block command has been successfully executed, but the MSR has entered a suspended state due to the failure of a previous command in the queue.
Model No. Result Codes and Machine Status Running Head Introduction Table C-2. MSR Result Code Definitions (Continued) Code Hex Meaning *ADFN = Absolute Double Frame Number *EEW = Early End of media Warning *EMW = End of Media Warning *EOM = End of Media *EOP = End of Partition *EOR = End of Recording *EOT = End of Tape *FDBN = First Data Block Number *MSI = Mass Storage Interface *MSR = Mass Storage Recorder Table C-3.
Result Codes and Machine Status Introduction Table C-3.
Model No. Result Codes and Machine Status Running Head Introduction Table C-3.
Result Codes and Machine Status Introduction Table C-4. Machine Status Definitions Byte Bit Description 23 7 Statistics Counter Half-Full and Uncleared - At least one operational or service statistics counter reached the half-full level and was not cleared. 23 6 Statistics Counter Maximum and Uncleared - At least one operational or service statistics counter reached maximum and was not cleared. Each such counter is held at its maximum value.
Model No. Result Codes and Machine Status Running Head Introduction Table C-4. Machine Status Definitions (Continued) Byte Bit Description 24 3 Panic Cartridge Unload - The transport detected a fatal error and has elevated the cartridge in order to prevent accidental recording or damage. 24 2 Environmental Limit - An MSR-Electronics or -Transport power supply, temperature or air supply sensor has detected an out-ofrange condition.
Result Codes and Machine Status Introduction Table C-7.
MSR Diagnostic Status Information Introduction Appendix D MSR Diagnostic Status Information D.1 Introduction The Mass Storage Recorder (MSR) Diagnostic Status information consists of three categories: • • • RF Status Latched/Continuous Status Physical Block Related Status This information is intended to aid service personnel in diagnosing and correcting problems. It is reported by dst_getlog() and dd2_getlog_drive. D.
Model No. MSR Diagnostic Status Information Running Head Latched/Continuous Status Field Table D-1. RF Status Parameters (Continued) D.3 Byte Bit 72-87 7-0 88-179 736-0 Description Head P4 R.F Envelope Reserved Latched/Continuous Status Field Table D-2. describes the arrangement and content of the Latched/Continuous Status Field data structure. Table D-2.
MSR Diagnostic Status Information Latched/Continuous Status Field Table D-2. Latched/Continuous Status Parameters (Continued) Byte Bit 45 4 Electronics/Transport Port Response Timeout Error 46 3 Local Port UART Framing Error 46 1 Local Port UART Overrun Error 47 7-0 Reserved 48 7-0 Reserved 49 1 Not Locked to Quad Frame - Set if SBC controller is unable to synchronize scan interrupts. 49 0 Scan Interrupt Missing - Set if SBC controller 5-ms. scan interrupts are not occurring.
Running Head Latched/Continuous Status Field Model No. MSR Diagnostic Status Information Table D-2.
MSR Diagnostic Status Information Latched/Continuous Status Field Table D-2.
Running Head Latched/Continuous Status Field Model No. MSR Diagnostic Status Information Table D-2.
MSR Diagnostic Status Information Latched/Continuous Status Field Table D-2. Latched/Continuous Status Parameters (Continued) Byte Bit Description 126 7-0 Reserved 127 7-0 Reserved 128 7 MSI Interface/Shuffle Buffers (SBC) - Set if latched/continuous status indicates data path errors reported by SBC card. 128 5 ECC/Formatter - Set if latched/continuous status indicates data path errors reported by ECC/Formatter card.
Model No. MSR Diagnostic Status Information Running Head Latched/Continuous Status Field Table D-2. Latched/Continuous Status Parameters (Continued) Byte Bit Description 134-135 15-0 Reserved 136-139 31-0 Current Calendar Time In Seconds, Starting January 1, 1990, GMT.
MSR Diagnostic Status Information Latched/Continuous Status Field Table D-2. Latched/Continuous Status Parameters (Continued) Byte Bit Description 156 6 Transport Fault: Elevator Movement - Set when elevator mechanism has insufficient or excessive movement. 156 5 Transport Fault: Helix Movement - Set when helix mechanism has insufficient or excessive movement. 156 4 Transport Fault: Loader Movement - Set when loader mechanism has insufficient or excessive movement.
Running Head Latched/Continuous Status Field Model No. MSR Diagnostic Status Information Table D-2. Latched/Continuous Status Parameters (Continued) D-10 Byte Bit Description 158 2 Transport Fault: Coupling Servo Crash - Set when coupling servo error becomes excessive. 158 1 Transport Fault: EOT Sensor Failed - Set when end-of-tape sensor has failed. 158 0 Transport Fault: Scanner Not Locked - Set when scanner phase is out of sync with reference signals.
MSR Diagnostic Status Information Latched/Continuous Status Field Table D-2. Latched/Continuous Status Parameters (Continued) Byte Bit 160 1 Transport Fault: Takeup Arm Current High - Set when excessive takeup arm motor current is needed for arm movement. 160 0 Transport Fault: Takeup Reel Jammed - Set when takeup reel should be rotating but no movement is sensed. 161 7 Transport Fault: Takeup Reel Tach Absent - Set when no takeup reel motor tachometer pulses are sensed.
Running Head Latched/Continuous Status Field Model No. MSR Diagnostic Status Information Table D-2. Latched/Continuous Status Parameters (Continued) D-12 Byte Bit Description 163 3 Transport Fault: +24V Power Supply - Set when +24 volt power supply varies by more than 2.44 volts. 164 7 Transport Fault: AST Not Standard - Set when Automatic Scan Tracking is not set for normal operation (test mode only).
MSR Diagnostic Status Information D.4 Physical Block Related Status Field Physical Block Related Status Field Table D-3 describes the arrangement and content of the Physical Block Related Status Field data structure. An Ampex SCSI tape drive gathers Physical Block Related Status during each Physical Block operation and relates to data path status collected throughout the entire 16 scans (5 ms intervals). There are two ECC decoder paths for which status is collected in each scan.
RunningBlock HeadRelated Status Field Physical Model No. MSR Diagnostic Status Information Table D-3.
MSR Diagnostic Status Information Physical Block Related Status Field Table D-3.
Statistics Introduction Appendix E Statistics E.1 Introduction This section describes tape drive service and operational statistics parameters. E.2 Service Statistics Parameters (Log Page 31h) The Service Statistics Parameters are reported by dst_getlog() and dd2_getlog_drive. Table E-1.
Model No. Statistics Running Head Parameters (Log Page 31h) Service Statistics Table E-1.
Statistics E.3 Operational Statistics Parameters 1 (Log Page Operational Statistics Parameters 1 (Log Page 32h) Operational Statistics Parameters 1 are reported by dst_getlog() and dd2_getlog_drive. Table E-2.
Model No. Statistics Running Head Operational Statistics Parameters 2 (Log Page 33h) E.4 Operational Statistics Parameters 2 (Log Page 33h) Operational Statistics Parameters 2 are reported by dst_getlog() and dd2_getlog_drive. Table E-3.
Statistics Operational Statistics Parameters 2 (Log Page Table E-3.
Model No. Statistics Running Head Operational Statistics Parameters 2 (Log Page 33h) Table E-3.
Statistics Operational Statistics Parameters 2 (Log Page Table E-3.
Running Head Operational Statistics Parameters 2 (Log Page 33h) Model No. Statistics 2. Events With Parity Errors. Parity errors are detected at scan (5 ms) intervals. There may be more than one parity error per interval. All parity errors within the same interval are counted as just one event. Parity error indications are automatically reset at the start of each interval. 3. Statistics Related to Zero Erasure Counts.
® Ampex Corporation 500 Broadway Redwood City, CA 94063-3199 Part Number 1308911-02 ™