home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!europa.asd.contel.com!darwin.sura.net!jvnc.net!netnews.upenn.edu!msuinfo!eecae.ee.msu.edu!jhl
- From: jhl@eecae.msu.edu (John Lawitzke)
- Newsgroups: comp.unix.internals
- Subject: psignal()
- Message-ID: <1992Aug25.200550.1862@msuinfo.cl.msu.edu>
- Date: 25 Aug 92 20:05:50 GMT
- Sender: news@msuinfo.cl.msu.edu
- Organization: Michigan State University, East Lansing
- Lines: 33
- Originator: jhl@eecae.ee.msu.edu
-
- I am working on a project which consists of a SCO UNIX device driver and
- a daemon. The device driver is monitoring for two events within the
- hardware. When either event occurs, the device driver attempts to send
- a signal to the daemon to inform it of the occurence.
-
- The events being monitored for are few and far between, therefore
- signals will work fine.
-
- Now the problem, my testing indicates that the device driver is
- functioning properly and the signals are being sent. The daemon
- receives signals fine when I send them via "kill" from the command line.
- However, the signals from the device driver never arrive. The daemon is
- using sigaction() for signal handling setup.
-
- The device driver functions as follows:
-
- The daemon opens the device and writes an identifying string.
- When the device driver receives the id string, it saves the value of
- u.u_procp for future use.
- The daemon closes the device. The daemon now sits in:
- for (;;)
- pause();
- When an event being monitored for occurs, the device driver uses the
- saved value of u.u_procp to send a signal.
-
- I have throughly tested everything. Algorithms and coding are correct.
- Why doesn't the signal appear at the process?
-
- --
- John Lawitzke
- Manager of Product Management
- Dale Computer Corp.
- Internet: jhl@frith.egr.msu.edu
-