Query: How to erase fixed lengths on 1/2 inch tape drive on sun

Chris Gabe isgtec!chris at uunet.uu.net
Fri Mar 23 12:52:39 AEST 1990


I need to send a drive-specific command to a half inch nine-track tape
drive.  This drive (M4 or Kennedy) interfaces to the SCSI bus on a sun
machine (sun4).  The sun standard tape drive opcodes do not support the
particular operation I wish to perform (erase fixed length).  The reason I
wish to do this is to update a "directory" file at the beginning of the
tape after appending files to the end of the tape.  Erasing several inches
of tape the first time, then only a couple of inches on subsequent updates
will allow for changes in temperature, etc, without the second file on the
tape getting corrupted.  This option is available, say, on the Convergent
CTS series machines, but not on the sun.  Anyway, the M4 drive (like
almost any tape drive) WILL erase fixed lengths if given the right SCSI
t(command.

A look at the SCSI high-level driver documentation has me wondering if
there isn't an easier way!  Apparently the SCSI driver does not support
streams, and I'm not sure this would help.  If I do have to write a
driver, do I have to get into all this physio() stuff, just to transfer
one request?

Another option would be to get sun to add this simple functionality to
their driver (clearly, the correct solution).  Is this a wild dream on my
part, or is there really a Sunta Claus?

I'm also open to any suggestions from anyone who has tackled this problem
before - there must be someone else out there who has had to deal with
this problem.  Writing the directory at the end of the tape is not an
acceptable solution, however.



More information about the Comp.sys.sun mailing list