File: README

package info (click to toggle)
radlib 2.12.0-9
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 3,132 kB
  • sloc: ansic: 15,843; sh: 8,102; makefile: 501
file content (53 lines) | stat: -rw-r--r-- 1,858 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
radlib msgRouter Test Application
---------------------------------

This directory contains the msgRouter multiprocess test application using radlib.


PROCESSES
---------

    radmrouted       - the standard radlib message router built and installed 
                       when radlib is installed
    rtestd           - a non-daemon radlib process which provides standard I/O 
                       on stdin/stdout
    rtest2d          - a daemon radlib process which sends and receives test 
                       messages from rtestd (and possibly remote processes)


DESCRIPTION
-----------

The 'templated' process will initialize two timers set to expire every 15 and 33
seconds respectively.  It also registers stdin as an IO descriptor so that 
numbers input from the shell will be sent to 'template2d' via a message. When 
'template2d' sends the result message it prints the result to stdout. It does 
not run as a true daemon (see radProcessInit for details) so that stdin/stdout 
can be used for example purposes.

The 'template2d' daemon receives messages from 'templated' containing a positive
integer, computes how many prime numbers exist which are less than the number, 
then sends a message back to 'templated' containing the result.

The purpose of this template is two-fold: first, to demonstrate how a
multi-process application is best constructed using radlib (including the state 
machines), and second to provide an example of the event-driven, multiple 
stimulus capabilities of radlib processes. It can be used as a template for the
development of new radlib applications. It also serves as a ready-to-build
"Getting Started" type of example application.


BUILDING
--------

Execute "make" (gmake for BSDs) from this directory


RUNNING
-------

Execute "./runrouters start" from this directory

To stop: "./runrouters stop"