Annotation of 43BSDReno/old/man/mtop.4, revision 1.1

1.1     ! root        1: .\" Copyright (c) 1980 Regents of the University of California.
        !             2: .\" All rights reserved.  The Berkeley software License Agreement
        !             3: .\" specifies the terms and conditions for redistribution.
        !             4: .\"
        !             5: .\"    @(#)mtop.4      4.1 (Berkeley) 5/15/85
        !             6: .\"
        !             7: .TH MTOP 4 10/8/81
        !             8: .UC 4
        !             9: .SH NAME
        !            10: mt \- UNIX magtape interface
        !            11: .SH DESCRIPTION
        !            12: The files
        !            13: .I "mt0, ..., mt15"
        !            14: refer to the UNIX magtape drives,
        !            15: which may be on the MASSBUS using the TM03 or TM78 formatters
        !            16: .IR ht (4)
        !            17: or
        !            18: .IR mt (4),
        !            19: or on the UNIBUS using either the TM11, TS11, or TU45 formatters
        !            20: .IR tm (4),
        !            21: .IR ts (4)
        !            22: or
        !            23: .IR ut (4).
        !            24: The following description applies to any of the transport/controller pairs.
        !            25: The files
        !            26: .I "mt0, ..., mt7"
        !            27: are low density, and
        !            28: .I "mt8, ..., mt15"
        !            29: are high density.
        !            30: On the TM03 and TM11 low density is 800bpi and high density is 1600bpi.
        !            31: On the TM78 low density is 1600bpi and high density is 6250bpi.
        !            32: On the TS11 both low and high density are 1600bpi.
        !            33: The files
        !            34: .I "mt0, ..., mt3"
        !            35: and
        !            36: .I "mt8, ..., mt11"
        !            37: are rewound when closed; the others are not.
        !            38: When a file open for writing is closed, two end-of-files are written.
        !            39: If the tape is not to be rewound
        !            40: it is positioned with the head between the two
        !            41: tapemarks.
        !            42: .PP
        !            43: A standard tape consists of a
        !            44: series of 1024 byte records terminated by an
        !            45: end-of-file.
        !            46: To the extent possible, the system makes
        !            47: it possible, if inefficient, to treat
        !            48: the tape like any other file.
        !            49: Seeks have their usual meaning and it is possible
        !            50: to read or write a byte at a time.
        !            51: Writing in very small units is inadvisable,
        !            52: however, because it tends to create monstrous record
        !            53: gaps.
        !            54: .PP
        !            55: The
        !            56: .I mt
        !            57: files discussed above are useful
        !            58: when it is desired to access the tape in a way
        !            59: compatible with ordinary files.
        !            60: When foreign tapes are to be dealt with, and especially
        !            61: when long records are to be read or written, the
        !            62: `raw' interface is appropriate.
        !            63: The associated files are named
        !            64: .I "rmt0, ..., rmt15,"
        !            65: but the same minor-device considerations as for the regular files still apply.
        !            66: A number of other ioctl operations are available
        !            67: on raw magnetic tape.
        !            68: The following definitions are from <sys/mtio.h>:
        !            69: .PP
        !            70: .nf
        !            71: /*
        !            72:  * Structures and definitions for mag tape io control commands
        !            73:  */
        !            74: 
        !            75: /* mag tape io control commands */
        !            76: #define MTIOCTOP       (('m'<<8)|1)    /* do a mag tape op */
        !            77: #define MTIOCGET       (('m'<<8)|2)    /* get mag tape status */
        !            78: 
        !            79: /* structure for MTIOCTOP - mag tape op command */
        !            80: struct mtop    {
        !            81:        short   mt_op;          /* operations defined below */
        !            82:        daddr_t mt_count;       /* how many of them */
        !            83: };
        !            84: 
        !            85: /* operations */
        !            86: #define MTWEOF 0       /* write an end-of-file record */
        !            87: #define MTFSF  1       /* forward space file */
        !            88: #define MTBSF  2       /* backward space file */
        !            89: #define MTFSR  3       /* forward space record */
        !            90: #define MTBSR  4       /* backward space record */
        !            91: #define MTREW  5       /* rewind */
        !            92: #define MTOFFL 6       /* rewind and put the drive offline */
        !            93: #define MTNOP  7       /* no operation, sets status only */
        !            94: 
        !            95: /* structure for MTIOCGET - mag tape get status command */
        !            96: 
        !            97: struct mtget   {
        !            98:        short   mt_type;                /* type of magtape device */
        !            99: /* the following two registers are grossly device dependent */
        !           100:        short   mt_dsreg;               /* ``drive status'' register */
        !           101:        short   mt_erreg;               /* ``error'' register */
        !           102: /* end device-dependent registers */
        !           103:        short   mt_resid;               /* residual count */
        !           104: /* the following two are not yet implemented */
        !           105:        daddr_t mt_fileno;      /* file number of current position */
        !           106:        daddr_t mt_blkno;       /* block number of current position */
        !           107: /* end not yet implemented */
        !           108: };
        !           109: 
        !           110: /*
        !           111:  * Constants for mt_type byte
        !           112:  */
        !           113: #define MT_ISTS                01
        !           114: #define MT_ISHT                02
        !           115: #define MT_ISTM                03
        !           116: #define MT_ISMT                04
        !           117: #define MT_ISUT                05
        !           118: .fi
        !           119: .ft R
        !           120: .PP
        !           121: Each
        !           122: .I read
        !           123: or
        !           124: .I write
        !           125: call reads or writes the next record on the tape.
        !           126: In the write case the record has the same length as the
        !           127: buffer given.
        !           128: During a read, the record size is passed
        !           129: back as the number of bytes read, provided it is no greater
        !           130: than the buffer size;
        !           131: if the record is long, an error is indicated.
        !           132: In raw tape I/O seeks are ignored.
        !           133: A zero byte count is returned when a tape mark is read,
        !           134: but another read will fetch the first record of the
        !           135: new tape file.
        !           136: .SH FILES
        !           137: /dev/mt?,
        !           138: /dev/rmt?
        !           139: .SH "SEE ALSO"
        !           140: mt(1), tar(1), tp(1), ht(4), mt(4), tm(4), ts(4)
        !           141: .SH BUGS

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.