Terse

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

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

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

  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)


Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.