NAME | SYNOPSIS | DESCRIPTION | OPTIONS | ENVIRONMENT VARIABLES | PROBLEMS AND SOLUTIONS | ATTRIBUTES | SEE ALSO
chserver_d and chserver are host utilities.
chserver_d is the ChorusOS DebugServer for debugging ChorusOS in system mode. This server must be started on the host which has a serial line connected to the target. It can manage several targets at the same time. These targets can be running different versions of ChorusOS, and they can be of different architectures (PowerPC, UltraSparc, or x86).
chserver_d uses a set of XML files to configure itself for a given ChorusOS kernel and target architecture. It also uses the XML configuration files to find out the list of targets to be managed.
chserver is the startup script for the DebugServer. It verifies the configuration and finds out some options to start chserver_d more easily. Although it is possible to override them, the -config-dirs and -slot options are found by the startup script. The DebugServer is started in background.
The following options are supported:
Indicates to start the chserver_d server with the standard input, standard output and standard error redirected to /dev/null . This option is intended to be used to avoid problems with the rsh command when starting the DebugServer on a remote host.
Indicates the path list that the DebugServer must use to find
the DebugServer XML configuration files. Paths are separated by a colon(:)
on UNIX, and by a semicolon (;) on Windows NT. When no option is specified,
the DebugServer uses the content of the
CONFIG_DIRS
environment variable or of the
PATH
environment variable.
Turns on log generation on the DebugServer standard output. The log produced by the DebugServer can be turned on or off at run-time, by using chlog , or by changing the value of the stdout_report on the log object.
Sets the initial log level of all the components of the DebugServer to level . The log level of individual components may then be changed by using the chlog tool.
Uses the RPC slot number n to register the DebugServer. This is only necessary when several DebugServer sessions are to be started on the same host.
The DebugServer, as well as all tools based on the Debug Library, uses an optional environment variable:
CHSERVER_HOST
This environment variable is optional. It can be used to avoid having to pass the -target-host host option. The format of the string as well as this option is:
host:slot-id
When :slot-id is present, it indicates a slot number for the DebugServer RPC service. The environment variable is overriden by the -target-host host option. For example:
setenv CHSERVER_HOST jericho setenv CHSERVER_HOST concerto:3
You can specify an RPC slot number for the DebugServer. The slot number
is specified using either the
-slot
option or with the environment
variable. When no
-slot
is passed, the
CHSERVER_HOST
environment variable is checked, and the DebugServer
uses the slot number specified there. If both the option and the environment
variable are specified, the same slot number should be assigned, otherwise
an error message is issued. When no slot number is specified, the default
slot number
0
is used.
It is completely safe for anyone to set the
CHSERVER_HOST
to refer to the host name and slot number of their
DebugServer. This is valid for the DebugServer and for the clients. This is
useful for avoiding interactions with other DebugServer sessions if a separate
environment is required.
The DebugServer is a Sun RPC server that is registered to the rpcbind server. When several DebugServers need to be started on the same host, associate a slot number to each of them so that you can identify the DebugServer you want to use.
If you start only one DebugServer on a given host, it is not necessary to allocate a slot number. The default slot number ( 0 ) will be used.
If you find a problem, we recommend that you check the following:
Check that the DebugServer is running and that you have setup a CHSERVER_HOST environment variable accordingly. Also verify carefuly the slot number you have used to start the DebugServer and the slot number you are using.
Check that the serial device that you specified during the registration of your target with chadmin is correct. If not, you can change it with the following command:
chadmin --device device
where device corresponds to the valid serial device.
Check that no other tool is using the serial device. This may happen if you have started a tip or cu command to look at the debug console. You must stop such tool and then activate the target in the DebugServer. If the target is already active, you should deactivate and then re-activate it. For example, once you have stopped tip or cu you can type:
chadmin --deactivate mytarget
chadmin --activate mytarget
Check the baud rate you have specified in the dbg.agent.baud tunable and the baud rate under which you have registered your target. If it is not correct, you may change the tunable and rebuild your system or you can use the following command to change the DebugServer baud rate:
chadmin --baud value mytarget
where value corresponds to the new baud rate.
Check that the DebugAgent is enabled for system debug. The DEBUG_SYSTEM feature must be set to true . If this is not the case, you must enable it and rebuild your target image. You can do this with the following commands:
configurator --set DEBUG_SYSTEM=true
make build
Check that the path you have specified for the XML image layout file is correct and corresponds to the running target image. If this is not the case, you can setup a new path by using the following command:
chadmin --layout-file .../layout.xml mytarget
where .../layout.xml corresponds to the new path.
Check that the image which is running on the target corresponds to the last target image you have built. The DebugServer and DebugAgent verify the coherency of the target image with the XML image layout file. This coherency is based on a time stamp which changes each time you rebuild an image. You must install the new target image under the tftpboot or manage so that the new target image is booted.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
---|---|
Interface Stability | Evolving |
NAME | SYNOPSIS | DESCRIPTION | OPTIONS | ENVIRONMENT VARIABLES | PROBLEMS AND SOLUTIONS | ATTRIBUTES | SEE ALSO