[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [linrad] Linrad Shell script and network connection

The network in Linrad was primarily designed for multi-operator
use in contesting. The idea is that the primary operator has
full control of everything, the secondary operator just gets a copy
of what the primary is receiving.

For remote usage one should do it differently, of course.
Then the remote copy of Linrad should not do any processing, just
run the network and the keyboard and mouse interface.
I guess it is not easy to run Linrad control over the network
as long as svgalib is being used but it should be trivial
some day when Linrad is multi-threaded and has the control functions
in a separate thread that could be available in a X version.

Moving tasks to separate threads would make Linrad far more
easy to understand for others. The code is quite messy at many
places because of the timing constraints. Everything has to be
split in small enough chunks and Linrad has to keep track of 
priorities in the main loop so it will skip some screen updates 
now and then if there is a problem with insufficient cpu resources.

My big problem is that I do not know how to make a child process
wait for a semaphore. I found somewhere how it can wait for a signal
but I have no idea how to send a signal from another process.

Is there anyone on this list who knows how I can start a large
number of child processes that can all wait for a semaphore
nearly all the time without consuming any cpu time?

In case there is a cost in cpu load having many threads I would
just split into a few threads.


Leif / SM5BSZ