[comp.os.vms] spooling from tape, request for C i/o by file id

SYSTEM@CRNLNS.BITNET (07/27/87)

Jo,

You can't spool files that are on tape because DEC's
symbionts access files by their "id number"s, not by filename.
This causes several inconveniences, one of which you have discovered.
Since tapes don't have index files, their files can't be accessed
by id. Another problem that this causes is that one cannot
modify a .COM file after submitting it to batch. Since the input symbiont
accesses by file id, batch will try to use the old file.
If you delete the old one (eg with a purge command), the batch job
won't run, but will crash with an "invalid SYS$INPUT" error.

Some non-DEC symbionts use the real file name, but they can't print
files that have been COPYed to the printer.
(An example of this is Art Stine's PostScript symbiont.)
A copy command actually creates a scratch file on the intermediate spool
device that only has an id, and does not appear in any directory by name.
grump.grump.

Now if some C expert were to send me some routines for doing i/o
to a file opened by id (presumably using RMS instead of the C i/o
library), I would be glad to incorporate them.

I hope this helps.

Selden E. Ball, Jr.
(Wilson Lab's network and system manager)

Cornell University                 NYNEX: +1-607-255-0688
Laboratory of Nuclear Studies     BITNET: SYSTEM@CRNLNS
Wilson Synchrotron Lab              ARPA: SYSTEM%CRNLNS.BITNET@WISCVM.WISC.EDU
Judd Falls & Dryden Road          PHYSnet/HEPnet/SPAN:
Ithaca, NY, USA  14853             LNS61::SYSTEM = 44283::SYSTEM (node 43.251)