|
|
This program is the central distribution point for all PICS real time data. RTDB works in conjunction with RTRemote to distribute real time data throughout the PICS LAN. While data may be generated on remote subsystems, no data is processed until it comes out of RTDB. In a standard PICS installation (with failover support enabled) there is a master and slave copy of RTDB running. Both master and slave receive all of the incoming real time data, but only the master transmits the changes out to the remainder of PICS. This means that within a few minutes of booting, the backup should have all of the same values as the primary -- any any unknown values will not be reported until they are known, further reducing the possibility of software artifacts in the data stream.
Internally, RTDB allocates a block of memory large enough to hold MAXPID (the largest PICS point ID defined) real time data records (plus some subscription support data). The memory block is indexed by the PICS Point ID to provide fast access. Linked lists of local (within the same machine) subscribers to each point are associated with each real time record. When a new record comes in, RTDB checks the linked list to see if any local programs want a copy of it.
In order to reduce network traffic by (at least) 50%, RTDB uses UDP/IP broadcasts, rather than TCP/IP connections, to transmit data. As new data records are received, they are collected into blocks for network transmission. When a block is full (or no new data arrives for 1/4 sec) the block is transmitted.
RTDB receives data both through EVI's IPCAPI (InterProcess Communication Application Programming Interface) and UDP/IP blocks from remote subsystems.
Because of its use of UDP/IP, RTDB is generally not affected by other subsystems on the network, except as follows:
Other than those listed above, RTDB should not be directly affected by other subsystems in any way.
Parameter Description LogFile Only defined for the debug version of RTDB, this activates a log file that will contain useful debugging information for the developer. Force Primary These two word options force RTDB into the specified state, as if the local Task Monitor has directed it. These exist for testing purposes and should not be used in a production system. Force Backup Force Standby NoWatch Prevents the "Data not available" message from appearing. Watch Causes RTDB to enable the data watchdog function immediately rather than waiting for the TaskMonitor to indicate the node is completely loaded. This is useful in test situations when TaskMon may not be available.
|
|