3.3. Cascade DataHub data transmission

The Cascade DataHub works in conjunction with the qserve (queue manager) program to provide asynchronous data transmission between tasks.

Figure 3-3. Cascade DataHub Data Transmission

Any number of tasks can write data directly to the Cascade DataHub, because it is a non-blocking program that is always ready to receive a message.

When a program wishes to read the point value from the datahub, the task registers for exceptions for that point. Then, whenever the datahub receives a new value for a particular data point, it immediately sends a message to the queue for each client program that has registered an interest in that data point. The queue manager then sends a signal to the client program, informing the client that there is a message waiting on its queue. The client program then sends a message to the queue manager requesting the message. The queue manager sends the new value for the data point in the reply to the client.

There are three ways in which a client can register for exceptions from the datahub.

Copyright 1995-2002 by Cogent Real-Time Systems, Inc.