Jump to content

Terse

From Wikipedia, the free encyclopedia
TERSE file format
Filename extension.trs
Developed byIBM
Initial release1984
Type of formatData compression
Open format?Yes

TERSE is an IBM archive file format that supports lossless compression. A TERSE file may contain a sequential data set, a partitioned data set (PDS), partitioned data set extended (PDSE), or a large format dataset (DSNTYPE=LARGE). Any record format (RECFM) is allowed as long as the record length is less than 32 K (64 K for RECFM=VBS). Records may contain printer control characters.[1]

Terse files are compressed using a modification of Ziv, Lempel compression algorithm developed by Victor S. Miller and Mark Wegman at the Thomas J. Watson Research Center in Yorktown Heights, New York.[2][3]

The Terse algorithm was proprietary to IBM; however, IBM has released an open source Java decompressor under the Apache 2 license.[4] The compression/decompression program (called terse and unterse)—AMATERSE or TRSMAIN—is available from IBM for z/OS; the z/VM equivalents are the TERSE and DETERSE commands, for sequential datasets only. Versions for PC DOS, OS/2, AIX, Windows (2000, XP, 2003), Linux, and Mac OS/X are available online.[5]

AMATERSE

[edit]

The following JCL can be used to invoke AMATERSE on z/OS (TRSMAIN uses INFILE and OUTFILE instead of SYSUT1 and SYSUT2):[6][7]

//jobname  JOB ...                                            
//stepname EXEC PGM=AMATERSE,PARM=ppppp                       
//SYSPRINT DD SYSOUT=*
//SYSUT1   DD DISP=SHR,DSN=input.dataset            
//SYSUT2   DD DISP=(NEW,CATLG),DCB=ddd,DSN=output.dataset,  
//            SPACE=space_parameters                          
//SYSUT3   DD DISP=(NEW,DELETE),SPACE=space_parameters Optional temporary dataset

Uses

[edit]

Terse can be used as a general-purpose compression/decompression tool. IBM also distributes downloadable Program temporary fixs (PTFs) as tersed datasets. Terse is also used by IBM customers to package diagnostic information such as z/OS dumps and traces, for transmission to IBM.

References

[edit]
  1. ^ IBM Corporation (25 August 2016). "AMATERSE: Pack and unpack a data set". IBM Knowledge Center. Retrieved Sep 4, 2016.
  2. ^ Miller, Victor S.; Wegman, Mark N. (1988). "Variations on a theme by Ziv and Lempel (Data compression)". IEEE International Conference on Communications, - Spanning the Universe. pp. 390–394. doi:10.1109/ICC.1988.13597. S2CID 56571935. Retrieved Sep 4, 2016.
  3. ^ Lalonde, Bill. "Terse/MVS". Big Iron. Retrieved Sep 5, 2016.
  4. ^ "openmainframeproject/tersedecompress". GitHub. Retrieved 2020-11-28.
  5. ^ "Hercules-390". Discussion group for users of the Hercules ESA/390 mainframe emulator. Retrieved Sep 5, 2016.
  6. ^ IBM Corporation (25 August 2016). "Specifying the JCL statements for AMATERSE". IBM Knowledge Center. Retrieved Sep 4, 2016.
  7. ^ ppppp is PACK (compress), SPACK (compress, slower and compresses better), or UNPACK (uncompress)
[edit]