3590B, 3590E, and 3590H is IBM's newest mainframe cartridge tape family. It is the same size as a 3480, and looks almost identical. A 3590B holds between 10 and 60 GB, a 3590E holds between 20 and 120 GB, and a 3590H holds between 30 and 180 GB, depending on tape length and data compression.
9840 is StorageTek's fast-access tape, which holds about 20 GB native.
4mm, 8mm, LTO, SDLT, DLT, TK, and others are not usually considered "mainframe tapes", but mainframe tape formats can be written to all those tapes. See our Media List for tapes.
QIC tapes come in
two types: Those that can only write 512 byte blocks, and those that can
write blocks of any size. Most QIC drives of 150 MB or less are fixed
block mode and cannot write mainframe-like formats. Most drives of
525 MB and above can write in variable block mode.
There are two common formats: Labeled and Unlabeled. Both can use either EBCDIC or ASCII coding. Labeled tapes contain the Data Set Name, or DSN (file name), record length, block size, and other information about each file in the label. Unlabeled tapes contain only the raw data.
A tape can contain multiple files, or Data Sets and files can span tapes, creating a multivolume set of tapes.
There are many other labeled tape formats as well.
The content of these tapes can vary considerably, but fixed-length records are the most common. Because much of the data is from mainframe COBOL programs, binary data (e.g. comp and comp-3) is commonly found in these files. For articles about data types and COBOL please see our Technical Articles index.
All of the above result in many combinations, but the most common are:
EBCDIC: Like ASCII (see above), EBCDIC is a method of coding the alphabet with binary numbers. It uses a different coding assignment than ASCII, so the two are not compatible, and must be translated when going between EBCDIC and ASCII systems. For example, the letters "A", "B", and "C" in EBCDIC are coded as the values C1, C2, and C3 hex (193, 194, and 195 decimal), whereas in ASCII they are the values 41, 42, and 43 hex (65, 66, and 67 decimal). If you try to view an EBCDIC file on an ASCII computer it makes no sense. For example, an EBCDIC space will display as an "@" on an ASCII system, and the letters "A", "B", and "C" will display as graphics or not at all.
Blocks: Data is not written to tape in a continuous stream, but rather in groups of bytes called blocks. At the end of a block are error checking, or CRC, codes, then a "gap" to delineate the block, then either more blocks of data, or a "file mark" which denotes the end of that tape file. Storing many records in one block is a more efficient use of tape than writing only 1 record per block, because it reduces the number of gaps on the tape. To read or write a tape correctly you must specify both the size of the records and the size of these blocks .
Fixed Block tapes: Most data on mainframe systems is stored in fixed length records . When writing these records to a tape, the operator normally specifies a block size that is some multiple of the record size, such as 1, 10 or 100 records per block. This results in a tape where all the blocks except the last are of the same size. The last block is often a "short block" when there are not enough records remaining to fill another complete block.
For example, a file of 93 records of length 250, which is "blocked 10" (meaning 10 records per block), will have 9 blocks of 2500 bytes (10 x 250), and one short block of 750 bytes (3 x 250). Notice that "fixed block" does not mean the tape drive can only write blocks of one size, rather it means the blocks are of the same size, whatever that size is. The size of these blocks can be anything within the system limits, usually between 1 byte and 32,768 bytes.
Note: There are some kinds of tape drives, notable QIC drives, that are constrained to writing blocks of only 512 bytes. This is a different issue.
Blocking Factor & Block Size: The number of records written in a block (see Fixed Block Tapes, just above) is called the "blocking factor". The resulting size of the tape block is the record length times the blocking factor. A tape which contains, say, ten 250 byte records per block is said to be "blocked 10", and the block size is 2500. It's fairly common for people to mix-up the terms and tell you they have a tape with a record size of 250 and a block size of 10, when what they have is a tape with a record size of 250 and a block factor of 10, resulting in a block size of 2500.
Variable block tapes: This generic term means writing data of variable length records to a tape of variable length blocks. There are several methods to do this, but the three below are most common.
IBM Variable Block: This is a standard method specified by IBM. Its complete description is beyond the scope of this note, but in brief, each record varies in size and is prefixed by a binary length code giving its size. Likewise, each block varies in size and is prefixed by a binary length code giving its size. Some (varying) number of records are stored in each block.
ANSI Variable Block: This is similar to the IBM VB format, but the length codes and a few other things are different.
Blocks of Varying Size: This method simply writes the raw records to the tape in blocks of various lengths. Usually each block contains one record, so the size of the block is the size of that record.
Unlabeled Tape: This is a method of writing a tape where only the raw data file is written to the tape; it has no labels or other overhead on the tape -- only the raw data. The tape may be fixed block or variable block, but most are fixed block. The data may be in EBCDIC, ASCII, or binary.
Labeled Tapes: The term "label" refers to a magnetic "label" written to the tape, that denotes the contents of the tape. They are actually small tape files in some standardized form that are written on the tape, usually before each data file. They identify the file and provide information about it in much the same way that an office worker might apply a standardized form or cover sheet to a stack of papers to identify them. There are many kinds of labels, in many formats, but there are two industry standards, as follows.
IBM Standard Label (SL): The data is written in the same manner as an unlabeled tape, but each data file on tape has a "header label" written before it, and a "trailer label" written after it. Each of these labels is actually a small file written to the tape in a very specific format, containing information about the data file it is associated with. Among other things, these labels contain the DSN (Data Set Name, or file name) of the tape file, the record length, block length, creation and expiration dates, and the format of the file (fixed or variable). If a file spans multiple tapes these labels also indicate the segment on the current tape. IBM Standard Labels are recorded in EBCDIC, and the data file is normally also in EBCDIC.
ANSI Standard Labels: These are very similar to IBM SL, but both the label and the data are in ASCII.
formats: There are many other labeled tape formats, and some
minor variations on ANSI labeled tapes (such as PDP-11 and VAX tapes).
Also, it's common practice to write a tape that has normal labels but where
the data file is in a proprietary format. VAX VMS Backup tapes and
AS/400 "Save Object" tapes are examples. Although DISC supports many
of these formats, they are not considered standard "mainframe tape formats".
Please see our listings under the blue "Conversion Services" tab at the
top of the screen for formats we support.
For more articles on data conversion, see our TechTalk Index.
Disc Interchange Service
Media Conversion Specialists
15 Stony Brook Road
Westford, MA 01886