168
8 Host Utilities
•
-x
Terminate a running system. An active instance of the
gctload
module, together with any forked binaries,
is terminated if a subsequent call of
gctload
binary is made with the
-x
parameter.
Example
To run
gctload
with the
system.txt
file as the configuration file, a congestion onset value of 70, a congestion
abatement value of 30, and a message pool size of 2000, the command is:
gctload -csystem.txt -Co70 -Ca30 -m2000
8.3.1
System Status (gctload -t1)
For diagnostic purposes, it is possible to determine message queue statistics using
gctload
with an additional
command line option. When a host is running (having already started
gctload
), run
gctload
a second time with
either the
-t1
or
-t2
option to display message statistics to the console. The
-t1
option causes
gctload
to print
the current system statistics.
For example, the command:
gctload -t1
generates output similar to the following:
GCTLOAD System status:
MSGs in system: 2000
MSGs allocated: 1
MSGs free: 1999
Maximum MSGs allocated: 155
Out of MSG count: 0
Internal system error: 0
Congestion module Id: 0x20
Congestion onset: 1000
Congestion abate: 200
Congestion status: 0
Congestion count: 0
GCTLIB library: V1.19
A rising number of allocated messages indicates that there is a problem, for example, messages may be
being sent to a non-existent queue or no process in the system is reading from the associated destination
queue. The behavior of the system after it has run out of messages may be unstable and in these conditions,
the
gctload
environment should be restarted. The contents of the currently allocated messages may be shown
using the
-t2
option, see
Section 8.3.2
below.
8.3.2
Show All Currently Allocated API messages (gctload -t2)
Caution:
The gctload command with the -t2 option should not be used on live systems, since it locks the
system until all messages have been printed out, an operation that can take a significant amount
of time. The -t2 option is intended for use during fault finding on a system that has not been
configured correctly.
Issuing the
gctload
command with the -t2 option generates a printout of all the currently allocated messages
to the console. Messages are displayed in hexadecimal format as follows:
M t<type> i<id> f<src> d<dst> s<status> e<err_info> p<param>
where each field contains the value of the corresponding message field in hexadecimal format.
For example, the following command:
gctload -t2
generates output similar to the following:
M-t0f83-i0000-fb0-def-s02
M-t0f83-i0000-fb0-def-s01
M-t0f0d-i0000-fdf-def-s19
M-t0201-i0000-f71-def-s03
M-t0201-i0000-f71-def-s02
M-t0201-i0000-f71-def-s03
M-t0201-i0000-f71-def-s02