User Tools

Site Tools


ibm:vm370-lib:cmshelp:vmarc.helpcmd

VMARC

CMS Commands

vmarc.helpcmd.txt
VMARC                                                     CMS User Area command

Use the VMARC command to create, load, or list archive files.  An archive file
is a single compressed file that contains multiple files.  VMARC can be used
in place of the CMS TAPE command.

The PACK function reads ordinary CMS files and produces the equivalent file in
a compacted form.  The compacted version of the file is usually significantly
smaller than the original, and therefore would occupy less disk space or would
require less time to transmit through a network.  VMARC allows more than one
compacted file to be written to the same output file.  The latter is called an
archive; the individual compacted files are members of the archive.

The UNPACK function reads archives created by PACK and regenerates the original
files from the archive members.

The LIST function scans archives created by PACK and reports the names of each
of the members.

The format of the VMARC command is:
+----------+------------------------------------------------------------------+
| VMARC    | LIST   infileid [pattern]   [( Options...[)]]                    |
|          | PACK   infileid [outfileid] [( Options...[)]]                    |
|          | UNPACK infileid [pattern]   [( Options...[)]]                    |
|          |                                                                  |
|          | Common options:                                                  |
|          |    FIfo|LIfo   REPlace|NOREPlace   Tap#|Tape   TRace|NOTRace     |
|          | Pack options:                                                    |
|          |    APPend|NOAPPend  BLock nnnn  LZW|STORE|S2  PRinter|PRt|PUnch  |
|          |                                                                  |
|          | Unpack options:                                                  |
|          |    HOld   IGNore|NOIGNore   NEWDate|OLDDate   READer|RDR         |
+----------+------------------------------------------------------------------+
where:

infileid specifies the file or files of the input archive[s] or file[s] to be
         processed.  Asterisks and percent-signs may be included in the
         filename and filetype as wildcards to specify groups of CMS files.
         The asterisk may be used in place of the file mode to specify all
         accessed disks.  This operand is required when the input is from disk,
         and it is disallowed when input is from a device (tape, punch or
         printer).

outfileid
         specifies the output file[s].  Equal-signs may be used in place of the
         filename, filetype, or filemode to indicate that that part of the file
         identifier should be derived from the input file identifier.  This
         parameter, therefore, may specify a single file to hold all of the
         compacted input files, or it may specify potentially a different file
         for each.  This operand is disallowed if output is to a device
         (tape, punch or printer).  If output is to disk and the outfileid
         parameter is omitted, output file[s] replace the input file[s].

pattern  specifies the filename and filetype of members that should be listed
         or unpacked.  Asterisks and percent-signs may be used as pattern-
         matching symbols.  The pattern parameter must include a disk mode
         letter, but the letter has no significance.  If omitted, VMARC uses
         * * A for the pattern.

Common Options:

FIfo | LIfo
         specifies that trace output be added to the console stack rather than
         displayed on the terminal.

REPlace | NOREPlace
         allows or prevents output files to overwrite existing files.
         NOREPLACE is the default.

Tap# | Tape
         specifies that output from a PACK operation, or input to an UNPACK or
         LIST operation, be directed to a tape unit.  The option may be
         specified as TAP1, TAP2, TAP3, or TAP4 to indicate which virtual tape
         drive is used.  TAPE is a synonym for TAP1.

TRace | NOTRace
         specified that the name and statistics for each file processed be
         reported, or not reported.  TRACE is the default.

Pack Options:

APPend | NOAPPend
         appends output to an existing archive, or prevents output from being
         appended to an existing archive.  If the output file does not already
         exist, it is created.  If it does exist, it should be an archive
         created by VMARC.  However, VMARC does not verify that the output is a
         well-formed archive.  The only test performed is that the output file
         is of fixed-length records.  NOAPPEND is the default.

BLock nnnn
         specifies that nnnn be used for the output file record length.  For
         disk files, the default is 80; for tape, it is 4096.  The option is
         not allowed for punch or printer output.

LZW | STORE | S2
         specifies the data compaction method to be used.

         LZW specifies that the LZW data compaction method is to be used.  This
         method is used by default if neither S2 nor STORE are specified.

         STORE specifies that no data compaction is to be used.  This option
         should be used in those few cases where the LZW and S2 methods fail to
         produce a result significantly smaller than the original.  The result
         produced with the STORE option will always be slightly larger than the
         original because of the overhead needed to record structural
         information.

         S2 specifies that the S2 data compaction method is to be used.  This
         method usually produces smaller results than the LZW method, but it
         requires more processor time to produce.  (During uncompaction, the S2
         and LZW methods have comparable execution speed.)

