* Rational VADS 6.2.3a & Solaris signals
@ 1996-11-01 0:00 George Rice
0 siblings, 0 replies; only message in thread
From: George Rice @ 1996-11-01 0:00 UTC (permalink / raw)
Cc: corcoran
I'm having a problem with UNIX signals. I have a set of processes
running on a SPARCstation under Solaris 2.4. The programs are written
in Ada using the Rational VADS 6.2.3a runtime environment. I am
simulating a hardware environment and need to simulate bus interrupts
between the processes.
I have written Ada bindings to the sigsend system service and each
process has a signal handler attached to the sigusr1 unix signal.
To simulate the hardware interrupt, I use the Ada binding to send
the sigusr1 signal to the other processes. In general, this system
works but has the following problems:
1) I randomly see a Pending Kernel Service Queue Overflow error from
the Rational runtime. It is my understanding that this is due to too
many system service calls being queued while processing a signal.
However, all the signal handler does is use the vads_exec library
service to set a semaphore which another task is waiting on. The handler
then goes back to waiting for the next signal. Our design is such that
another signal will not be sent until all processes have indicated that
the current signal has been serviced. I have increased the size of the
pending kernel service queue via the Pending_Count parameter in the user
configuration file but this did not help.
2) I also randomly see a missed signal. The signal sender blocks until
all processes have serviced the interrupt. Occasionally our system hangs
with the sender waiting on one process which has not received the
signal. The sigsend to that process did not return an error yet the
signal was apparently not received. By manually sending the sigusr1
signal to the process from an xterm, I can jumpstart the system and
execution continues.
3) Also, the overhead associated with using signals seems to be
excessive, about 1 ms per signal. Previously we were using the Verdix
2.1.1 runtime and the signal overhead was worse by about a factor of 10.
It improved to where it is now when we went to the Rational 6.2.3a
runtime. I don't know if this can by improved further or not.
Has anyone out there had similar experiences? I welcome all comments
and suggestions.
Sean.A.Corcoran@lmtas.lmco.com
--
(posted for Sean by:)
George F. Rice 817-763-4216 (voice) 817-762-1444 (fax)
George.F.Rice@lmtas.lmco.com http://webmmc.lmtas.lmco.com/~rice
Technology Insertion MZ 5965, PO Box 748
Lockheed Martin Tactical Aircraft Systems Fort Worth, Tx 76101-0748
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~1996-11-01 0:00 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1996-11-01 0:00 Rational VADS 6.2.3a & Solaris signals George Rice
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox