<<< Back Home >>>

ZIP - Rapid SDF Display Processor


Go to Table of Contents


1. ZIP - Rapid SDF Display

Version 7R2 - September, 2023
* The authors and maintainers of this software make no representation of * * its suitability for a particular application and will not be held re- * * sponsible for improper operation, loss of data, productivity or other * * misfortunes resulting from the use of this software. Questions and * * comments are welcome, but there is no obligation to provide present * * or future support services or product enhancements. * * Use of this software constitutes acceptance of these terms. *
ZIP is a fast read-only text processor that can be used to read any sector-formatted file created on the Unisys 2200. There are three modes of operation: (1) text mode (SDF formatted files or elements), (2) ALAT and TIP TPM mode (reads system audit trails) and (3) block mode (format- independent). Basic ZIP commands are similar to those of @ED,R. Faster throughput is achieved by using very large I/O buffers. After a file is read once, an internal line index allows very fast access to any record.
Large records (up to 8200 words) are supported, and embedded ASCII control characters will not corrupt the screen display. For these reasons, ZIP is also ideal for working with PCIOS-SDF data files. A text reformat feature is provided which can display computational fields numerically and extract partial strings of character data. Global selection criteria can be established so only records meeting certain conditions are processed. A group of selected and/or reformatted records may be output to another file.
Release information on current and previous levels can be found in HELP NEWS.
Following is a list of the main features of new releases since January 1992:
2R1 |ASCII log capability; "find address" commands. 2R1A |Improvements in data extraction and record selection. 3R1 |Online HELP; save/restore symbol definitions; sort capability. 3R1B |TOTAL/LENGTH/WIDTH,P commands; banner for SITE/LNSITE. 3R2D1|REATTACH command; global X option: error term; SITE,T: suppress trailer. 4R1 |BLock mode I/O; improve SELECT/REFORMAT/EXCHANGE; reverse display/search. 4R2 |HMP IX7.1 audit trails; TIP TPM log; more info option (A); DUMP command. 5R1 |TOC mode & ELT command; CHANGE command to use w/ EXTRACT/OPEN/WRITE/CLOSE 5R2 |Output length/screen wrap control; FUSION reads screen size & @@INS point 6R1 |Stepcontrol audit trails; max SDF size 8200 wds; RP; BSP$ allows LPF/LEPF 6R1A |CS$ variable (char. set); transparent SELECT char.; max ALAT block size. 6R2 |DSTA format audit trails (CP 15); MONITOR command. 6R2A |TID$ variable: select or display thread ID; STM$PKG timestamp routines. 6R2B |M option expands type/subtype fields; type 101/107 DATE$/TDATE$ counts. 6R3 |REATTACH runid queue files; CF/CB, EF/EB move between file/elt cycles. 7R1 |COLOR capability for log/TOC listings. L/LC can search for error msgs. 7R1A |New info for 106/1 if A option; audit blocks up to 65520 wds accepted. 7R1B |TDC & DT commands; RP,F dumps entry in Fieldata; read IRU EXTRACT files.
******* NEW for 7R2 ********
-Support for COD (Capacity on Demand) audit trails. -Support for SPM (System Performance Monitor) audit trails (CP 20). -Added LIM D command to allow DUMP to display a portion of each record. -DUMP output with word offsets >07777 add a character to the offset field. -New help text (HELP OUT) will describe output continuation (continue prompt) -Log Entries corrected, enhanced, or added: 106/2: Show run start time on run coninuation entry if A option. 17003: Show authentication failure - userid, sited, module - if A option.
****************************

2. More Info [Top][Contents]
     ZIP uses the FUSION full-screen simulation package, written by Les Leist.
This can be dynamically turned on and off. It dramatically improves terminal
output speed and gives a professional "look and feel". The ZIP software is
supplied with only those components of FUSION which are needed by it. ZIP is
released using the FTPack utility (also written by Les) which can transfer any
2200 file in and out of text format for easy shipment to other users. It has
the additional advantage of producing a self-contained text file which requires
no special decompression software at the recipient site.

