man8/actWDtask

Table of Contents

Name

actWDtask - ACT module watchdog timer I/O service

Synopsis

actWDtask <argument list>

Description

Watchdog/timer I/O service for ACT modules.

This program supports ACT modules with watchdog functionality.

This allows watchdog timeout functionality to be incorporated in places where it might be desirable to do things like turn off status controls or set safe voltage controls if the watchdog timer expires.

It provides a choice of automatically resetting the timeout or allowing the user to reset the timer from the control system.

This program is required for actSCtask and actACtask unless they are passed the --ignore_wd flag. Outputs are not initialized until the watchdog timer has been armed by this program.

The program registers with dbman as WDtask.

Arguments

Argument processing is done using Unix long argument syntax.

The values of all of the parameters listed here (whether or not they were supplied on the command line) are printed on stderr when the program starts.

--dbman_host <hn>

The host where dbman is running.

If this argument is not supplied the default is "localhost".

The DBMAN_HOST environment variable is used if present.

--dbman_name <rn>

Sets the name used by the program to register with dbman.

--dev <path>

The pathname of the device to open.

If this argument is not supplied the default is "/dev/kbuss".

--drv <drv>

The Driver key.

If this argument is not supplied the default is "KBUSS_1".

--cmin <C>

The minimum crate number.

If this argument is not supplied the default is "0".

--cmax <C>

The maximum crate number.

If this argument is not supplied the default is "15".

--no_startup_init

Normally when the program is started it will issue commands to initialize the watchdog timer.

This argument prevents this from happening on startup. It is then up to the user to explicitly issue the commands to initialize the timer.

--auto_init

Normally the program will not automatically reinitialize the watchdog timer function.

This argument causes the program to reinitialize after a communication or power failure.

--auto_reset

Normally the program will not automatically reinitialize the watchdog timer function.

This argument causes the program to reinitialize after a timeout when no communication or power failure has occured. This option is here as a safeguard, but should never happen in practice.

--tmo_period <msec>

The time (in milliseconds) before a timeout occurs.

If this argument is not supplied the default is "3000" (3 seconds).

--tmo_refresh <msec>

The time (in milliseconds) between timer refresh messages.

If this argument is not supplied the default is "1000" (1 second).

--diag

Don’t close stdin and stdout and allow SIGINT to kill the program.
--show_tbl

Print the contents of various tables to stderr.
--verbose=<level>

Print more information. If <level> is missing it defaults to 1.

--persist

Run the program in persist mode.

--tagname_ctl

parameter name to use for task control.

--tagname_status

parameter name to use for reporting task status.
--help

Print program help to stderr.

If this argument is supplied the internal help is printed to stderr and the program exits.

Device Types used by this program

ACTwdSR - required

Status reads. This record must be present in the database for the module to be serviced by the program.

The bit field usage is:

   0-15 - individual module timeout status, based on KBUSS address

   16 - global timeout status, active if any individual module is timed out

When the bits are set they indicate a timeout.

Note: Communication and power failure status is not reflected, only timer timeouts.

ACTwdSC - optional

Status controls.

The bit field usage is:

   0-15 - individual module timer initialization, based on KBUSS address

   16 - global timer initialization, affects all modules

The bits are "momentary". Asserting them actuates the listed function.

ACTscWD - optional
rACTdacWD - optional
rModule Configuration Masks.

These keys are used to determine the addresses of the modules to service. They are primarily used by their respective tasks to configure module behavior when a timeout occurs.

Examples

#
# this example limits service to address 0 thru 3
# dbman is running on the same host
#
actWDtask --cmin 0 --cmax 3
#
#
# this example emulates the behavior of WDtask
# dbman is running on the same host
#

actWDtask --auto_init --auto_reset

Manual page revision

$Id: actWDtask.8,v 1.0 2009/10/08 20:21:05 stodola Exp $


Table of Contents