home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #1 / NN_1993_1.iso / spool / comp / os / vms / 20316 < prev    next >
Encoding:
Text File  |  1993-01-04  |  1.7 KB  |  39 lines

  1. Newsgroups: comp.os.vms
  2. Path: sparky!uunet!zaphod.mps.ohio-state.edu!rpi!utcsri!newsflash.concordia.ca!sifon!thunder.mcrcim.mcgill.edu!sobeco!szweep
  3. From: szweep@sobeco.com (Steve Zweep)
  4. Subject: Variable length records to tape
  5. Organization: Sobeco Ernst & Young
  6. Distribution: na
  7. Date: Mon, 4 Jan 93 22:48:31 GMT
  8. Message-ID: <1993Jan4.224831.5366@sobeco.com>
  9. Keywords: VMS VARIABLE LENGTH PHYSICAL RECORDS FOREIGN SYSTEM
  10. Lines: 27
  11.  
  12. Can someone tell me how to write variable length physical blocks to tape
  13. with VMS, so that the tape can be read again on a foreign system?
  14.  
  15. In better detail:
  16.  
  17. If my file has record format "Variable length, maximum 2048 bytes", and I
  18. have a record that is 2100 bytes, then I need the first 2048 bytes written
  19. in one physical block and the next 52 bytes written in the next physical
  20. block, immediately followed by a physical end-of-block.  No leading size-
  21. of-block info, no trailing filler to complete 2048 bytes; just my data and
  22. physical end-of-block markers.  On disk, my file is stored just as I want
  23. it:  logical blocks are headed by 2 bytes to indicate their size, but
  24. these 2 bytes are not included in that size -- just my data.  I need VMS
  25. to write this file to tape using these 2 bytes to determine how long to
  26. make the physical block, with no extraneous overhead.  The size of the
  27. physical block would tell the system reading the tape how long the logical
  28. block is.  VMS will *read* a file this way, but when I use COPY to write
  29. one to tape and use "dd" to read it back on a UNIX system, each logical
  30. block is headed by it's size, and this header takes physical space in the
  31. block.  The last block in a record is padded to fill 2048 bytes.
  32.  
  33. Thanks,
  34.  
  35. - Andy Marchewka
  36. --
  37. Andy Marchewka, A.Marchewka@sobeco.com
  38. multiLIS Group, Sobeco Ernst and Young
  39.