Mainframe Tape Terminology:

This is a brief discussion of mainframe tape terminology, and definitions of common terms.

Types of Tapes

9-track tapes are the big round tapes often seen in movies and associated with large computers. They typically hold either 40 MB or 160 MB.  See the photo at the right.

3480, 3490, 3490E are newer style cartridge tapes that are about 4" x 5", and hold from 200 MB to about 1600 MB.  See the photo at the right.  They are IBM's replacement for 9-track tapes.  3480 tapes are written like 9-track tapes, and almost everything about 9-track tapes also applies to 3480 tapes, with adjustment for the drive and capacity.

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.

How Data is Written to Tape

Data is written to tape in blocks.  Most tapes are "fixed block", meaning all the blocks in a file are of a fixed size, usually an integer multiple of the record size (see Blocking Factor), but there are also "variable block" formats.  (This is not to be confused with fixed-block drives, which can only write one block size. These mainframe tape drives always operate in variable block mode, and "fixed block" here means all the blocks are of the same size.)

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:

DISC can convert all these formats and several other combinations as well.

Here are brief definitions of the terms used above:

ASCII:  ASCII is a method of coding the alphabet with binary numbers which can be stored in memory and on disk. Each letter has been assigned a value.  For example, the value 41 hex (65 decimal) represents the upper case letter "A", 42 hex represents a "B", etc. When the computer sends a value of 41 hex to the terminal or printer, it displays an "A".

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.

Other 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.

Additional Information

For more articles on data conversion, see our TechTalk Index.

Disc Interchange Service Company, Inc.
Media Conversion Specialists
15 Stony Brook Road
Westford, MA 01886

Copyright © 1997 - 2015 by Disc Interchange
All rights reserved. See our copyright page.