Home Man
Today's Posts

Linux & Unix Commands - Search Man Pages
Man Page or Keyword Search:
Select Section of Man Page:
Select Man Page Repository:

NetBSD 6.1.5 - man page for mtio (netbsd section 4)

MTIO(4) 			   BSD Kernel Interfaces Manual 			  MTIO(4)

     mtio -- generic magnetic tape I/O interface

     #include <sys/ioctl.h>
     #include <sys/types.h>
     #include <sys/mtio.h>

     Magnetic tape has been the computer system backup and data transfer medium of choice for
     decades, because it has historically been cheaper in cost per bit stored, and the formats
     have been designed for portability and storage.  However, tape drives have generally been
     the slowest mass storage devices attached to any computer system.

     Magnetic tape comes in a wide variety of formats, from classic 9-track, through various
     Quarter Inch Cartridge (QIC) variants, to more modern systems using 8mm video tape, and Dig-
     ital Audio Tape (DAT).  There have also been a variety of proprietary tape systems, includ-
     ing DECtape, and IBM 3480.

     Regardless of the specific characteristics of the particular tape transport mechanism (tape
     drive), UNIX tape I/O has two interfaces: "block" and "raw".  I/O through the block inter-
     face of a tape device is similar to I/O through the block special device for a disk driver:
     the individual read(2) and write(2) calls can be done in any amount of bytes, but all data
     is buffered through the system buffer cache, and I/O to the device is done in 1024 byte
     sized blocks.  This limitation is sufficiently restrictive that the block interface to tape
     devices is rarely used.

     The "raw" interface differs in that all I/O can be done in arbitrary sized blocks, within
     the limitations for the specific device and device driver, and all I/O is synchronous.  This
     is the most flexible interface, but since there is very little that is handled automatically
     by the kernel, user programs must implement specific magnetic tape handling routines, which
     puts the onus of correctness on the application programmer.

     Each magnetic tape subsystem has a couple of special devices associated with it.

     The block device is usually named for the driver, e.g.  /dev/st0 for unit zero of a st(4)
     SCSI tape drive.

     The raw device name is the block device name with an "r" prepended, e.g.  /dev/rst0.

     By default, the tape driver will rewind the tape drive when the device is closed.	To make
     it possible for multiple program invocations to sequentially write multiple files on the
     same tape, a "no rewind on close" device is provided, denoted by the letter "n" prepended to
     the name of the device, e.g.  /dev/nst0, /dev/nrst0.

     The mt(1) command can be used to explicitly rewind, or otherwise position a tape at a par-
     ticular point with the no-rewind device.

     Two end-of-file (EOF) markers mark the end of a tape (EOT), and one end-of-file marker marks
     the end of a tape file.

     By default, the tape driver will write two End Of File (EOF) marks and rewind the tape when
     the device is closed after the last write.

     If the tape is not to be rewound it is positioned with the head in between the two tape
     marks, where the next write will over write the second end-of-file marker.

     All of the magnetic tape devices may be manipulated with the mt(1) command.

     A number of ioctl(2) operations are available on raw magnetic tape.  Please see <sys/mtio.h>
     for their definitions.

     The manual pages for specific tape device drivers should list their particular capabilities
     and limitations.

     dd(1), mt(1), pax(1), tar(1), st(4), wt(4)

     The mtio manual appeared in 4.2BSD.

     The status should be returned in a device independent format.

     If and when NetBSD is updated to deal with non-512 byte per sector disk media through the
     system buffer cache, perhaps a more sane tape interface can be implemented.

BSD					 January 14, 1999				      BSD

All times are GMT -4. The time now is 09:05 PM.

Unix & Linux Forums Content Copyrightę1993-2018. All Rights Reserved.
Show Password

Not a Forum Member?
Forgot Password?