ACC Utilities Reference Guide Edition 10 HP 9000 Networking Manufacturing Part Number: Z7479-90004 E0400 © Copyright 2000 Hewlett-Packard Company
Legal Notices The information in this document is subject to change without notice. Hewlett-Packard makes no warranty of any kind with regard to this manual, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. Hewlett-Packard shall not be held liable for errors contained herein or direct, indirect, special, incidental or consequential damages in connection with the furnishing, performance, or use of this material. Warranty.
This software is based in part on the Fourth Berkeley Software Distribution under license from the Regents of the University of California. © copyright 1980, 1984, 1986 Novell, Inc. © copyright 1986-1992 Sun Microsystems, Inc. © copyright 1985-86, 1988 Massachusetts Institute of Technology. © copyright 1989-93 The Open Software Foundation, Inc. © copyright 1986 Digital Equipment Corporation. © copyright 1990 Motorola, Inc.
Printing History The manual publishing date and part number indicate its current edition. The publishing date will change when a new edition is published. Minor changes may be made without changing the publishing date. The manual part number will change when extensive changes are made. Manual updates may be issued between editions to correct errors or document product changes. To ensure that you receive the updated or new editions, you should subscribe to the appropriate product support service.
Related Documentation The documentation available for the Multiprotocol ACC family of products includes the following hardware and software manuals: Hardware Manuals • 8 Channel HP-PB ACC Multiplexer Hardware Installation and Reference Manual • 8 Channel EISA ACC Multiplexer Hardware Installation and Reference Manual • 8 Channel PCI ACC Multiplexer Hardware Installation and Reference Manual • 2 Channel (HP-PB) ACC Multiplexer Hardware Installation and Reference Manual • 4-Chan.
Contents 1. ZDGEN - ZCOM Device Table Generator Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20 Changing the Device File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21 Device Definition File Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22 Compiled Device File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25 Running ZDGEN . . . . . . . . . . . . . . . . . .
Contents Physical-Term . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 Node-Entry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 Interface-Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 Buffer-Pool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 Logical-Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Contents Required Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .58 Optional Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .59 Terminal-Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .60 Term . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .61 Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Contents LI - Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LO - Set Logical Address Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LN - Transfer to ZLINK Command File . . . . . . . . . . . . . . . . . . . . . . . MA - Produce Link Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NA - Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . OLDF - Use Old Format . . .
Contents LB - Loopback Test on Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .107 LL - Set New List File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .109 MX - Display ACC Card Configuration . . . . . . . . . . . . . . . . . . . . . . . .110 Example - Non-E1/T1 card: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .110 Example - E1/T1 ACC card: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .111 Example - the “s” option:. . . . . .
Contents IT - Interface Table Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . LG - Get Logical Terminal Data From Queue . . . . . . . . . . . . . . . . . . LP - Put Logical Terminal Data to Queue . . . . . . . . . . . . . . . . . . . . . LQ - Allocate Logical Terminal Queue. . . . . . . . . . . . . . . . . . . . . . . . LS - Allocate Logical Terminal Storage . . . . . . . . . . . . . . . . . . . . . . . LU - Update Logical Terminal Table . . . . . . . . . . . . . . . . . . . . . . . . .
Contents TX - Transmit Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .149 XM - Transmit Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .150 6. ZSCAN - Display ZCOM Tables & Buffers Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .152 Running ZSCAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .153 Scanning Files . . . . . . . . . . . . . . . .
Contents 7. ZMLOG - Diagnostic Message Logging ZCOM Diagnostic Message Logging Mechanism . . . . . . . . . . . . . . . . . Daily Message Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Running Without ZMLOG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting Up ZMLOG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting Up Customized or Application Specific Messages . . . . . . . . Message Text File Format . . . . . . .
Contents 9. ZNODE - Remote Node Daemon Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .202 znode Options. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .203 Remote Node TTGEN Configuration Requirements . . . . . . . . . . . . . . .204 Accessing Remote Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .206 Adding Naming Services . . . . . . . . . . . . . . . . . . . . . . . . . . .
Contents 11. WATCH - Mux Shutdown Feature Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224 Configuration Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225 Running watch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 Observing the watch Feature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 12. PMON - ACC E1/T1 Line Monitor Overview . . . . . . . .
1 ZDGEN - ZCOM Device Table Generator 19
ZDGEN - ZCOM Device Table Generator Introduction Introduction The term “ZCOM” refers to the HP Advanced Communications Controller (ACC) family of products. The ZCOM device (or terminal) definitions are stored in a configuration file, which is used by the TTGEN program each time it compiles a TTGEN configuration file. The ZDGEN program is responsible for converting an ASCII editable file of definitions into a binary device definition file. This allows new terminals to be defined with a minimum of effort.
ZDGEN - ZCOM Device Table Generator Changing the Device File Changing the Device File The device definition file in the ZCOM system is an editable ASCII file. Every device is defined by one line in the file. Lines beginning with an asterisk (*) or a semicolon (;) are treated as comments. Any text after an exclamation mark (!) on a line is also treated as a comment. Spaces or commas may be used as parameter separators. The definition format is as follows: Type Name........
ZDGEN - ZCOM Device Table Generator Device Definition File Example Device Definition File Example NOTE The information in this example may be out of date and should NOT be used when configuring a ZCOM subsystem. Refer to the current Device Definition file supplied (/opt/acc/cfg/zcomdevice.txt). ;==========================================================================+ ; ; ; ZCOM device type description Rev.01.C <960325.
ZDGEN - ZCOM Device Table Generator Device Definition File Example 01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, MONITOR 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 21 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 99 00 00 00 00 00 00 00 00 00 00 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0
ZDGEN - ZCOM Device Table Generator Device Definition File Example 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, LAPD.LME LAPD.DLE HDLCNRM.P HDLCNRM.PT HDLCNRM.S HDLCNRM.PBT HDLCNRM.PRT HDLCNRM.SBT HDLC.LAPB X25.LAPB X25.PVC X25.SVC X25.SVC.OUT X25.SVC.AUTO X25.SVC.IN X25.SVC.IO X25.SVC.NULL X25.SVC.IO.
ZDGEN - ZCOM Device Table Generator Compiled Device File Compiled Device File The device definition file is compiled into a binary device file by ZDGEN. The binary device file is used by TTGEN (via the getdevice routine). Each record of this file contains data on one device type. The sequential record number is the device number used internally within the ZCOM system. The format of each record is shown in Figure 1-1.
ZDGEN - ZCOM Device Table Generator Running ZDGEN Running ZDGEN The ZDGEN program reads the ASCII device definition file and generates a binary file that is used by TTGEN to build the memory image file for the ZCOM system. The run string for ZDGEN is as follows: zdgen - is the ASCII file - is the generated binary device file Remember to specify as much of the directory path of each of the file names as is necessary.
ZDGEN - ZCOM Device Table Generator ZDGEN Errors ZDGEN Errors File handling errors that occur while running ZDGEN are reported by HP-UX. For further explanation of any file handling errors, refer to the Hewlett-Packard HP-UX Reference Manual, under PERROR(3) and ERRNO(3). Other messages produced by ZDGEN are described below: Device number not in sequence, line# n Explanation: The device type number must commence at 1 and be incremented by 1 for each device type in the file.
ZDGEN - ZCOM Device Table Generator ZDGEN Errors 28 Chapter 1
2 TTGEN - ZCOM System Table Generator 29
TTGEN - ZCOM System Table Generator Introduction Introduction The program TTGEN creates the file used to initialize and start up the run-time ZCOM sub-system. TTGEN reads an ascii configuration file that contains the details of the network structure and generates a binary memory image file to be used by ZMON. The file structure is detailed under “Tables and Data Structures” in the Multiprotocol ACC Programmer’s Reference Guide.
TTGEN - ZCOM System Table Generator Memory Image File Overview Memory Image File Overview ZCOM System Header The ZCOM System Header contains fixed information such as the location and number of all the tables in the ZCOM sub-system, and also the size of the buffer pool. For more detail, see the data structure zheader_type in /opt/acc/include/zcom/zcomsys.h. Node Entries The Node Entries table contain information about the remote ZCOM sub-systems that communicate with the local ZCOM sub-system.
TTGEN - ZCOM System Table Generator Memory Image File Overview Logical Terminal Tables The logical terminal tables contain information such as the terminal type and location, and its owning ZLU number. A large area of this table is reserved for use by the application programs. A number of logical terminals may be linked to a single physical terminal; for example, it may be used in any instance where a remote concentrator handles a number of terminals.
TTGEN - ZCOM System Table Generator Memory Image File Overview Queues The queue section of memory contains information on the free buffers in the system, and also maintains pointers to the first and last buffers attached to any queue, as well as a count of the number of those buffers. For more detail, see the data structures zqhd_type (queue header) and zfqh_type (free queue header) in /opt/acc/include/zcom/zcomsys.h. Buffer Pool The buffer pool is a piece of fixed-size, contiguous memory.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File Creating the TTGEN Configuration File Overview The TTGEN configuration file is an ASCII text file that describes the size and configuration information of a ZCOM system. TTGEN compiles this file and generates a corresponding binary “memory image file,” which will be used by ZMON to initialize and start up the run-time ZCOM sub-system with the specified configuration.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File 1234 for decimal 01234 for decimal (not octal) 1234H for hexadecimal 1234h for hexadecimal 01234h for hexadecimal TTGen Control Line This line must precede all the other configuration and definition sections. It is to indicate that the source file is for TTGEN. TTGEN will complain if this line is missing. There is no configuration information that goes with this section.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File Configuration Parameters The Configuration section is used to define the global parameters for the ZCOM message system. Some of these parameters have default values that will be used if the parameter is not specified. However, it is recommended that all values are entered, since the default values will not be optimal for every configuration.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File Program-ZLU Number of spare program ZLUs to be allocated. Program ZLUs are only associated with programs and drivers that use the ZCOM API. Each program uses at least one program ZLU. The default number of spare program ZLUs is 256. The valid range of values is 1…10000 (ZCOM_MAXPZLU in /opt/acc/include/zcom/zcomsys.h). Terminal-ZLU The maximum number of terminal ZLUs that may be defined in this system.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File Node-Entry Total number of node entries in this configuration. Each “Local-Node” and “Remote-Node” definition in the Node-Definition section requires one node entry. This value may be greater than the number of nodes defined. The unused entries may be used to dynamically create a node definition using the Dynamic System Configuration services (currently not supported).
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File Buffer-Pool Block of memory (free buffer area), from which all buffers are allocated to the ZCOM sub-system. The range of valid values is 1024…2147483645 (0x7FFFFFF, ZCOM_MAXBPOOL in /opt/acc/include/zcom/zcomsys.h). Default is 3 Mbytes. Must be a multiple of 4. The kernel memory plus the ZCOM memory size cannot exceed available physical memory. The recommended minimum is 200 Kbyte (e.g., for a small test environment).
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File Logical-Size The size in bytes of an LTT extension area. An extension area can be associated with a logical terminal table (LTT). The extension area, if present, would appear at the end of the LTT (hence, the total LTT size would be “size of system data” (ZCOM area and user-maintainable area) plus “size of extension area”. Currently, LTT system data (ZCOM area and user-maintainable area) is 400 bytes).
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File Queue-Limit The default maximum number of messages that can be queued on a program ZLU if the limit is not specified in the zopen call. This parameter is used to prevent defects in applications that use the ZCOM API from consuming all of the available memory in the buffer pool. Specifically, for ZCOM applications that fail to read messages from their program ZLU queue.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File Port-Limit This limit applies to ACC cards other than the E1/T1 ACC cards and the Z7340A 8-port PCI ACC card. ACC E1/T1 cards and the Z7340A ACC have their own port-limit value, mentioned in the E1T1-Port-Limit section further down. The default limit (in bytes) of all unacknowledged transmit messages to terminals on a port. This parameter controls how much outbound data is allowed onto the ACC card for each port.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File Interface-Definition The Interface-Definition section is used to specify the ACC cards to be included in the system. For each interface defined, ttgen reserves an interface table, which contains all required information for controlling the hardware. The Interface-Definition section takes either one of the two forms shown, where the second form refers to HP 9000 Series K systems.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File Series 8x7 Systems (E/F/G/H/I series) For these systems, there is no bus converter: The bus value is 0. The address returned by ioscan will be a card address. For example, if the ioscan reported that the first ACC card on the system is at card address 4, and the second is at card address 12, the corresponding ttgen Interface-Definition statements would be: 0 1 0:4 /opt/acc//x25.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File HP 9000 Series 700 (EISA-only), Telepace Systems, and HP 9000 Series D Systems For these systems, the address information returned from ioscan can vary in length. The only significant value is the slot number. Any values preceding the slot number should be ignored.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File For example % zscan> it 0 will show information about ACC card 0. The following parameters may be specified if the user wishes to modify the usage of available table space. ttablenbr number of terminal table entries (n-32k) The number of terminal tables in use on an ACC card roughly corresponds to the number of Physical Terminal Tables defined and dynamically created for the card.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File CAUTION The normal operation of the ACC card may be compromised if the number of ACC buffers is too low. A warning message will be given by zmon on starting up the ACC card if the number of ACC buffers available is less than 8,000.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File tsize:t0:t1:t2:t3 t0 is the size of 10ms timer table in bytes, (8-256000, multiple of 8) t1 is the size of 100ms timer table in bytes, (8-256000, multiple of 8) t3 is the size of 10s timer table in bytes (8-256000, multiple of 8) t2 is the size of 1s timer table in bytes, (8-256000, multiple of 8) These parameters represent the number internal timer resources in the ACC card.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File tracesize size of firmware trace buffer in bytes (0-16M) The E1/T1 ACC cards and the Z7340A 8-channel PCI ACC have the ability to capture ACC internal events in a trace buffer in the internal memory of the ACC card. The size of this trace buffer can be increased to enable more events to be captured. Each internal event occupies 16 bytes.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File traceopt firmware trace option flags This parameter specifies the options for the internal firmware tracing. A value of 0 disables all firmware tracing. The traceopt keyword may be specified multiple times for a single interface. The values specified will be ORed together to produce the desired value of the traceopt parameter.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File Memory Usage Considerations The terminal tables, buffers, message headers, and timer tables occupy a fixed amount of memory. The amount of memory used is: ttablesize*ttablenbr+zbufsize*zbufnbr+mheadnbr*80+”tsize parameters”+tracesize If this exceeds the available space (16M-bytes), “zmon” will report the problem when the firmware is being downloaded to the ACC card.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File Port-Definition In the Port-Definition section, a port entry must be defined for all ports that are referenced by the terminal definitions in the Terminal-Definition section. The parameters must be specified in the order shown, since some of the parameters are dependent on those that occur earlier in the line.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File source Clock Source INTEXTExInDPLL- Use internal baud rate generator Use external clock Use external clock for X.21 interface Use DPLL output (phase locked loop) INT must be used for ASYNC Mode mode Operating mode of port ASYNCBISYNCSDLC- mult Clock multiplier.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File Port Definitions for E1/T1 Interface: For more information on the features marked “Z7330B only” refer to the Siemens document Framing and Line Interface Component for PCM 30 and PCM 24 - FALC-LH PEB 2255 Version 1.3 Data sheet.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File The following option parameters may then appear in any order, as needed. qdown Fast link down option Enables fast response to loss of frame synchronization. For use with high quality lines, where immediate notification, to the layer-2 protocol, of line errors is required. Without this optional keyword present, transient errors are ignored.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File -7.5db -15db -22.5db 7.5db 15db 22.5db T1 transmit attenuation (line build-out) (Z7330B only) In T1 mode the transmit signal may be attenuated by 7.5db, 15db, or 22.5db by using one of these option keywords. The “-” sign is optional. Example: Port 0:0 T1RJ45 EXT ESF B8ZS RCF Port 0:1 T1RJ45 EXT ESF B8ZS LONGHAUL -15db Port-Limit You may optionally use the Port-Limit keyword to override the global port limit for a specific port.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File Subchannel-Definition The Subchannel-Definition section is only used with an E1/T1 ACC card. In the Subchannel-Definition section, subchannels are associated with timeslots on an E1 or T1 interface. Subchannels defined in this section can then be referenced in the section “Terminal-Definition” on page 60. The ACC card has 32 subchannels available on each physical E1/T1port.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File Required Parameters Required parameters must be specified in the order shown. Optional parameters are specified with key-words. Subchannel-Definition Subch in:p:sc tmode ITBS=n INV=ON/OFF ts:n:fm Subch The only valid subheading for the Subchannel-Definition section. Each subchannel must be defined as a separate record commencing with the subheading “Subch”. in Interface card number (defined in the Interface-Definition section.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File Optional Parameters ITBS=n Individual Transmit Buffer Size; where “ITBS” is the key-word and “n” is the input size. For undisturbed transmission, an on-chip transmit buffer with a total size of 64 long words stores the data before formatting and transmitting. The individual buffer size specifies the part of the on-chip transmit buffer allocated to the channel.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File Examples: Subch 0:1:2 HDLC ITBS=2 INV=OFF ts:1:ffh ts:15:ffh This associates timeslots 1 and 15 with subchannel 2 of port 1 on ACC card 0. This gives a bandwidth of 128k bits per second over the subchannel. Subch 5:2:12 HDLC ITBS=4 INV=OFF ts:3:feh This associates timeslot 3 with subchannel 12 of port 2 on ACC card 5. A timeslot fill mask of FEh has been specified so only 7 bits of each octet are used to carry user data.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File Term Each terminal must be defined as a separate record commencing with either the subheading “Term”, or the subheading “Pterm” with an associated “Lterm” entry. The entries after the subheading are shown in the following two examples.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File value. You should consult the appropriate protocol reference manual for the correct setting for this field. select The select code for the terminal (in decimal or in hexadecimal - nnnnH). One or two bytes may be specified. These bytes function the same as in the poll entry above. For HDLC or X25 terminals (VCs), some pre-defined poll and select values are defined in the /opt/acc/cfg/ttgendefine include file.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File Option The physical terminal option words may be set by specifying “OPTION” (case-insensitive) with the required value after a Term or Pterm definition. The lower 8 bits of the first option word and all 16 bits of any subsequent words are used in terminal configuration in the ACC card during ZCOM system startup. Their use and meaning is protocol dependent. Refer to the relevant protocol reference manual for details.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File Ldata This subparameter allows the user to set up and initialize a buffer of values in a Logical-Data area of the logical terminal table (LTT) extension area. The Ldata subparameter is related to the previous Lterm or Term parameter that came before it. In other words, the affected LTT extension area belongs to the LTT created for the previous Lterm or Term parameter.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File specifies the format of the following data, and is either: • STRING—following data is an ASCII string • BYTES—following data are contiguous byte (8-bit) values • INT16—following data are contiguous 16-bit values specifies the data value to be used, and must be: • quoted string for STRING data, and • numeric values for BYTES or INT 16 data Example NOTE Ldata Ldata Ldata The following is an example, only for illu
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File These two statements would cause the following Term entries to be automatically created by TTGEN: Term 061 1:1 X25.SVC.IN 0000h 3200h 99 0 0 0 0 Term 062 1:1 X25.SVC.IN 0000h 3200h 99 0 0 0 0 Term 063 1:1 X25.SVC.IN 0000h 3200h 99 0 0 0 0 ”Level.3 SVC IN” ”Level.3 SVC IN” ”Level.3 SVC IN” Node Definition The Node-Definition section is optional, and is used to specify all nodes that are to be included in the ZCOM subsystem.
TTGEN - ZCOM System Table Generator Creating the TTGEN Configuration File There is one special provision provided to prevent the ZCOM subsystem from suspending programs issuing remote requests. If the low and high water marks are set to the same value, issuing a remote request when the number of messages on the ZNODE queue is at or above the high-water mark will cause the request to be rejected immediately with the error code ZENBUSY (-1).
TTGEN - ZCOM System Table Generator Running TTGEN Running TTGEN TTGEN is driven from a configuration file that describes the configuration of the ZCOM subsystem. It produces a memory image file that is used by ZMON to initialize the ZCOM runtime system. The runstring for TTGEN is as follows: TTGEN [options] [-m mfile] ifile [ofile] Options: -o overwrite output file if it already exists.
TTGEN - ZCOM System Table Generator TTGEN Errors TTGEN Errors TTGEN groups the problems it detects from a configuration file into four categories: TTGEN SUMMARY MESSAGE: TTGEN summary message. Displayed after TTGEN is run regardless of TTGEN run options. DISASTER: Very serious problem. TTGEN will stop immediately when it is detected. No output file or listing will be produced. Example: ERROR: Problem in opening or reading the source configuration file.
TTGEN - ZCOM System Table Generator TTGEN Errors Any file handling errors that occur while running TTGEN are reported by HP-UX. For further explanation of any file handling errors, refer to the Hewlett-Packard HP-UX Reference Manual, under PERROR(3) and ERRNO(3). See the “TTGEN Error Messages” chapter in the ACC Error Guide for lists of errors and other messages which may be produced by TTGEN.
3 ZLINK - Z80/Z180 Relocating Linker 71
ZLINK - Z80/Z180 Relocating Linker Introduction Introduction ZLINK is the ZCOM protocol module linker. ZLINK produces downloadable absolute code from a number of relocatable protocol modules, to execute on a ZCOM Mux interface card. (Note that relocatable modules are produced by the cross assembler ZX80R.) The relocatable protocol modules are supplied for each separate protocol used on a system.
ZLINK - Z80/Z180 Relocating Linker Using ZLINK Using ZLINK Introduction Commands for ZLINK can be made via: 1. An interactive ZLINK session 2. A ZLINK command file The usual method of running ZLINK is via ZLINK command files, which, for the ZCOM system, are supplied with the ZCOM relocatable files. Command Files To run ZLINK using a command file, enter at a shell prompt: $ zlink A sample command file (to create the absolute code for the HDLC LAP-B protocol), is listed below.
ZLINK - Z80/Z180 Relocating Linker Using ZLINK All command files for ZLINK must have a file type extension of .ZLNK. The file names and extensions are not case sensitive. ZLINK uses other file type extensions as follows: .zrel .zsnp .zlnk .zmap .zabs Relocatable file (input) Snapshot file (input) Command file (input) List file (output) Absolute code file (output) Relocatable files are produced by the Z80 cross assembler, ZX80R, and are used by ZLINK to create the absolute download file.
ZLINK - Z80/Z180 Relocating Linker Available Commands Available Commands The commands available in ZLINK are listed below. Following the summary, each command is described in detail, in alphabetic order. Square brackets are used to denote optional entries, and angle brackets are used where actual text must be inserted into the command, as indicated by the contents of the angle brackets.
ZLINK - Z80/Z180 Relocating Linker Available Commands Environment command: SNap Relocate command: RE Locating commands: ORigin |[,|] Logical address mode: LOrigin Physical address mode: POrigin < physical address>] ALign Naming commands: NAme [] ABsolute Termination commands: Quit (abnormal early termination) ENd [ (normal termination)] Option commands: MAP [] XRef FO OLDFormat HX (hex dump of
ZLINK - Z80/Z180 Relocating Linker Available Commands AL - Specify Alignment Mask Format: AL is a power of 2 for the alignment. The command is used to put the next code module on a particular address boundary as specified by the mask. This is useful for setting up tables, where it is often necessary to have the table origins on a page boundary. EN - End Link Format: EN [] specifies the name of the absolute output file.
ZLINK - Z80/Z180 Relocating Linker Available Commands HX Format: HX The HX command causes ZLINK to produce a hexadecimal dump of the absolute file as part of the link map output. LI - Library Format: LI The LI command is not implemented. LO - Set Logical Address Mode Format: LO LO causes ZLINK to produce output records containing logical addresses in the absolute file. The command also establishes the logical address at which the executable code will be produced.
ZLINK - Z80/Z180 Relocating Linker Available Commands Page 0001 ZCOM ZLINK R:2.01 <900725.1546> Link map for module VMUX-1.1 Mon Jun 30 10:28:29 1997 HDLC Download file Link time: Mon Jun 30 10:28:29 1997 Module Phys Name Addr Addr Z7400A Log Length Description 00000 0000 0. @(#)ZCOM System Firmware (ROM) Rev 01.B5 @(#) ACC Rel B.02.40.00 for B.10.20 1997 z7400_rom (C) Copyright 1995 Hewlett-Packard Co., All Rights Reserved. FIRMWARE 00060 0060 12480.
ZLINK - Z80/Z180 Relocating Linker Available Commands (C) COPYRIGHT 1992 Financial Network Services PMENTTAB 0AB00 AB00 END$ 128. @(#)ZCOM Protocol Module Entry Point Table @(#) ACC Rel B.02.40.00 for B.10.20 1997 pmenttab. (C) COPYRIGHT 1987-1992 Financial Network Services 0AB80 AB80 Absolute file ready: z7400a/hdlc.zabs NA - Name Format: NA [comment] specifies the name to be used for the module name.
ZLINK - Z80/Z180 Relocating Linker Available Commands PO - Set Physical Address Mode Format: PO Causes the physical address to be used in the absolute file. This command also assigns values to the logical address and physical address, the difference between which is maintained until the next LO or PO command. See Appendix A, “TTGEN Configuration File,” on page 237 for the absolute file formats.
ZLINK - Z80/Z180 Relocating Linker Available Commands XR - Produce Cross Reference Format: XR This command causes ZLINK to produce a dump of the internal symbol table on the listing file. If the MA command is not used to specify the listing file, then XR creates a default file with a file extent of .ZMAP in the working directory. In the current implementation, a full cross reference is not available.
ZLINK - Z80/Z180 Relocating Linker Available Commands DMCBQN DMCSCA DMERCD DMFLAG DMFX25 DMIRQ1 DMIRQL DMIRQN DMLNTG DMNIQ1 DMNIQL DMNIQN DMNXBF DMRXQ1 DMRXQN DMSTDT DMTMNO DMTRQN DMTXQN DMXPBL B000 21D1 21C9 21D3 21C5 B004 B005 B003 21C7 21CB 21CC 21CA 21CD B007 B006 0007 21C6 B00C B009 21D6 UMUX302A UMUX302A UMUX302A UMUX302A UMUX302A UMUX302A UMUX302A UMUX302A UMUX302A UMUX302A UMUX302A UMUX302A UMUX302A UMUX302A UMUX302A UMUX302A UMUX302A UMUX302A UMUX302A UMUX302A *ABS* *ABS* *ABS* *ABS* *ABS* *ABS*
ZLINK - Z80/Z180 Relocating Linker Available Commands P#0DRXIV P#0DTX P#0DTXIV P#0EXTC P#0INT P#0RCVC P#0SPRC P#0XMTC P#1BSHN P#1BSLN P#1BUFS P#1DRX P#1DRXIV P#1DTX P#1DTXIV P#1EXTC P#1INT P#1RCVC P#1SPRC P#1XMTC P#2BSHN P#2BSLN P#2BUFS P#2DRX P#2DRXIV P#2DTX P#2DTXIV P#2EXTC 2018 0905 201C 0695 2008 072D 07C5 05FD 0000 0050 0005 0872 201A 091A 201E 06A8 2000 0740 07D8 0610 0000 00A0 000A 0887 2038 092F 203C 06BB UMUX302A UMUX302A UMUX302A UMUX302A UMUX302A UMUX302A UMUX302A UMUX302A UMUX302A UMUX302A UMU
ZLINK - Z80/Z180 Relocating Linker Available Commands P#4BUFS P#4DRX P#4DRXIV P#4DTX P#4DTXIV P#4EXTC P#4INT P#4RCVC P#4SPRC P#4XMTC P#5BSHN P#5BSLN P#5BUFS P#5DRX P#5DRXIV P#5DTX P#5DTXIV P#5EXTC P#5INT P#5RCVC P#5SPRC P#5XMTC P#6BSHN P#6BSLN P#6BUFS P#6DRX P#6DRXIV P#6DTX P#6DTXIV P#6EXTC P#6INT P#6RCVC P#6SPRC P#6XMTC P#7BSHN P#7BSLN P#7BUFS 0014 08B1 2058 0959 205C 06E1 2048 0779 0811 0649 0001 0090 0019 08C6 205A 096E 205E 06F4 2040 078C 0824 065C 0001 00E0 001E 08DB 2078 0983 207C 0707 2068 079F 0837
ZLINK - Z80/Z180 Relocating Linker Available Commands P25L2DSB P25L2ENB P25LDSC P25LNSET P25RVSET P25RXBF P25RXGET P25RXST P25STXC P25TXBG P25TXFL P25TXGET P25TXHP P25TXST PM00ENT PM01ENT PM02ENT PM03ENT PM04ENT PM05ENT PM06ENT PM07ENT PM08ENT PM09ENT PM10ENT PM11ENT PM12ENT PM13ENT PM14ENT PM15ENT PM16ENT PM17ENT PM18ENT PM19ENT PM20ENT PM21ENT PM22ENT PM23ENT PM24ENT PM25ENT PM26ENT PM27ENT PM28ENT PM29ENT PM30ENT 900B 8E54 9241 93D2 9431 908B 90A9 9061 8E48 916B 929A 9149 92E5 930B *UNDEF* *UNDEF* *UNDE
ZLINK - Z80/Z180 Relocating Linker Available Commands PM33ENT PM34ENT PM35ENT PM36ENT PM37ENT PM38ENT PM39ENT PM40ENT PM41ENT PM42ENT PM43ENT PM44ENT PM45ENT PM46ENT PM47ENT PM48ENT PM49ENT PM50ENT PM51ENT PM52ENT PM53ENT PM54ENT PM55ENT PM56ENT PM57ENT PM58ENT PM59ENT PM60ENT PM61ENT PM62ENT PM63ENT PREPTBL PRESCH PROGLIM PROGORG PTBADR PTTAB#0 PTTAB#1 PTTAB#2 PTTAB#3 PTTAB#4 PTTAB#5 PTTAB#6 PTTAB#7 PTTABLE QGET QGETPUT QJOIN QMSGMOVE QNGET QNIOPUT *UNDEF* *UNDEF* *UNDEF* *UNDEF* *UNDEF* *UNDEF* *UNDEF* *
ZLINK - Z80/Z180 Relocating Linker Available Commands QNMOVE QPUT 1B23 05E6 UMUX302R UMUX302A 114C *ABS* Page 0007 ZCOM ZLINK R:2.02 <900725.
ZLINK - Z80/Z180 Relocating Linker Available Commands TMRTIC1 TMTABLE TTBADR UNSTCH UNSTDT X25PKSZ XMTCTB XMTIDLE XMTVECS 21AF 2200 1CAB 1BC3 1BC5 *UNDEF* 1F60 0593 1F00 UMUX302A UMUX302A UMUX302R UMUX302R UMUX302R *ABS* *ABS* 12D4 11EC 11EE UMUX302A UMUX302A UMUX302A *ABS* *ABS* *ABS* Chapter 3 89
ZLINK - Z80/Z180 Relocating Linker ZLINK Errors ZLINK Errors All file handling errors are reported using the HP-UX file error descriptions. Error Explanation Error 0 Aborting Link This message occurs when the Q command is entered to terminate the link. Error 0 nnn error(s) detected during link This is a final status reporting on the total number of errors that were detected during the link. Error 1 Unknown runstring file suffix: aaaa The runstring file suffix for ZLINK must be ‘ZLNK’.
ZLINK - Z80/Z180 Relocating Linker ZLINK Errors Error 8 Undefined EXTernal label: name External reference made to this name but no entry point has been found. Error 9 Undefined default external DEXT: name Neither of the names referred to in a DEXT statement have been found. Error 10 Duplicate entry point name: name Same subroutine name defined in two or more modules, or multiple times in the one module.
ZLINK - Z80/Z180 Relocating Linker ZLINK Errors Error 18 Linkage forced with errors The FO command has been used to force the link in spite of unresolved external references or other errors. Error 19 Link terminated due to errors There are either unresolved external references or other errors in the link, and thus it is terminated without creating a program file. Error 20 Unable to complete link due to undefined externals External references are not defined in the ZLINK file.
ZLINK - Z80/Z180 Relocating Linker ZLINK Errors Error 27 Align record detected before NAM record The NAM record sets up the environment for the rest of the module. The Align record cannot be processed before the NAM record. That is, the NAM record should appear at the beginning of the program. Error 27 End record detected with no NAM record NAM and END records in the relocatable code must be in matching pairs.
ZLINK - Z80/Z180 Relocating Linker ZLINK Errors Error 34 Not used Error 35 Assembly errors in module: name Unable to link this module because it has assembly errors. Fix the errors, recompile, and try again. Error 36 Relocation overflow in module NNNNNNNN The limit specified in the optional second parameter of the OR command has been exceeded in relocating code. This usually means that a code module is too large, or that too many modules have been linked together.
4 ZMNTR - ZCOM Runtime Monitor 95
ZMNTR - ZCOM Runtime Monitor Overview Overview The purpose of ZMNTR is to present a comprehensive view of the ZCOM runtime system by making available important configuration and state information. The ZMNTR utility also allows interactive control over the ZCOM runtime system.
ZMNTR - ZCOM Runtime Monitor Running ZMNTR (ZCOM Runtime Monitor) Running ZMNTR (ZCOM Runtime Monitor) ZMNTR has the following runstring options: Usage: zmntr [-m mfile] [-k] Options: -m mfile Alternate message file (default /opt/acc/msg/default.msg) -k Don't fork “ied” to get Korn shell like command stack The -m option is to specify an alternate message file other than the default one comes with the ACC product installation.
ZMNTR - ZCOM Runtime Monitor Running ZMNTR (ZCOM Runtime Monitor) ZMNTR can also execute commands directly from the shell command line. For example: $ zmntr tt 1 5 will start ZMNTR, execute the TT command, and then exit from ZMNTR returning to the shell prompt. This command may also be entered with commas as delimiters between the command parameters, but must have a space between ZMNTR and the TT command, for example: $ zmntr tt,1,5 is allowed, but: $ zmntr,tt,1,5 is not allowed.
ZMNTR - ZCOM Runtime Monitor Running ZMNTR (ZCOM Runtime Monitor) ZMNTR positions the cursor at the bottom of the list. Any of the commands may be reused by positioning the cursor on the desired line and pressing . If the command needs to be changed before reusing, then it can be modified on the screen before pressing . Output to a file The output from ZMNTR is usually displayed on the terminal.
ZMNTR - ZCOM Runtime Monitor Running ZMNTR (ZCOM Runtime Monitor) $ more zmntr.out ZLU# Mx p:sc Terminal Description.. Rx.Mes Tx.Mes 0001 00 0L00 L2 DCE 2 8 0002 00 1L00 L2 DCE 2 10 0003 00 2L00 L2 DCE 1 6 0004 00 3L00 L2 DCE 1 6 0005 00 4L00 L2 DCE 1 6 **** ** ** Message totals 7 36 ZLU# Mx p:sc Terminal Description.. Rx.Mes Tx.Mes 0006 00 5L00 L2 DCE 1 6 0007 00 6L00 L2 DCE 1 6 0008 00 7L00 L2 DCE 1 6 0009 01 0L00 L2 DCE 1 6 0010 01 1L00 L2 DCE 1 6 **** ** ** Message totals 5 30 $ Error E.Rate State.....
ZMNTR - ZCOM Runtime Monitor Command Modifiers Command Modifiers A number of the commands have selection modifiers to restrict their action to only those that meet certain criteria. The commands are immediately followed by one or more of the following modifiers: V X.25 Virtual circuits L X.25 Link circuits N X.25 Link terminal configuration X X.
ZMNTR - ZCOM Runtime Monitor Command Modifiers ttm,50 Will display all terminals in the same multiplexed group if ZLU 50 is a multiplexed terminal. ttp,50 Will display all terminals on the same port as ZLU 50. ttvp,50 Will display all X25 virtual circuits on the same port as ZLU 50. ttx,1,100 Will display all X25 link terminals with their statistical data, in the given range. tta,1,100 Will display all terminal ZLUs configured in the range 1 to 100 including those on absent ACC cards.
ZMNTR - ZCOM Runtime Monitor Summary of Commands Summary of Commands The commands available through ZMNTR, in alphabetic order, are as follows. Specific help for a particular command is obtained by entering “??” followed by the command for which help is required. For information on how the commands can be used for X.25, enter “?? X25”.
ZMNTR - ZCOM Runtime Monitor Commands Commands ?? - Display Help List of Commands Format: ?? ZMNTR> ?? Code Description................... EX - Exit program (or /E) AC - Activate terminals (RE) EN - Enable terminals (SU) MX - Display mux configuration RC - Reset rx.mes, tx.mes, errs cnts PT - Display terminals on a port R - Repeat Enable/Disable LL - Set new list file SET- Set or display ZMNTR settings Code DC DE DI LB TT TR TM TO ! - Description..................
ZMNTR - ZCOM Runtime Monitor Commands ! - Execute a shell command Format: !shell_command_string Temporarily suspend “zmntr” and execute a shell command. /E - Exit from ZMNTR Format: /E The /E command is used to exit ZMNTR. It is also possible to use EX, which has exactly the same effect. DC - Display Configuration (Terminals) Format: DC,mm,nn,[name] This command displays the configuration information of the terminals in the ZLU range mm to nn. The [name] parameter is optional.
ZMNTR - ZCOM Runtime Monitor Commands The following is an example using an X.25 modifier. ZMNTR> dcv 10 Zlu# Mx p:sc 0100 00 0V01 0200 00 1V01 0300 00 0V02 0301 00 0V02 310 Tmnl.type...... X25.SVC.IN X25.SVC.AUTO X25.SVC.IN X25.SVC.IN Configuration............................ VC=0000 #=226633011 X.25 SVC in from 33011 VC=0000 #=226633011 X.25 XVC out to 33011 VC=0001 #=No address L3 svc VC=0002 #=No address L3 svc T1 is the value of the timer configured in the “select” parameter, # is either the X.
ZMNTR - ZCOM Runtime Monitor Commands LB - Loopback Test on Port Format: LB,mm,pp,[options] This command runs a loopback test on the port specified by card mm port pp. Options: i Do internal loopback tests within the ACC interface card on this port. e Do external loopback tests. These tests require a loopback connector to be connected to the breakout panel on the specified port. For serial cards the external loopback is performed using RS-232 or V.35 signaling depending on the type of panel attached.
ZMNTR - ZCOM Runtime Monitor Commands The various combinations of options perform tests as follows: lb options PORTTEST downloaded ISCC Loopback Internal Loopback none X X X i X X e X ie X 2 X i2 X e2 X ie2 X External Loopback X X X X X X X The example below shows the loopback performed on card 1 port 0. In this example the port is not connected to a loopback hood.
ZMNTR - ZCOM Runtime Monitor Commands LL - Set New List File Format: LL,[filename] The command sets the name of the file. If filename is omitted, the listing is redirected to standard error (fd=2 which is usually the terminal). Although ZMNTR commands are not case sensitive (that is, upper and lower case are treated the same), the filename parameter in the LL command must be entered with the correct case. ZMNTR will create the file if it does not already exist. It will overwrite an existing file.
ZMNTR - ZCOM Runtime Monitor Commands MX - Display ACC Card Configuration Format: MX, m1,m2, [opts] The command displays the ACC interface card, port and subchannel configurations for ACC cards in the range m1 to m2. The [opts] parameter allows the additional display of the TEXT, FILENAME, and NAM records from the ACC card download file and also (for an E1/T1 card) the subchannel and timeslot configuration. The options can be in any order.
ZMNTR - ZCOM Runtime Monitor Commands Example - E1/T1 ACC card: Interface card information for Typical ACC configuration TTGEN source /opt/acc/cfg/x25_4ch_sample.answ object /opt/acc/cfg/x25_4ch_sample.tmem Mux:00 Bus:00/56 Slot:36 Trms:0022 Card Stat:Up and active Hardware Revision: Rev.A Firmware download file: /opt/acc/z7300a/x25.zabs ROM-ID: Z7300A [01.
ZMNTR - ZCOM Runtime Monitor Commands Card Stat This is the current card state. For normal operation, this should be Up and Active. Other possible states are: • • • • • • • • • • • Driver/Interface not initialized Being reset Timed out Power failed Card down (serious error) Firmware failure Operator reset DMA interrupt error Card dead, no activity Card absent Fatal hardware error If the card is not physically installed in the correct I/O slot or bus, the state will be card absent.
ZMNTR - ZCOM Runtime Monitor Commands Status The Status field shows the port status. The value of this display can be the following: Up Port is up and usable. Down Port has failed the selftest or the port was configured with an invalid configuration value. The port is unusable. TxLim Port buffer usage has reached the TXlim value.
ZMNTR - ZCOM Runtime Monitor Commands Example - the “s” option: If the “S” option is used with the MX command for an E1/T1 card, the following additional subchannel and timeslot information is provided.
ZMNTR - ZCOM Runtime Monitor Commands Example - Non E1/T1 card: Display the NAM records from the firmware download file. This command opens and reads the download file. ZMNTR> mx 1 1 n Interface card information for ACC ttgen input file TTGEN source /opt/acc/cfg/loopback.answ object /opt/acc/cfg/loopback.tmem Mux:01 Bus:00/00 Slot:01 Trms:0009 Card Stat:Up and active Hardware Revision: Rev.A Firmware download file: /opt/acc/z7400a/loopback.zabs Module: VMUX-1.
ZMNTR - ZCOM Runtime Monitor Commands PT - Display Terminals on a Port Format: PT,mm,pp This command displays all the terminals on card mm port pp. If “all” or “a” is specified instead of a port number, then all the terminals on card mm will be displayed. Modifiers can be used with this command (enter ??,MOD for more information). Example 1 ZMNTR> pt 1 0 ZLU# Mx p:sc Terminal Description.. Rx.Mes Tx.
ZMNTR - ZCOM Runtime Monitor Commands RC - Reset Rx, Tx and Error Counters Format: RC,nn,[mm] This command resets the counters of terminals in the range nn to mm. If only nn is entered, then the request is performed for only the one terminal. After the request has been made, the system asks for confirmation: Reset counters for ZLUs nn to mm, ok? - Answer YES to reset the counters or NO to abort the command. The RCX command resets the Level 2 X.25 statistical counters for all X.
ZMNTR - ZCOM Runtime Monitor Commands TM - Set Auto Repeat Time Interval Format: TM,nn The command sets the timeout value to “nn” seconds between 0 and 200. If set to 0, the timeout is cleared and the command does not repeat. Otherwise the last command entered will be repeated every “nn” seconds. Enter TM and the repeat time (anything between 1 and 5 inclusive is treated as 5 seconds). Then enter the command to be repeated. Use TM,0 to cancel the auto-repeat timeout and return to normal operation.
ZMNTR - ZCOM Runtime Monitor Commands TR - Set Transfer File Format: TR,filename TR is used to automate any repeated series of commands that are used through ZMNTR. “filename” is the name of a file which consists of a sequence of ZMNTR command strings, with one command per line. These command strings are then performed automatically when the TR command is used.
ZMNTR - ZCOM Runtime Monitor Commands TT - Display Terminal Information Format: TT,mm,nn,[name] This command displays information about the terminals in the ZLU range “mm” to “nn”. The [name] parameter is optional. If specified, then only terminals whose descriptions contain the string are shown. The TT command may be immediately followed by one or more of the command modifiers (See “Command Modifiers” on page 101). Example ZMNTR> tt 6 10 ZLU# Mx p:sc Terminal Description.. Rx.Mes Tx.
ZMNTR - ZCOM Runtime Monitor Commands Normal Terminal States: Down The terminal is enabled and activated but the line is DOWN (or not connected). Usually a hardware problem. There is nothing waiting on its transmit queues. Dn,Sending Terminal is same as “Down” above. In addition, there is something pending in its transmit queues. Deactivated The terminal is enabled but not activated. Messages may usually be transmitted but not received from the terminal.
ZMNTR - ZCOM Runtime Monitor Commands X.25 Link Terminal States: Disconcted X.25 link is disconnected Clearing Link is in the process of being cleared Local Clrd Link resetting (by local DTE) Remote Clrd Link resetting (by remote DTE) Link Estb Link level of X.25 is established Disncting X.25 link in process of being disconnected Disabling Commenced disable of link X.
ZMNTR - ZCOM Runtime Monitor Commands Terminal descriptions for the virtual circuits are: SVC SVCO SVCI PVC - switched virtual circuit (two-way) switched virtual circuit (outgoing) switched virtual circuit (incoming) permanent virtual circuit Each of these may be followed by “=n/c” if the call is not connected, or by a logical channel number if the call is connected. To the right of this information, there is the X.121 address.
ZMNTR - ZCOM Runtime Monitor Commands 124 Chapter 4
5 ZTERM - Interactive Routine Interface 125
ZTERM - Interactive Routine Interface Overview Overview ZTERM provides an interactive method of communicating with the ZCOM subsystem. In particular it provides interactive access to the ZCOM Application Program Interface (API). Using ZTERM it is possible to send messages to ZLUs, read from the ZTERM program’s primary ZLU input queue, peek at the primary ZLU, and send terminal control functions to terminal ZLUs.
ZTERM - Interactive Routine Interface Running ZTERM Interactively Running ZTERM Interactively To run ZTERM from the shell prompt $: $ zterm [commandfilename] ZTERM is usually invoked interactively, in which case the command file name is not specified.
ZTERM - Interactive Routine Interface Running ZTERM Interactively 18:35:44 ZCOM Interactive command utility Rev4.02 18:35:44 Primary ZLU is 1106 ZTERM> dz,120 18:35:50 ZLU entry for ZLU # 120 Lcn .00. .01. .02. .03. .04. .05. .06. .07. .08. 000 E64F 0001 009F 0000 0000 544D 3030 3132 3020 010 0000 0000 0000 0000 007A 7EC8 0000 0000 0000 ZTERM> dz,121 18:35:54 ZLU entry for ZLU # 121 Lcn .00. .01. .02. .03. .04. .05. .06. .07. .08.
ZTERM - Interactive Routine Interface Running ZTERM from a Command File Running ZTERM from a Command File ZTERM may also be run from a command file to allow frequently used command sequences to be executed more conveniently. To invoke this mode and to pass the name of the command file, enter the file name as the second parameter after ZTERM: $ zterm For example, the file /tmp/test1.
ZTERM - Interactive Routine Interface ZTERM Available Commands ZTERM Available Commands The commands available in ZTERM (displayed by entering ? ) are: ZTERM> Code CL CN CW DI DL DN DP DZ IT LG LP LQ LS LU MG MP MV MX TV RV ND - ? Description...................
ZTERM - Interactive Routine Interface ZTERM Available Commands /E - Exit Program Format: /E This command terminates ZTERM, closing its ZLU. This command has the same effect as EX. CL - Close ZLU Format: CL,ZLU Closes the specified program ZLU. Returns the ZLU to the ZCOM subsystem for reuse. Uses the zclos routine call. CN - Control Requests Format:CN,ZLU1,ZLU2,req,[mode],[port,type,poll,select],[t1,t2] The CN command is used to send control requests to terminal ZLUs in the range ZLU1 to ZLU2.
ZTERM - Interactive Routine Interface ZTERM Available Commands CW - Control Write Format: CW,ZLU,mode,tag1,tag2 Functions in the same way as the SE command but in this case the zcntl routine is used to generate a control write request, rather than zsend (which generates a write request). ZTERM responds with: Input message (max 80 chars) Enter text for the control write, then press .
ZTERM - Interactive Routine Interface ZTERM Available Commands 09:03:50 Rcvr prog ZLU# 0 09:03:50 Log. term addr 0h 09:03:50 Logical status 0h 09:03:50 Tx count 0 09:03:50 Rx count 0 09:03:50 Error count 0 09:03:50 Application # 10 09:03:50 Institution # 0 09:03:50 Branch # 0 09:03:50 Work # 0 09:03:50 Area # 0 09:03:50 Terminal name L2 DCE Lcn .00. .01. .02. .03. .04. .05.
ZTERM - Interactive Routine Interface ZTERM Available Commands DP - Display Physical Terminal Table Information Format: DP,ZLU,[ZLU2],[+Q] Displays the physical terminal information for the specified terminal ZLU, or range of ZLUs, in hexadecimal and ASCII. The +Q option suppresses the display of the hexadecimal data. See under “Physical Terminal Table” in the section on Table and Data Structures in the ACC Programmer’s Reference Guide, for the physical terminal table layout.
ZTERM - Interactive Routine Interface ZTERM Available Commands 110 0000 0001 120 0000 0000 130 0000 0000 140 0000 0000 150 0000 0000 160 0000 0000 170 0000 0000 180 0000 0000 190 0000 0000 09:17:40 * 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 1388 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0259 0000 0000 0000 0000 0000 0000 0000 0000 9000 0000 0000 0000 0000 0000 0000 0000 0000 A100
ZTERM - Interactive Routine Interface ZTERM Available Commands IT - Interface Table Information Format: IT,card This command displays the interface table information for the specified ACC card, in hexadecimal and ASCII, as per the DZ command. The contents of the interface table are discussed under Interface Table in the Tables and Data Structures section of the ACC Programmer’s Reference Guide. Example ,0 20:26:35 Interface table Lcn .00. .01. .02. .03.
ZTERM - Interactive Routine Interface ZTERM Available Commands LG - Get Logical Terminal Data From Queue Format: LG,zlu,[queue] This command retrieves logical terminal queue data from the specified logical terminal data queue. If the queue number is omitted, the number will be defaulted to the queue number from the last data queue command (LQ, LG or LP). The retrieved data will be displayed on the terminal.
ZTERM - Interactive Routine Interface ZTERM Available Commands This command will find an existing storage for this application with matching label and size. If the storage is not already allocated then the command will allocate it if this is specified. In either case, the command returns the logical terminal table offset of the storage. This offset may be used in the LU command. LU - Update Logical Terminal Table Format: LU,ZLU,INDX,[len] LU is allows the logical terminal table to be updated.
ZTERM - Interactive Routine Interface ZTERM Available Commands MV - Move Message Format: MV,[zlu],[dzlu] Moves message between queues. If the first zlu is not specified, then the ZTERM primary program ZLU is assumed. If the destination dzlu is not specified, then the message is discarded, otherwise it is moved to the destination queue. This command moves the first message only from the head of the first ZLU queue. Uses the zqmve routine call.
ZTERM - Interactive Routine Interface ZTERM Available Commands DN - Display a node entry Format: ND, node or: DNI, index DN displays the node entry for node number “node”. DNI displays the node entry for node index “index”. Note that node index ranges from 0, 1, … NM - Retrieve ZLU from Name Format: NM,name,[node] Retrieves the ZLU from the name only. Enter the name of the ZLU, (8 bytes maximum). If there is a ZLU of that name, the system will respond with “ZLU is nnn”.
ZTERM - Interactive Routine Interface ZTERM Available Commands The PE command can also be used to display the header of the message by using the command modifier HD. ZTERM> pehd 08:12:47 Message from program Lcn .00. .01. .02. .03. .04. 000 0200 007B 0322 2021 007B 010 0000 0000 0000 0000 0016 Lcn .00. .01. .02. .03. .04. 000 5468 6973 2069 7320 6120 010 6765 ZLU #0802 length 22 tag1=0000 tag2=0000 .05. .06. .07. .08. .09. ASCII.....ASCII..... 0322 2021 0000 0000 0000 { ” ! { ” ! .05. .06. .07. .08. .09.
ZTERM - Interactive Routine Interface ZTERM Available Commands PU - Update Physical Terminal Table Information Format: PU,ZLU,INDX,[len] Updates the physical terminal table user data area. This command prompts for each of the words (16-bit values) in turn. When [len] words have been read, ZTERM uses the zptup routine to update the physical terminal table. If [len] is not specified 1 is assumed.
ZTERM - Interactive Routine Interface ZTERM Available Commands RC - Set Terminal Receiver Format: RC,ZLU1,[ZLU2],[rzlu],[rnode],[mode] Sets up either the ZTERM primary ZLU as receiver for the specified terminal ZLU1 or range of terminal ZLUs (ZLU1 to ZLU2 inclusive), or can be used to set up an alternate program ZLU (rzlu & rnode) to be receiver for the terminal ZLU. If rnode is not supplied, it defaults to the local node. Uses the zrcvr routine call.
ZTERM - Interactive Routine Interface ZTERM Available Commands RL - Loopback on Primary ZLU Format:- RL,[LIst/LAtency],[sendmode],[dzlu],[AC],[maxtime] Reads the ZTERM primary ZLU in a loop re-transmitting each received message and produces timing statistics. (Use RC to set up the primary ZLU as a receiver first if the test is on a terminal). Any messages received are returned to either their source or, if specified, to the destination ZLU (dzlu).
ZTERM - Interactive Routine Interface ZTERM Available Commands messages received for the duration of the command and the elapsed time in milliseconds. This information is displayed when the command is stopped or completes. RV - Receive and validate messages Format: RV,[LI],[AC],[maxtime] Receive and validate messages from primary ZLU. This command works in conjunction with the TV command in another copy of ZTERM to validate both message content and sequence.
ZTERM - Interactive Routine Interface ZTERM Available Commands The options have the following meanings: LIst Display the contents of the messages as well as the statistical information. AC Activate the terminal ZLU after every received message (restart polling). maxtime This parametersets a maximum runtime, in seconds. If this is zero then the command runs without a time limit, otherwise it will terminate after [maxtime] seconds.
ZTERM - Interactive Routine Interface ZTERM Available Commands SE - Send to ZLU Format: SE,ZLU,mode,tag1,tag2 Sends a message to the indicated ZLU number. The ZLU may be either a terminal or a program ZLU. Use ZSCAN to find out the ZLU numbers of the programs, if necessary. The mode and tag parameters are as described under zsend in the ZCOM routine calls section. ZTERM responds to the above command with: Input message (max 80 chars) Enter the message to be sent, and press .
ZTERM - Interactive Routine Interface ZTERM Available Commands SZ - Queue Size Format: SZ,[zlu] Gets program queue size. Returns the number of messages queued to the specified program ZLU. (Cannot be a terminal ZLU.) If a ZLU is not entered, the ZTERM program ZLU is used. The system responds with “ZLU nnn has queue depth nnnn”. Uses the zqsze routine call. TM - Timeouts Format: TM,ZLU,time Sets the timeout on specific program ZLU in seconds.
ZTERM - Interactive Routine Interface ZTERM Available Commands tagp Terminal tag parameter (mrqtag) maxtime Optional maximum runtime apno If set this must match the ltapno field in the logical terminal table of the terminal ZLU, otherwise no messages will be sent on that ZLU.
ZTERM - Interactive Routine Interface ZTERM Available Commands apno If set this must match the ltapno field in the logical terminal table of the terminal ZLU, otherwise no messages will be sent on that ZLU. The test proceeds until the total number of messages are sent or the test is interrupted using sigint (usually ^C).
6 ZSCAN - Display ZCOM Tables & Buffers 151
ZSCAN - Display ZCOM Tables & Buffers Overview Overview ZSCAN is a utility provided to allow the contents of the ZCOM kernel tables and buffers to be viewed.
ZSCAN - Display ZCOM Tables & Buffers Running ZSCAN Running ZSCAN To run ZSCAN interactively from the shell prompt $ enter: $ zscan ZSCAN: ZCOM 6.2.0.0 System Memory Display Utility, Rev 2.0 Memory image file is of 32-bit kernel zscan> When started up, ZSCAN displays the version of ZCOM it expects and its own software version. It opens the memory image file and shows whether the file is from a 32-bit or 64-bit kernel. Note that the memory image file is of the same layout for both 32/64-bit kernel.
ZSCAN - Display ZCOM Tables & Buffers Running ZSCAN Scanning Files The ZSCAN utility can be entered in a runstring with valid options to display system core files and other types of files.
ZSCAN - Display ZCOM Tables & Buffers Running ZSCAN Some examples of running ZSCAN: To run interactively against the running system: % zscan To get a snapshot and run zscan with it: % cp /dev/zmon /tmp/zcom.memory % zscan -i /tmp/zcom.memory To run against a core file vmcore.3 with corresponding kernel file vmunix.3: % zscan -c -i /var/adm/crash/vmcore.3 \ -k /var/adm/crash/vmunix.3 To run against core file vmcore.1 with current kernel: % zscan -c -i /var/adm/crash/vmcore.
ZSCAN - Display ZCOM Tables & Buffers ZSCAN Available Commands ZSCAN Available Commands The commands available in ZSCAN (displayed by entering ?, ?? or help) are as follows: zscan> ?? Command en zl pt te qh nd dsc !cmd ?, ?? - Description ................ Display ZCOM environment Display ZLU information Display physical terminal Display PTTs on a mux Display program queue header Display node information Dynamic System Config. info.
ZSCAN - Display ZCOM Tables & Buffers ZSCAN Available Commands Examples: zscan> bf 0x007FA008 2 Address: 0x007FA008 168 bytes (In use) Next: 0x007FA0B0 Data: 0x007FA02A 130 bytes Resp: 0x00000000 Message type 2 Tag1 1 From: node 123, ZLU 10001 (60386) Response code 0 Tag2 0 To: node 123, ZLU 10001 (60386) Data length 100 bytes Aux: node 0, ZLU 0 (00000) Request code 0 Term# 0 Status 0x00 Tag 0x00 Lcn .00. .01. .02. .03. .04. .05. .06. .07. .08. .09. ASCII.....ASCII.....
ZSCAN - Display ZCOM Tables & Buffers ZSCAN Available Commands Note that the preceding displays shows the memory addresses in 32-bit mode. If ZSCAN is run with a memory image from a 64-bit kernel, the addresses will be displayed as 16 hex digits (i.e. 64-bit). DM - Display ZCOM Memory in HEX and ASCII Format: dm [loc] [value] The DM command is used to display ZCOM memory in hex and ASCII at address [loc] for size [value].
ZSCAN - Display ZCOM Tables & Buffers ZSCAN Available Commands … … … Note that the table shown in the example has had lines removed to reduce the size of the display. The “…” represent one or more lines that have been deleted. DSC - Dynamic System Configuration Format: dsc This command shows some internal kernel information about the dynamic system configuration of the ZCOM subsystem.
ZSCAN - Display ZCOM Tables & Buffers ZSCAN Available Commands EN - List System Parameters Format: en The EN (or environment) command is used to display information about the ZCOM subsystem global parameters. As well as displaying the names of the source and object files, the EN command also returns table addresses and sizes of the Interface Tables, Physical Terminal tables, Logical Terminal tables, Queue Headers, and Buffer pool. These tables can be examined in more detail by using other ZSCAN commands.
ZSCAN - Display ZCOM Tables & Buffers ZSCAN Available Commands EX, EXIT - Exit From ZSCAN Format: ex Format: exit This command exits from the ZSCAN program. HELP - Help on ZSCAN Command Format: help [command] This command shows the help text for a [command]. If [command] is not specified, the list of all available ZSCAN commands is shown. This command is also equivalent to ? or ??.
ZSCAN - Display ZCOM Tables & Buffers ZSCAN Available Commands IT - Interface Table Format: it [iftno] Displays interface table information for interface (or Mux) [iftno]. If [iftno] is not specified, zero is used. The information returned is further described under the interface table subsection of the Tables and Data Structures section of the ACC Programmer’s Reference Guide.
ZSCAN - Display ZCOM Tables & Buffers ZSCAN Available Commands Example - display the interface table for mux 2 (4-port NIO card): zscan> it 2 IFT# 2 Status 8005h Terminal 0 Restart errors Type 9 HPA FFA88000h Sflag 0000h Heart beat 13 Restart retry Last ZMON control: Thu Feb 24 05:42:57 2000 Current BP command: 0000 0000 0000 0000 0000 Current terminal list header: 00000000(XPS), 00000000(HTX), 00000000(LTX) Mux info: 0x01C9 iportn[0..
ZSCAN - Display ZCOM Tables & Buffers ZSCAN Available Commands LT - Logical Terminal Table Format: it [first] [last] [c|q|r] Displays logical terminal table information from the Logical Terminal Table (LTT) numbers [first] to [last]. If option [c] is specified, the static configuration information is displayed. If option [q] is specified, the detailed information about the LTT data queues is displayed. If option [r] is specified, the detailed information about any terminal receivers is displayed.
ZSCAN - Display ZCOM Tables & Buffers ZSCAN Available Commands ND - Node Information Format: nd [node] This command displays the statistics of the specified [node] and its defined hosts. If [node] is not specified, it displays information about the local ZNODE program, statistics of all nodes, and the ZNODE data queue. Examples: zscan> nd Local node number: Node table size: Node# T.Out Hosts 222 0 0 111 5 1 ZNODE.Queue N.Msg 0 222 10 ZNODE pid: ZNODE signal: ZNODE idle: State Up Up In.
ZSCAN - Display ZCOM Tables & Buffers ZSCAN Available Commands PT - List Physical Terminal Foramt: pt [first] [last] [c|q|r] Display physical terminal table information from Physical Terminal Table (PTT) numbers [first] to [last]. If option [c] is specified, the static configuration information is displayed. If option [q] is specified, the detailed information about the PTT data queues is displayed. Otherwise, the general run-time information is displayed.
ZSCAN - Display ZCOM Tables & Buffers ZSCAN Available Commands QH - List Queue Header Format: qh [first] [last] This command displays the program queue headers in the range [first] to [last]. If [last] is omitted only [first] queue header is displayed. If [first] and [last] are omitted then queue header 0 (free queue) is displayed. The free queue manages the list of free buffers in the system. The other queues (1,2,3...
ZSCAN - Display ZCOM Tables & Buffers ZSCAN Available Commands For the meaning of the queue header fields, see under the Queue Header subsection of the Tables and Data Structures section of the ACC Programmer’s Reference Guide. Note that for FreeQ, the “Limit” value actually shows the total number of buffers allocated to other queues. QS - Scan All Non-Empty Buffer Queues Format: qs This command gives a detailed report of buffer distribution within all buffer queues in the system.
ZSCAN - Display ZCOM Tables & Buffers ZSCAN Available Commands RR - Response Record Format: rr [rirst] [last] Display the response records from range [first] to [last]. If [last] is omitted, only the [first] response record is displayed. If [first] and [last] are omitted, then the first response record (#1) is displayed. Example: zscan> rr 1 9 RspID Address. Type... R.Code Seq.
ZSCAN - Display ZCOM Tables & Buffers ZSCAN Available Commands TE - Terminal Options Format: te [iftno] [c|q|r] The TE command displays physical terminal table information from Physical Terminal Table (PTT) in interface [iftno]. If option [c] is specified, the static physical configuration information is displayed. If option [q] is specified, the detailed information about the PTT data transmit queues is displayed. If option [r] is specified, information about terminal receiver ZLUs is displayed.
ZSCAN - Display ZCOM Tables & Buffers ZSCAN Available Commands 38 UAQok zscan> 0 0 00000000:00000000 zscan> te 0 c PTT# ZLU# Mx:P:Sc:Term* PType 1 1 0:0:**:00000 25 2 300 0:0:**:00001 26 3 301 0:0:**:00002 26 4 302 0:0:**:00003 26 . . . . . . 34 327 0:5:**:00003 26 35 328 0:5:**:00004 26 36 329 0:5:**:00005 62 37 7 0:6:**:00000 24 38 8 0:7:**:00000 24 0 0 Poll. 0000h 0000h 0000h 0000h Slct. 4BEAh 0200h 0200h 0200h Optn. V.C.# Config..........
ZSCAN - Display ZCOM Tables & Buffers ZSCAN Available Commands ZL - List ZLUs Format: zl [first] [last] [options] Displays ZLU information from ZLU number “first” to “last”. Options may be any combination of: i n p t m Initialized ZLUs only Non-initialized ZLUs only Program ZLUs only Terminal ZLUs only Mapped ZLUs only This command lists ZLU information for the specified range of ZLUs. The information consists of the checksum, the name of the ZLU, its owner, and its status.
ZSCAN - Display ZCOM Tables & Buffers ZSCAN Available Commands zscan> zl 1 9999 p ZLU#(Cksum) Name.... 1001(30214) pcapt00 1002(56185) X25CN 1003(63457) Zt01875 1004(63439) Za01875 Owner Status...............................
ZSCAN - Display ZCOM Tables & Buffers ZSCAN Available Commands 174 Chapter 6
7 ZMLOG - Diagnostic Message Logging 175
ZMLOG - Diagnostic Message Logging ZCOM Diagnostic Message Logging Mechanism ZCOM Diagnostic Message Logging Mechanism The ZCOM subsystem has a centralized diagnostic message logging mechanism that keeps a sequenced, and time stamped record of events generated by ZCOM and its related components. The messages are usually displayed on a terminal device as well as being logged to files. The actual combination of logging devices and files may be customized to meet individual system requirements.
ZMLOG - Diagnostic Message Logging ZCOM Diagnostic Message Logging Mechanism The messages are written by the drivers or programs in a binary form which is passed to ZMLOG via the device file /dev/zmlog. The messages can be optionally logged in the binary form or converted to text using the message file, and then either logged to a file or displayed to a device. The messages are time stamped by the LDM at the time they are generated.
ZMLOG - Diagnostic Message Logging ZCOM Diagnostic Message Logging Mechanism Running Without ZMLOG Usually the ZCOM system uses ZMLOG as the message logging daemon, however ZCOM will work correctly without ZMLOG - and will discard all the messages that are generated. Alternatively, a user supplied program may read the error log device file (/dev/zmlog) in place of zmlog.
ZMLOG - Diagnostic Message Logging ZCOM Diagnostic Message Logging Mechanism The run string (including options) for ZMLOG is: Usage: zmlog [options] [-p pri] [-z zfile] [-m mfile] [-B bmax] [-T tmax] [-l lpath] [-d dev] ...
ZMLOG - Diagnostic Message Logging ZCOM Diagnostic Message Logging Mechanism The other optional parameters are as follows: -p Specify the minimum message priority level to log. The messages with priorities greater than or equal to are logged. Those less than are ignored. The message priorities are specified in the message file and may be customized if required. If this parameter is not specified 0 is used as the priority level.
ZMLOG - Diagnostic Message Logging ZCOM Diagnostic Message Logging Mechanism Setting Up Customized or Application Specific Messages Each message that can be generated by ZCOM, its daemons, its utilities, or application programs using the ZCOM services, must have a corresponding entry in the message file. The entries in the message file are organized by program or module name, and message number within that program or module. The message file is generated from one or more text files.
ZMLOG - Diagnostic Message Logging ZCOM Diagnostic Message Logging Mechanism This uses the input file /opt/acc/msg/french.txt and generates the output file /opt/acc/msg/french.msg. The txt2msg output file is used by ZMLOG to expand the binary log messages generated by ZCOM subsystem to readable text. Use the -m option or specify the environment variable LANG to make ZMLOG select a message file other than the default. See the above description for the -m option.
ZMLOG - Diagnostic Message Logging ZCOM Diagnostic Message Logging Mechanism 4. Long text may be spread across multiple lines. The lines will just be merged together (LineFeed removed), until the next line begins with $ is found. A ~ may be used as the first character of a continuation line. A LineFeed will be inserted between each ~ continuation line. 5.
ZMLOG - Diagnostic Message Logging ZCOM Diagnostic Message Logging Mechanism In the preceding example, error message “Test Error Message on Channel, int(%1$d)” is assigned to error message 3, from program progx. Error message 3 has a priority of 2. Note that each error message can have zero or more variables. For instance, error message 25 is composed of text plus 2 variables. The first variable (1$) takes on a character string format, and the second variable (2$) takes on an integer format.
ZMLOG - Diagnostic Message Logging ZCOM Diagnostic Message Logging Mechanism The following example illustrates how a program may use these calls: #include #include long long message_number,error_number,numb_vars; var_descriptor,var_value; /* During program initialization setup the program name - max 5 chars */ zcomlname (”progx”); . . .
ZMLOG - Diagnostic Message Logging ZCOM Diagnostic Message Logging Mechanism Application Data Types and Macros The legal zcomlog argument data types for the descriptors are: #define #define #define #define #define #define #define #define #define #define #define #define #define #define ZCOM_AT_CHAR ZCOM_AT_SINT ZCOM_AT_INT ZCOM_AT_STR ZCOM_AT_ERRNO ZCOM_AT_ZERROR ZCOM_AT_ZERR2 ZCOM_AT_ZSTAT ZCOM_AT_XSTAT ZCOM_AT_FMPERROR ZCOM_AT_UCHAR ZCOM_AT_USINT ZCOM_AT_INT64 ZCOM_AT_UINT64 1 2 3 4 5 6 7 8 9 10 11 12 1
ZMLOG - Diagnostic Message Logging ZCOM Diagnostic Message Logging Mechanism Example of usage : zcomlog (error_number, message_number, numb_vars, Zc_INT(var_value)); /* Note : /* NOTE INT(argument_value_1) is expanded into 2 */ arguments,namely : ZCOM_AT_INT, var_value */ ZMLOG internally uses sprintf() to convert the arguments to display text. However, due to technical difficulty with sprintf() in supporting arbitrary 64-bit parameters (i.e.
ZMLOG - Diagnostic Message Logging ZCOM Diagnostic Message Logging Mechanism Format of ZMLOG Messages Usually, ZMLOG extracts and prints the error log messages generated by the ZCOM subsystem. However a user application can be used in the place of ZMLOG if specialized processing of the messages is required. To replace ZMLOG with user supplied program it is necessary to understand the format of the binary message buffer output from the device file /dev/zmlog.
ZMLOG - Diagnostic Message Logging ZCOM Diagnostic Message Logging Mechanism Field Description Length in bytes Binary record length 1 Driver time stamp 4 Originating program name 6 Severity code (from message file) 1 Number of variables - n 1 Error code 4 Message number 4 Variable 1 - Argument type 1 Variable 1 - Data length 1 Variable 1 - Data variable (specified in data length) ... ... ... ...
ZMLOG - Diagnostic Message Logging ZCOM Diagnostic Message Logging Mechanism User Error Logging Application The following code shows sections from a program intended to read from the ZCOM message log device file /dev/zmlog. Note the header file /opt/acc/include/zcom/zcomsys.
ZMLOG - Diagnostic Message Logging ZCOM Diagnostic Message Logging Mechanism len = read (fd,&mlog,sizeof(mlog)); /*blocked read if no data. if there is data, then read will be satisfied on either ’buffer 1/3 threshold logic’ or in 1 sec. */ /* check buffer log size */ if (mlog.blen != ZCOM_MLSIZE - (sizeof(mlog) - len)) {handle_error() } /* detected bad zcom log header */ /* so skip this log buffer */ /* check for overrun errors */ if (mlog.
ZMLOG - Diagnostic Message Logging ZCOM Diagnostic Message Logging Mechanism 192 Chapter 7
8 ZMON - ZCOM Control Program 193
ZMON - ZCOM Control Program Overview Overview ZMON is the program responsible for initializing and managing the ZCOM subsystem. Its operation is closely integrated with the ZCOM LDM (Logical Device Manager). Its primary tasks are: • Loading the TTGEN output file into the ZCOM kernel memory. • Sequencing the startup of the ZCOM system with the assistance of the LDM. • Downloading and initializing the Mux cards. • Restarting the Mux cards after a powerfail or Mux firmware panic.
ZMON - ZCOM Control Program ZMON Options ZMON Options ZMON has several options that can be selected with parameters in the run string. If ZMON is run with no parameters, it will display all the possible options and parameters. It is highly recommended that you only execute zmon cold and stop commands through the zmasterd program.
ZMON - ZCOM Control Program ZMON Command Descriptions ZMON Command Descriptions Cold Function: Cold start ZCOM subsystem Format: zmon cold The cold start command is used to initialize the run-time portion of the ZCOM subsystem. The file specified by filename is the output file from TTGEN. It contains an image of many of the ZCOM tables. ZMON downloads this file to the ZCOM kernel memory through the device file /dev/zmon.
ZMON - ZCOM Control Program ZMON Command Descriptions The message “zmon 00004 Waiting for ZMON requests ...” indicates that ZCOM is up and ready for use. Although you may use ZMON directly to initialize and startup the ZCOM sub-system, it is highly recommended that you startup the ZCOM sub-system using “zmasterd cold ”.
ZMON - ZCOM Control Program ZMON Command Descriptions Status Function: Display ZCOM subsystem status Format: zmon status The STATUS request command is used to display the ZCOM system status in the ZCOM message log. For example if ZCOM is running The following would be expected: zmon status 14:32:18 zmon 00002 14:32:18 zmon 00006 14:32:18 zmon 00062 Resource manager (Rev 1.32) for ZCOM 6.2.0.0 Getting ZCOM system status ...
ZMON - ZCOM Control Program ZMON Command Descriptions Shutdown Function: Shutdown Mux card Format: zmon shutdown This command is used to manually shutdown a Mux card. This command should be used with care since it will interrupt all communication on the card and can potentially cause data loss. Other Mux cards are not affected. Debug Function: Enable LDM driver debugging Format: zmon debug This command is used to enable the debugging code in the LDM driver.
ZMON - ZCOM Control Program ZMON Command Descriptions 200 Chapter 8
9 ZNODE - Remote Node Daemon 201
ZNODE - Remote Node Daemon Overview Overview The programmatic interface that is provided by the ACC Mux Subsystem provides the ability to control the muxes that are attached to the node on which the program is running, as well as muxes on remote nodes. The znode daemon provides this functionality. The znode daemon allows programs to communicate to any ACC Mux subsystems that reside on other systems in the same manner that they communicate to the local subsystem. The use of znode requires the following: 1.
ZNODE - Remote Node Daemon znode Options znode Options The runstring for znode is the following: % znode [-h ] [-s ] [-d] where: -h Sets the znode heart beat timeout to n seconds (default is 5 seconds). This is useful on slow LANs (or WANs). -s Sets the interval in seconds for updating the node status and statistics kept in the ZCOM system. Default is 2 seconds. -d Debug mode. Does not run as daemon; only prints useful information.
ZNODE - Remote Node Daemon Remote Node TTGEN Configuration Requirements Remote Node TTGEN Configuration Requirements Node configuration information used by the znode daemon must be added to both the local and remote node TTGEN configuration files. The first item that must be configured is the number of nodes that will be communicated with by the programs on the system, including the local node. For example, if a program will communicate with 4 remote nodes, the total number of nodes will be 5.
ZNODE - Remote Node Daemon Remote Node TTGEN Configuration Requirements local node to the remote node will be sent to this address. Up to four addresses can be given, in which case the requests that are sent from the local node to the remote node will be load-shared across all of the addresses. In the case that four addresses are provided, but one of the LAN connections is down, then that connection is not used until it comes up again. The load will be distributed across the remaining 3 LANs.
ZNODE - Remote Node Daemon Accessing Remote Nodes Accessing Remote Nodes Remote Nodes may be accessed by making ZCOM Interface calls. Those requests that can be made to remote nodes have an input parameter of type zaddr_type. This parameter indicates which zlu is to be affected, and what node that zlu resides on.
ZNODE - Remote Node Daemon Demonstrating Remote Node Functionality Demonstrating Remote Node Functionality To demonstrate that the remote nodes are correctly configured and are communicating with the local node, an example is shown below. The entries typed are shown in bold type and the sequence is indicated by a number to the left of each entry. Note that the entries are typed in sequence at both nodes A and B.
ZNODE - Remote Node Daemon Demonstrating Remote Node Functionality Node B (Number 20) # zterm 11:19:50 ZCOM Interactive command utility 11:19:50 Primary ZLU is 3001 3 ZTERM> rl 11:20:03 11:20:03 11:20:03 11:20:03 11:20:03 11:20:03 11:20:03 11:20:03 11:20:03 11:20:03 Msg Msg Msg Msg Msg Msg Msg Msg Msg Msg from from from from from from from from from from prog prog prog prog prog prog prog prog prog prog ZLU#03001(00010) ZLU#03001(00010) ZLU#03001(00010) ZLU#03001(00010) ZLU#03001(00010) ZLU#03001(00010
10 ZMASTERD - Daemon Monitoring Feature 209
ZMASTERD - Daemon Monitoring Feature Overview Overview The ACC ZCOM subsystem requires the use of daemon programs to provide its features. For example, the logging facility requires the zmlog daemon. For the multinode processing feature, the znode daemon is required. Other protocol accessory products to the ACC Mux subsystem product may also require daemon programs, for example, the X.25 Protocol module and the ACC X.25/9000 Link Software require the use of the zx25d_init daemon.
ZMASTERD - Daemon Monitoring Feature zmasterd Usage zmasterd Usage The zmasterd daemon is run as follows: usage: zmasterd zmasterd zmasterd zmasterd zmasterd zmasterd cold stop deact act [ ””] kill Zmasterd makes use of the file /opt/acc/cfg/zmasterd_list, which contains the daemons that zmasterd is responsible for starting, stopping, and monitoring.
ZMASTERD - Daemon Monitoring Feature zmasterd_list File Format zmasterd_list File Format The file /opt/acc/cfg/zmasterd_list contains the following: • A list of daemons to be started and monitored by zmasterd when it is run with no runstring parameter. This list also includes the runstring parameters to use when starting the daemons. • A list of programs to be scheduled “once” by zmasterd when it is run with no runstring parameter or with the cold option.
ZMASTERD - Daemon Monitoring Feature Sample zmasterd_list File Sample zmasterd_list File The /opt/acc/cfg/zmasterd_list file that is provided with the ACC Base product contains the following: # HP - /opt/acc/cfg/zmasterd_list file # Start these daemons when zmasterd is started, and monitor them: start zmlog start zmon cold /opt/acc/cfg/loopback.tmem start znode # Stop these daemons when zmasterd is run with the stop option.
ZMASTERD - Daemon Monitoring Feature Typical Usage Typical Usage The typical use of zmasterd is the following: • The ACC Base software will provide an appropriate zmasterd_list file. • The ACC protocol software will automatically customize the zmasterd_list file to add in any daemons they require. • The daemons for the ACC Subsystem and any protocol accessory products that are installed will be started up when either of the following is run: % zmasterd % zmasterd cold /opt/acc/cfg/loopback.
ZMASTERD - Daemon Monitoring Feature Special Assumptions Special Assumptions Zmasterd makes special assumptions about zmlog and zmon, and takes special action with these daemons. • Zmasterd will always bring up zmlog. If there is no zmasterd_list file, or if there is a file but zmlog is not in it, zmasterd will still start zmlog with no runstring parameters. This is so that the fact that zmasterd was started will always be recorded.
ZMASTERD - Daemon Monitoring Feature Bringing Up the ACC Subsystem Bringing Up the ACC Subsystem The ACC Subsystem is brought up by running zmasterd with no runstring parameters or with the cold parameters. This causes zmasterd to read the zmasterd_list and take the following actions: 1. Zmasterd checks to see if the zmasterd daemon is already running in the system. If the zmasterd daemon is already active and zmon cold has been scheduled successfully, the second invocation of zmasterd will exit.
ZMASTERD - Daemon Monitoring Feature Bringing Up the ACC Subsystem 5. Assuming that zmon has been successfully started, zmasterd will start running the daemons that are listed in the start statements in the zmasterd_list file. If any of the daemons are already running, an error will be logged. Note that zmasterd can only monitor daemons that it starts: Daemons that are in its start list, but are already running at this point will not be monitored! 6.
ZMASTERD - Daemon Monitoring Feature Restarting Terminated Daemons Restarting Terminated Daemons If zmasterd detects that a daemon that it started has terminated, it will attempt to restart that daemon. • If the daemon that has terminated is zmon, it will be restarted with the queue parameter. This will cause zmon to continue functioning and processing requests without re-downloading the .tmem file.
ZMASTERD - Daemon Monitoring Feature Stopping Daemons Stopping Daemons Daemons that zmasterd is managing may be stopped by running zmasterd stop. When daemons managed by zmasterd are stopped by running zmasterd stop, the following actions occur: 1. zmasterd rereads the /opt/acc/cfg/zmasterd_list file if it exists. 2. If no zmasterd_list exists, zmasterd invokes zmon stop to stop the ACC Mux subsystem and zmasterd stops all running daemons except zmlog. 3.
ZMASTERD - Daemon Monitoring Feature Deactivate Option Deactivate Option The deactivate directive is used to terminate a daemon that was started by zmasterd and to cause it to no longer be monitored. The format of the command is: %zmasterd deact This will cause the daemon to be killed, and zmasterd will not try to restart that daemon. Note that zmon may not be deactivated. In order to terminate zmon, zmasterd stop must be run.
ZMASTERD - Daemon Monitoring Feature Activate Option Activate Option The activate directive is used to cause zmasterd to start a daemon, and to monitor that daemon. This can be used to restart a daemon that has been deactivated, or it can be used to start a daemon that was not in the original zmasterd_list file.
ZMASTERD - Daemon Monitoring Feature Important Notes Important Notes • zmasterd can only handle daemons that are provided by the ACC products. • These daemons must reside in /opt/acc/bin/. • In the case that zmasterd and all daemons it has launched need to be terminated, use the kill option (zmasterd kill). • After the ACC system is brought up, zmasterd will run as a daemon to monitor the other running ACC daemons. It logs messages to the ZCOM message log file for the events it detects or carries out.
11 WATCH - Mux Shutdown Feature 223
WATCH - Mux Shutdown Feature Overview Overview The Dual Interface Configurations allow two ACC interface cards to be connected to a one mux panel/cable. In order for the interface ports to be accessed, they must be configured as LOOPBACK from one interface card, and as RS232, X.21 (or whatever is appropriate) from the other interface card.
WATCH - Mux Shutdown Feature Configuration Requirements Configuration Requirements The following configuration requirements must be met to use the watch feature: • The .zlnk file used to create the .zabs file being used must include monitor.zrel. Note that monitor.zrel is included in all .zlnk files that are provided by the ACC base product, and is therefore available via all .zabs files that are provided. • The ttgen .answ file that corresponds to the .
WATCH - Mux Shutdown Feature Running watch Running watch The watch program can be run manually as follows: # watch [] If no timeout parameter is given, the default time between the mux card and the watch daemon is 10 seconds. This can be changed to be between 1 and 127 seconds. The watch program must be started up after zmon is started. In the case that zmon is terminated, watch will also terminate. It must then be restarted after zmon is restarted.
WATCH - Mux Shutdown Feature Observing the watch Feature Observing the watch Feature The watch functionality can be observed by doing the following: • Create a configuration that meets all of the requirements listed in the previous section. • Bring up the ACC Mux subsystem, including the watch program. • Reboot the system by running reboot -h. • Wait for 2 times the timeout value. The light on the mux card should turn yellow, indicating that the mux has been shutdown.
WATCH - Mux Shutdown Feature Observing the watch Feature 228 Chapter 11
12 PMON - ACC E1/T1 Line Monitor 229
PMON - ACC E1/T1 Line Monitor Overview Overview The PMON application is used to log events occurring on E1 or T1 lines to the ZCOM system log file. Refer to the ACC Error Guide for its messages. PMON receives events via monitoring devices which PMON creates on each active configured E1 or T1 port. Events are notified to PMON in the form of unsolicited status messages from the monitoring devices. Events are not logged as they happen, since E1 or T1 lines could generate events at a very high rate.
PMON - ACC E1/T1 Line Monitor Running PMON Running PMON The usual way to start and stop PMON is to add it to the zmasterd_list file and let zmasterd manage it. For example, the zmasterd_list file could appear as: # HP Z7250A- /opt/acc/cfg/zmaster_list file # Start these daemons when zmasterd is started, and monitor them: # Start zmlog with -nd option for no console loggin. start zmlog -nd start zmon cold /opt/acc/cfg/loopback.
PMON - ACC E1/T1 Line Monitor Stopping PMON Stopping PMON If zmasterd is managing PMON, then it will shutdown PMON when the “stop” or “kill” command is issued to zmasterd. If PMON has been run manually or from a script, it will terminate itself when the ZCOM system is shut down. Alternatively, a graceful shutdown can be performed by sending a SIGINT signal to PMON. In each case, PMON will delete its monitoring devices before terminating.
PMON - ACC E1/T1 Line Monitor Receiving E1/T1 Line Status with a Customer Application Receiving E1/T1 Line Status with a Customer Application By setting itself up as an additional receiver, an application can “tap” into the status messages being delivered to PMON from the ACC cards. This entails scanning through all the device ZLUs, to search for the monitoring devices. These are easily identified by the application number of 45 in the logical terminal table (ltapno field).
PMON - ACC E1/T1 Line Monitor Receiving E1/T1 Line Status with a Customer Application For example, the initialization code may look something like: { zsinfo_type zaddr_type zltt_type uint32 char int int32 sip; paddr, taddr; ltt; pflag, limit; name[8]; zlu; err; /* Initialise ZCOM API */ if (err = zinit(&sip)) { --- Report error --exit(0); } /* Get a primary ZLU */ pflag = 1; strcpy (name,"MY_APPL"); limit = 0; if (err = zopen(&paddr,pflag,name,limit)) { --- Report error --exit(1); } /* Look for PMON devi
PMON - ACC E1/T1 Line Monitor Receiving E1/T1 Line Status with a Customer Application the lines). If the code is less than or equal to 63, then it is one of the general zcom status codes (used to indicate the line going UP or DOWN). This is an example of the kind of processing required on receiving this type of message: switch(zmhd.mid.mstype) { . . . case ZCOM_MSTYPE_RSLT: if (err = zinfo (&zmhd.mid.mzsrce, 1, (char*)<t, sizeof(ltt))) { --- Report error --} rreq = zmhd.mrq.
PMON - ACC E1/T1 Line Monitor Receiving E1/T1 Line Status with a Customer Application Note that PMON does not issue another ZCOM_SETYPE_RECONFIG event after it has finished its dynamic configuration. Another listening application must detect when PMON creates new monitoring devices, either • by detecting ZCOM_SETYPE_RECONFIG events (see the man page on the zevent_rcvr() function) and then scanning for any new devices.
A TTGEN Configuration File 237
TTGEN Configuration File TTGEN Configuration File Example TTGEN Configuration File Example The following example is intended as a guide only, and will not work with all hardware configurations. TTGEN -sto x25.answ x25.
TTGEN Configuration File TTGEN Configuration File Example first_insvc last_insvc first_svc last_svc first_outsvc last_outsvc def_inpacket def_outpacket def_inwindow def_outwindow T1_timer T2_timer T3_T4_timer 1 9 0 0 0 0 7 /* 128 7 /* 128 2 2 res_100ms, res_100ms, res_1s, Term 0001 0:0 x25.svc.out Repeat 8 byte pkt size */ byte pkt size */ 20 10 60 /* T1 = 2 seconds */ /* T2 = 1 second */ /* T4 = 60 seconds */ 0h 0h 99 0 0 0 0 ”L3 svc” Term 0601 0:1 X25.
TTGEN Configuration File TTGEN Configuration File Example def_outwindow T1_timer T2_timer T3_T4_timer 2 res_100ms, 20 res_100ms, 10 res_1s, 60 /* T1 = 2 seconds */ /* T2 = 1 second */ /* T4 = 60 seconds */ Term 0021 0:2 x25.svc.out 0000h 6200h 99 0 0 0 0 ”L3 svc” Repeat 8 Term 0603 0:3 X25.
TTGEN Configuration File TTGEN Configuration File Example option no_autostart last_pvc first_insvc last_insvc first_svc last_svc first_outsvc last_outsvc def_inpacket def_outpacket def_inwindow def_outwindow T1_timer T2_timer T3_T4_timer 37h 0 1 9 0 0 0 0 7 /* 128 7 /* 128 2 2 res_100ms, res_100ms, res_1s, byte pkt size */ byte pkt size */ 20 10 60 /* T1 = 2 seconds */ /* T2 = 1 second */ /* T3 = 60 seconds */ Term 0606 0:6 X25.
TTGEN Configuration File TTGEN Configuration File Example def_inpacket def_outpacket def_inwindow def_outwindow T1_timer T2_timer T3_T4_timer 7 /* 128 7 /* 128 2 2 res_100ms, res_100ms, res_1s, byte pkt size */ byte pkt size */ 20 10 60 /* T1 = 2 seconds */ /* T2 = 1 second */ /* T3 = 60 seconds */ Term 0071 0:7 x25.svc.
TTGEN Configuration File System Response System Response Below is the listing that results from the preceding runstring: TTGEN -sto x25.answ x25.tmem Note that any undefined ports on each interface are reported. Page 1 ttlst: x25.tmem System Summary Fri Jan 14 16:32:13 2000 FILENAMES Source file: /opt/acc/cfg/x25.answ Object file: /opt/acc/cfg/x25.tmem REVISIONS ZCOM Rev: TTGEN Rev: 6.2.0.0 1.1.0.
TTGEN Configuration File System Response Interface Tables Starting offset: Total size: Size of table: Number of tables: Unused tables: 573024 (0x0008C1A0) 8000 bytes (0.5%) 8000 bytes 1 0 Response Records Starting offset: Total size: Size of record: Number of records: Unused records: 593024 (0x00090C80) 8000 bytes (0.
TTGEN Configuration File System Response Memory Locations IFT starts at: Look up table: Command buffer: FIRQ buffer: Response buffer: STDT buffer: 0x00069828 0x00069B80 0x0006BB80 0x0006BC80 0x0006BCC0 0x0006BD00 (8192 bytes) (256 bytes) (64 bytes) (64 bytes) (2048 bytes) Firmware Information ROM module: (Rev: ) ROM time: Download file: /opt/acc/z7200a/x25.zabs Download module: Link time: Req’d Protocol: X25 X25 B3270SE Page 4 ttlst: x25.
TTGEN Configuration File System Response Term# Ptype ----- ----0 25 1 26 Optn ---0x40 0x40 Poll -----0x0000 0x0000 Select -----0x0000 0x6200 Page 5 ttlst: x25.
TTGEN Configuration File System Response 8 9 10 26 26 62 0x40 0x40 0x00 0x0000 0x0000 0x0000 0x6200 0x6200 0x0000 L3 svc L3 svc Loopback term 99 99 99 0 0 0 0 0 0 0 0 0 0 0 0 99 99 99 38 39 703 INTERFACE CARD 0 PORT 4 Defined Terminals: Port Tx Limit: 11 20000 bytes Port Configuration Port mode: Baud rate: Clock source: Operating mode: Clock Multiplier: Encoding mode: Parity: Term# Ptype ----- ----0 25 1 26 2 26 3 26 4 26 Optn ---0x37 0x40 0x40 0x40 0x40 RS232 57600 Int SDLC x1 NRZ Poll --
TTGEN Configuration File System Response Operating mode: SDLC Clock Multiplier: x1 Encoding mode: NRZ Parity: Page 8 ttlst: x25.
TTGEN Configuration File System Response Term# Ptype ----- ----0 25 1 26 2 26 3 26 4 26 5 26 6 26 7 26 8 26 Optn ---0x37 0x40 0x40 0x40 0x40 0x40 0x40 0x40 0x40 Poll -----0x8209 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 Select -----0x4BEA 0x6200 0x6200 0x6200 0x6200 0x6200 0x6200 0x6200 0x6200 TerminalName/CallNumber ----------------------L2 DTE L3 svc L3 svc L3 svc L3 svc L3 svc L3 svc L3 svc L3 svc [Page 9 ttlst: x25.
TTGEN Configuration File System Response 250 Appendix A