PRinter | PRt | PUNch
         specifies that output be directed to the virtual line printer or
         virtual card punch rather than to disk.

Unpack Options:

HOld     specifies that the reader file be retained after processing.  This
         option is meaningful only if the READER option is also specified.

IGNore | NOIGNore
         specifies that the original names of files extracted from an archive
         be ignored or used.  If IGNORE is specified, VMARC assigns names of
         the form FILEnnnn VMARCOUT, where nnnn are sequentially assigned
         numbers beginning with 0001.  NOIGNORE is the default.

NEWDate | OLDDate
         specifies that that files extracted from an archive retain be givin a
         new date or retain their original date.  OLDDATE is the default.

READer | RDR
         specifies that input be taken from the virtual card reader rather than
         from disk.


Usage Notes:

1.  Two data compaction methods are available, both of which give very good
    performance for most applications.  Method LZW is a variant of the well-
    known Lempel-Ziv-Welch algorithm, while S2 is a string-pair algorithm.  The
    S2 method tends to produce a smaller result, but at the expense of about
    twice the execution time during compaction.  (However, there is no
    performance penalty when uncompacting S2 members; the speed of the two
    methods are comparable.)

    Since there are cases when neither of the two methods will produce a result
    smaller than the original, VMARC offers a compaction option of STORE.  No
    compaction is actually done in this case; the original file data is written
    as-is to the output file with only some structural information added.

2.  Usage examples:

    All FORTRAN source is to be placed into individual archives.  These
    archives are to serve as on-line backups of the original.
       VMARC PACK  * FORTRAN A  = VMARC A

    All modules and EXEC files from the B-disk are to be placed into a single
    archive.  This archive may be a distribution package from some product.
       VMARC PACK  * MODULE B  PACKAGE VMARC A  (REPLACE
       VMARC PACK  * EXEC   B  PACKAGE VMARC A  (APPEND

    Development on some project has been completed, so all assembler source
    files on the C-disk are to be replaced by their individual archives.  This
    will reduce the amount of disk space used by the source, but keep it
    on-line in a form where the original source can be recovered if needed.
       VMARC PACK  * ASSEMBLE C  = = = (REPLACE

    All files on the D-disk are backed up to tape.
       VMARC PACK  * * D  (TAP1 BLOCK 8196
       TAPE WTM 2

3.  When appending to an existing archive, any value specified with the BLOCK
    option is ignored.  The record length of the existing archive is used
    instead.

4.  Separate archives (with identical BLOCK specifications) can be combined
    into a single archive by simple  concatenation.  For example, ARC2 VMARC A
    could be added to the end of ARC1 VMARC A by the COPYFILE command:
       COPYFILE  ARC2 VMARC A  ARC1 VMARC A  ( APPEND

5.  Since the output file name and type may be derived from the corresponding
    parts of the input file names, it is possible for multiple input files
    (specified by a pattern) to map into the same output file.  For example,
       VMARC  PACK  * * A  = VMARC A
    could map the files TEST EXEC and TEST FORTRAN both to the output file TEST
    VMARC.  When this type of situation occurs VMARC handles it in what would
    seem to be the most natural fashion.  The first time a given output file is
    used VMARC obeys the APPEND or REPLACE option if specified.  For the second
    and all subsequent uses of the output file, VMARC unconditionally appends.

6.  Similar to the behavior of the TAPE command, after the last archive member
    is written to tape, VMARC writes a tape mark then backspaces over the tape
    mark. The tape file has end-of-file properly marked, and the tape is
    positioned such that a second use of VMARC can append to the tape file.  If
    the user wishes to create separate tape files, it is recommended that the
    TAPE WTM command be used between applications of VMARC.  That is,
       VMARC PACK ... ( TAP1
       TAPE WTM 1
       VMARC PACK ... ( TAP1
    Whether one or many files are written, it is also recommended that two tape
    marks be written after the last file.


7.  VMARC was written by John S. Fisher of the Rensselaer Polytechnic Institute
    in 1989 and 1990.

Responses:

nnnnnnnn tttttttt mm. Bytes in=xxxxxxxx, bytes out=yyyyyyyy (zzzzzz%)

After each archive member is processed VMARC generates a trace message.  The
message reports the member's original fileid and the number of bytes read, the
number of bytes written, and the ratio of the two.  The message can be
suppressed with the NOTRACE option.  When packing, the ratio displayed in the
message is the compaction factor; the smaller the number, the higher the degree
of compaction achieved.  When unpacking, the ratio is the expansion factor.

When listing the membership of an archive, the number of bytes written and the
ratio display as zero.
ibm/vm370-lib/cmshelp/vmarc.helpcmd.txt ยท Last modified: 2023/08/06 13:36 by Site Administrator