Complete copies of FUSION and FTPack (and several other useful utility packages) can be downloaded from <http://users.starpower.net/leistlc>. If you have questions, Les will answer E-mail sent to: <leistlc?erols?com> (Change ?erols? to @erols. for email)
The following steps are required to build the ZIP product:
1. Use PKUNZIP or other utility to decompress ZIP7R2.ZIP into ZIP7R2.REL. 2. @CAT,P ZIP*ADD,///500 3. Transfer the ZIP7R2.REL file (in text mode) to ZIP*ADD. 4. @ADD ZIP*ADD. (This will catalog ZIP*RELEASE(+1) and copy the 7R2 elements into it.) * 5. @DELETE ZIP*ADD. (This file is no longer necessary.) 6. @START ZIP*RELEASE.ZIPGEN (This step is optional - the absolute element ZIP is included w/release)
* If the existing ZIP*RELEASE file has keys or if the unpack procedure can't create a new cycle for some other reason, it will be necessary to manually create the new F-cycle after step four. The file FTUNPACKFILE should then be copied into it. The ZIP*RELEASE file name is required for the build.
The output of ZIPGEN can be over 600 pages. If you wish to send to a hold queue, modify line 2 before starting it. When ZIPGEN completes successfully, the (+1) F-cycle of ZIP*RELEASE will contain the ZIP absolute.
This release of ZIP is being supplied without external documentation, with the exception of this README file. Time constraints have limited the amount of work that can be done, and it was felt that the majority of users will be those that are familiar with earlier levels. Online documentation has been fully updated. Documentation of new features since the 3R1 release is available via <HELP NEWS>. Other HELP categories that provide general information are <COMMANDS>, <LOG-FILES>, <ZIP-CALL> and <GBL-OPTS>.
ZIP 7R2 is upward-compatible with levels 3R1 and up, with these exceptions:
- In levels prior to 4R2, the DEFINE command could be abbreviated to the single letter 'D'. This will now initiate the DUMP command. The minimum abbreviation for the DEFINE command is now 'DE'.
- In levels prior to 5R1, the CLOSE command could be abbreviated to the single letter 'C'. This will now initiate the CHANGE command. The minimum abbreviation for CLOSE is now 'CL'.
- In levels prior to 6R1, the OPEN command did not require the 'U' or 'F' option - if both were absent, the output mode was solicited. Level 6R1 requires that one of these options must be used with OPEN.
- In levels prior to 6R1, ASCII characters 0200-0377 were biased into the "normal" range and displayed on the user screen in high intensity or reverse video. These characters are displayed directly in level 6R1 unless the global 'K' option is set which will restore pre-6R1 operation.
ZIP is maintained by the original author and Les Leist. If you have questions or comments, E-mails are welcome.
Ward Condit wrcondit?cox?net (Change ?cox? to @cox. for email)
Les Leist leistlc?erols?com (Change ?erols? to @erols. for email)
---------------------------------------------------------------------

3. Release Doc [Top][Contents]
                     ZIP 7R2  Release Documentation

1. Generation of software
ZIP has several configuration parameters that are defined at the beginning of the ZIP symbolic. The defaults are generally adequate. Those which might be subject to site customization include:
MAXREF (default: 200) Maximum fields per REFORMAT MAXSEL (default: 200) Maximum selection criteria MAXSYM (default: 500) Maximum symbol table entries CRPAGE (default: 1) Determines default action of <CR> NEWSDAYS (default: 31) Number of days to display the message, SEE <HELP NEWS> FOR A LIST OF NEW FEATURES ALATID (default: 10) Trail ID for ASCII log TPMID (default: 17) Trail ID for TIP TPM log ZLFNAME (default: 'SYS$*ZIPLIB$') External name of the ZIP library file, if ZIP$PF is not pointed to a user-defined library file.
The only parameter outside of the ZIP element to customize is CURMAX (default value: 99) in element LOGSUB. This is the maximum expected count of open runs. For most efficient log file operation this value should be set as accurately as possible. If unsure it is better to overestimate slightly.
Each time the ZIPGEN run is started, it will produce a new F-cycle of the ZIP*RELEASE file. All changes to ZIP should be in COMUS TCF format and placed in element <ZIP*RELEASE.ZIPTCF>. The (+1) F-cycle of the release file will merge corrections into <PCF/eltname> elements and the TCF will be renamed <TCF-APPLIED/date-time>. Should you wish to include multiple TCFs or make other changes to the generation parameters, these can be found in element <ZIP*RELEASE.GENSGS>.
The default generation mode is FULL. All elements will be assembled. If you wish to build only elements that have changes, comment out the FULL SGS in element GENSGS. This appears at line 18. *Note: a FULL generation must be performed first because ZIP is not released with relocatable or omnibus elements.
*New in 6R2A* The FUSION$ and FUSIONPKT elements are included in relocatable form with the release because they are rarely updated and building them with MASM consumes considerably more resources than all the others combined. They are not built with a FULL gen unless corrections are present in the TCF or PCF.
All updates/corrections will be supplied in COMUS-TCF format. Therefore it is very important that NO CHANGES BE MADE DIRECTLY TO ANY OF THE SOURCE ELEMENTS. If you have local changes to configuration parameters or for any other reason, these must be supplied in TCF format and built into ZIP using the above procedure.
2. Installation
If your site has an alternate LIB$ file, the easiest way to install ZIP is to simply copy the absolute into this file. If not, it can be installed with SOLAR using the following procedure. This must be done with a userid that is granted all authorizations required for SOLAR install. On Fundamental Security systems, only the security officer's userid is so authorized.
- Sign on to SOLAR and select <Software Installation - Local Products>. - On the next screen, enter the file and element name: ZIP*RELEASE.SOLARINSTALL/ZIP - On the next screen, select mode LOCAL and then commit.
If ZIP has not been used at your site before, the last step in the installation process is to catalog the ZIP library file. User symbol lists will be saved as omnibus elements in this file. The library file should be a V-option file with a 1000-track maximum. It can be placed on fixed or R-disk, and should be packed periodically. Note that the name of this file is dependent on the setting of the config parameter, <ZLFNAME>.
>@CAT,PV SYS$*ZIPLIB$,F///1000
Initialization of this file is not required. If it is not catalogued, however, ZIP will display an error message each time it is called.
--------------------------------------------------------------------------

4. ASCII Log [Top][Contents]
                   Using ZIP to Interrogate the ASCII Log
                     Or the TIP TPM log (*new for 4R2*)

(The following information is supplemental to what is now provided in the online help.)
1. Introduction
The log-compatible version of ZIP can process an ALAT or TIP TPM file as if it was SDF formatted. All commands (except those used for sorting) are fully functional in this mode. No special options are required - ZIP automatically detects when an input file is in ALAT or TPM format. This is indicated with a message that is printed after the @ZIP processor call, which shows the original name of the file and when it was created. The current log cycle can be processed via the command:
@ZIP SYS$*F010L1(-1). (ALAT files) @ZIP SYS$*F017L1(-1). (TIP TPM files)
(*new for 4R2*) One can also invoke ZIP against the -1 (current) log cycle with the command:
@ZIP,L (Audit files with trail ID = 10 - ALAT logs) @ZIP,T (Audit files with trail ID = 17 - TIP TPM logs)
The following message will then be displayed:
THIS IS AN ASCII LOG FILE - SYS$*F010L1(ccc)[Vn], OPENED yymmdd AT hhmmss or: THIS IS A TIP TPM LOG FILE - SYS$*F017L1(ccc)[Vn], OPENED yymmdd AT hhmmss
Log files produced prior to HMP IX7.1 are version zero, later ones are version one and above. If the version is > 0, the log name and site-id are displayed on the next line.
The following describes ALAT operation only. TIP TPM operation is documented at the end of this section.
------------------
When processing a system log, each record is compressed into a simple, standard format that includes the most commonly-used information. This format allows most log records to be displayed in fewer than 80 characters with no significant omissions. The fixed portion is as follows:
CC Contents
1-5 Log record type (5 decimal characters, zerofilled) 6 / 7 Subtype (one decimal character, =9 if greater than 9) 9-12 Month, day 13 : 14-19 Hour, minute, second 21-26 Runid (left justified, spacefilled)
If the log record has an exact or approximate ECL relationship, the command (such as @ASG, @FREE, @XQT) appears in columns 29-36. Not all of these are actual commands but the meaning should be obvious in all cases. Beginning in column 39, additional information is provided, such as file name, program name, etc. To conserve space, certain information has been omitted. It was felt that readability on an 80-column screen was more important than providing every detail present in the log.
For log records that do not have an ECL equivalent (such as console messages) the edited output begins in column 29. Console message text is included in its entirety, despite the occasional screen wrap that results. To eliminate all screen wraps, a REFORMAT can be used to truncate output.
Some log records do not contain any information that is easily represented in an 80-column line. The most common example of this on our system is the type 502 record (performance monitor). Others occur so infrequently that the effort was not expended to reformat them. These records are indicated by the fixed portion only (cc 1-26). If there is additional information you would like to see reformatted, feel free to make changes in element LOGSUB. Basic instructions for doing this are included around line 345, and changes should normally only be necessary between lines 365-1880 and 2215-2265 (approximately). Several users have forwarded their additions to LOGSUB, and their contributions are now part of the base level. Thank you all!
2. Using predefined symbols to select log output
When a log file is opened, ZIP defines the following 7 symbols which can be used with the SELECT command to locate specific information.
Symbol CC Use
TYPE 1-7 Selects log records of specific type DATE 9-12 Selects log records of specific date (mmdd) TIME 14-19 Selects log records of specific time (hhmmss) DT 9-19 Selects log records of spec. date/time (mmdd:hhmmss) RUNID 21-26 Selects log records for a specific run ECL 29-36 Selects specific ECL (@ASG, @FREE, etc) FILE 39-68 Selects occurrences of a specific file
There is no difference between these symbols and those which are user- created with the DEFINE command. For example, < DEFINE TYPE 1:7,A > would create the same symbol with the same attributes. Likewise, the SELECT com- mands illustrated here operate in exactly the same way as they would if used with a non-log format file. The following examples show some typical uses of SELECT for extracting information from the log.
SELECT TYPE='00203' - This will select all console messages.
SELECT RUNID='MAPPER' - This will select all log entries for run MAPPER.
SELECT RUNID='PAYR' AND ECL='@ASG' - This will select all log entries for runs PAYRxx that pertain to facility assignments. Note that if the quoted string is shorter than the comparison field, only the string length is compared.
SELECT ECL='@ASG' AND FILE='SYS$*DLOC$' - Selects all assignments of SYS$*DLOC$.
Unless given at line zero, SELECT will position to the first matching record, but other commands (such as PRINT, LNP) must be used to display a set of selected records. You can display all matching records in a file by SELECTing as above and then giving the < P! > command, but this is very inefficient unless the entire file must be searched. When dealing with a run, for example, it is much better to print the range of records that encompasses the time span of the run if known in advance. If not known, print a few hundred or thousand lines at a time. Don't use print-relative (i.e. P 22) because this will print the next 22 MATCHING records. If the 15th record is the last for the run, the rest of the file will be searched in vain and there will be no further output until the EOF is encountered. A much better way would be the command, < P N N+2000 >. If more than 22 records are matched in this group, output will pause between screens.
Remember that all standard ZIP commands (except for sorting) are fully functional when processing a log file. It is perfectly valid, for example, to use LOCATE or FIND for searching. LOCATE is useful when the target does not always start in the same column (although the SELECT 'contains string' operator (*=) could also be used for this purpose). For quick searches, the new commands LB and FB (like LC, FC without line numbers) can be used to avoid many of the screen wraps that would result from LC and FC.
3. Special modes of output
(*New for 4R2*) An expanded output format which includes the milli- second portion of the timestamp and some additional fields for a few of the specific record types, is available by setting the global 'A' option. When this is done, the log file symbols are redefined, because everything after the timestamp is shifted four columns to the right. If the global 'A' option is not set, the original format is preserved.
Log records are displayed in octal format if the 'D' option is on. The normal edited record is followed with additional lines of octal text, up to 150 words excluding the header. This can be useful in cases where additional information is required. The 'D' option is dynamic and can be enabled and disabled with the ON and OFF commands.
Log records are displayed in raw ASCII text if the 'R' option is on. This is the format in which they occur in the file. The REFORMAT command can be used with raw text to extract information that is not available using the built-in editing feature. When operating in this mode, the predefined symbols (TYPE, RUN, etc.) are of no use, and the runid is not available in text format in most records.
(*New for 4R2*) If both 'D' and 'R' options are on, the entire log record is displayed in octal format, with no preformatting. This is a display-only feature, so octal data is not available for searching, output to a secondary file, or sending to a remote printer. To display records in this mode, use the <CR> or <\> command or position to the desired record with the <+/-number> command. To display a range of records in this format, use the DUMP command. The PRINT command will display ASCII data as before, as if only the 'R' option was set.
4. Efficiency considerations
When using ZIP to process a raw log file, it is important to remember that all text editing is dynamic and must be done for every record during any type of search. It is much more efficient to move about in the file through direct positioning commands than it is to LOCATE or to do any type of record processing with a SELECT in effect.
If you have a log file which will require several long searches, time can be saved by producing an edited extract and using ZIP to interrogate it rather than the raw log. The only disadvantage of this method is the loss of the ability to use the 'D' and 'R' options with the extract.
This method must also be used if it is necessary to use the sort feature. Sorting is not supported when processing a raw log because of a memory usage conflict with the internal runid table, which must be open-ended. There are no such constraints when reading a log extract, because it is written in SDF format and does not require a runid table.
@ASG,T LOG-EXT,F/1000//2500 . Max size should be 50% of log maximum @ZIP <raw-log>. EXT! LOG-EXT. EXIT
@ZIP LOG-EXT. DEF,L . This command will define all of the log SELECT symbols <Other commands from this point on are the same.>
--------------------------------------------------------------------------

5. TIP TPM Log [Top][Contents]
                 Using ZIP to Interrogate the TIP TPM log

The following information was supplied by Rick Onsgard to complement the modifications that allow ZIP to read TIP TPM audit trails. Some of the features of this mode are similar or identical to operation with ALAT trails. This documentation focuses on the differences. WRC
The file name of the "current default" TPM log cycle on a system is: SYS$*F017L1(-1) For all TPM log types, information from their headers is displayed as follows: . >13/03 0426:140248.538 *10QFD PXCRTI l$term . The first field (13/03) is the TPM log entry type and subtype. The second field (0426:140248.538) is the date (0426) and time (140248.538) that the TPM log entry was created. The third field (*10QFD) is the RUNID which made the entry.
*New in 6R2A* Normally a single space follows the RUNID, but if log information is lost because of very high transaction volume, the <#> character in this position indicates one or more transactions were not logged between this record and the one that precedes it.
The fourth field (PXCRTI) is the transaction code of the TIP transaction which made the entry (blank for demand/batch). The fifth field (l$term) is the TPM log entry type. Most TPM log entry types/subtypes have additional information edited out. Some examples are as follows: . l$term: <header info> hvtip/a iload sups=57 ios=5 . The first additional field (hvtip/a) is the transaction type where "/a" indicates absolute and "/z" indicates ZOOM. The second field (iload) indicates how the transaction came into execution (this differs from the ASCII log entry subtypes which indicates how a transaction terminates). The third field (sups=57) is total sups in 200 microsecond granularity (divide by 5000 for second granularity). The fourth field (ios=5) is the total number of I/Os done. . l$fcss: <header info> fc$rd fn=101 wds=58 srec=18 . The first additional field (fc$rd) is the FCSS function. The second field (fn=101) is the TIP file number. The third field (wds=58) is the number of words requested. the fourth field (srec=18) is the starting record number. Note: For FCSS freespace functions the "srec" field is replaced with the freespace record key as follows: l$fcss: <header info> fc$al fn=1273 wds=112 rkey=1,1026 The "rkey" field (1,1026) contains the freespace record type (1) and the starting record number (1026). This corresponds to an octal record key of "000100002002". . l$user: <header info> major=2 minor=1 wds=4096 . The first additional field (major=2) is the major code. The second field (minor=1) is the minor code. The third field (wds=4096) is the number of words logged.
All comments in the documentation referring to reading and processing of the ASCII log trail also apply to the TPM trail with the exception of the "predefined symbols". When a TPM log file is opened, the predefined symbols (which can be used with the "SELECT" command) are as follows:
Symbol CC Use
TYPE 1-5 Selects TPM log records of a specific type. DATE 7-10 Selects TPM log entries for a specific date. TIME 12-21 Selects TPM log entries for a specific time. DT 7-21 Selects TPM log entries for specific date:time. RUNID 23-28 Selects TPM log entries for a specific RUNID. TCODE 30-35 Selects TPM log entries for specific TXN code. TPM 37-42 Selects TPM log entries for specific TPM type.
Examples:
SELECT TYPE='13/03' - This will select all TIP transaction termination entries SELECT DATE='0918' - This will select all TPM entries made on September 18 SELECT TIME='140248.538' - This will select all TPM entries made at 14:02:48.538 SELECT DT='0918:140248.538' - Selects all entries made on September 18 at 14:02:48.538 SELECT RUNID='*10QFD' - Selects entries made by the transaction with RUNID *10QFD SELECT TCODE='PXCRTI' - Selects entries made by the transaction code PXCRTI SELECT TPM='l$fcss' - Selects entries with the TPM type l$fcss (FCSS entries) Note that "partial" selects can also be performed such as: SELECT TIME='140248' - Selects all entries made at 14:02:48 Also note that the "ON D" command can be used to dump all information in the TPM log entries in OCTAL.

Table of Contents

(Go to Top)

1. ZIP - Rapid SDF Display
2. More Info
3. Release Doc
4. ASCII Log
5. TIP TPM Log