Sponsored Content
Full Discussion: Help with Signals
Top Forums UNIX for Advanced & Expert Users Help with Signals Post 302843804 by jim mcnamara on Thursday 15th of August 2013 07:24:51 AM
Old 08-15-2013
Interrupt is interesting here. SIGINT will generate that response as it is the name most systems "give" to that signal number (note: actual number may vary)

Code:
/usr/include/cygwin/signal.h:#define    SIGINT  2       /* interrupt */

from the cygwin install on this PC.

This is different from a driver interrupt - where a thread's current registers are pushed onto an interrupt stack. This appears to be a signal. And signals do cause asynchronous interrupts and process termination if they are not handled as part of the process signal mask.

IMO: The problem is the code being executed. The point is something appears to be generating a SIGINT that goes unhandled in the process.

Since you state nothing about what is running....

Add a diagnostic signal handler to the code java, C, perl, etc., ( or a trap statement in shell) to tell when/where it happens. Also note - a process can call raise() in code or kill in shell to send a signal to itself, which is another avenue to explore.
 

10 More Discussions You Might Find Interesting

1. Programming

Signals In HP-UX

does the way of handling, interrupting signals in HP-UX same as that of solaris. If there is difference than what it is.?:confused: (1 Reply)
Discussion started by: kapilv
1 Replies

2. UNIX for Dummies Questions & Answers

Signals...

(posted this in the scripting forum as well, but figured it should go here) So, what's going on is this: For our program, we had to create our own shell, and if the user pressed ctrl-c just at the cmdline, then this signal would be ignored, but if there is a foreground process running, let's... (0 Replies)
Discussion started by: blind melon
0 Replies

3. Programming

Using Signals

How can use signals in a C program If i want a child program to signal it's parent program that it(child) program has completed the task that it was assigned.:confused: (2 Replies)
Discussion started by: kapilv
2 Replies

4. UNIX for Dummies Questions & Answers

threads and signals

can any one give me an example of a concurrency program in threads and signals, i.e how to deliver messages between threads using signals. thanks (0 Replies)
Discussion started by: moe_7
0 Replies

5. Programming

threads and signals

can any one give me an example of a concurrency program in threads and signals, i.e how to deliver messages between threads using signals. thanks (2 Replies)
Discussion started by: moe_7
2 Replies

6. OS X (Apple)

How to debug signals

Hi, In our program, we are using SIGTERM and i tired to put break point in this function. But my debuger is unable to brake at that point. I am working on Mac X and using XCode. Thanks (0 Replies)
Discussion started by: Saurabh78
0 Replies

7. Programming

Can we debug Signals

Hi, In our program, we are using SIGTERM and i tired to put break point in this function. But my debuger is unable to brake at that point. I am working on Mac X and using XCode. Thanks (1 Reply)
Discussion started by: Saurabh78
1 Replies

8. UNIX for Dummies Questions & Answers

Help understanding signals

I am having trouble with folowing sigset_t s; // now s represents set of signals sigemptyset(&s) ; // initialize this set and exclude all the signals from it.is it empty? sigaddset(&s,SIGILL);//this set containts only SIGILL signal sigprocmask(SIG_BLOCK,&s,NULL);//lost on this one Can... (3 Replies)
Discussion started by: joker40
3 Replies

9. UNIX for Dummies Questions & Answers

perror with signals

I have following problem with this code.. First time trough the main loop..... perror gives ....blocked signal:success(all other times gives illlegal seek) Should every time trought the main loop be success?? And the perror otside of main loop...didn't change mask:success That line of code... (2 Replies)
Discussion started by: joker40
2 Replies

10. UNIX for Dummies Questions & Answers

Blocking signals

I know how to add signal to a set. But what if I want to add 2 or 3 signals to the set. I know I can use sigaddset (&set,SIGBUS)....but what if I want to add SIGBUS and SIGALRM at once. Do i have to do it like this.. sigaddset (&set,SIGBUS); sigaddset (&set,SIGALRM); Is there another way to... (0 Replies)
Discussion started by: joker40
0 Replies
proc_signal(9F) 					   Kernel Functions for Drivers 					   proc_signal(9F)

NAME
proc_signal, proc_ref, proc_unref - send a signal to a process SYNOPSIS
#include <sys/ddi.h> #include <sys/sunddi.h> #include <sys/signal.h> void *proc_ref(void); voidproc_unref(void *pref); int proc_signal(void *pref, int sig); INTERFACE LEVEL
Solaris DDI specific (Solaris DDI). PARAMETERS
pref A handle for the process to be signalled. sig Signal number to be sent to the process. DESCRIPTION
This set of routines allows a driver to send a signal to a process. The routine proc_ref() is used to retrieve an unambiguous reference to the process for signalling purposes. The return value can be used as a unique handle on the process, even if the process dies. Because system resources are committed to a process reference, proc_unref() should be used to remove it as soon as it is no longer needed.proc_sig- nal() is used to send signal sig to the referenced process. The following set of signals may be sent to a process from a driver: SIGHUP The device has been disconnected. SIGINT The interrupt character has been received. SIGQUIT The quit character has been received. SIGPOLL A pollable event has occurred. SIGKILL Kill the process (cannot be caught or ignored). SIGWINCH Window size change. SIGURG Urgent data are available. See signal.h(3HEAD) for more details on the meaning of these signals. If the process has exited at the time the signal was sent, proc_signal() returns an error code; the caller should remove the reference on the process by calling proc_unref(). The driver writer must ensure that for each call made to proc_ref(), there is exactly one corresponding call to proc_unref(). RETURN VALUES
proc_ref() returns the following: pref An opaque handle used to refer to the current process. proc_signal() returns the following: 0 The process existed before the signal was sent. -1 The process no longer exists; no signal was sent. CONTEXT
proc_unref() and proc_signal() can be called from user or interrupt context. proc_ref() should only be called from user context. SEE ALSO
signal.h(3HEAD), putnextctl1(9F) Writing Device Drivers SunOS 5.10 7 Feb 1994 proc_signal(9F)
All times are GMT -4. The time now is 07:28 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy