Bruce O'Neel wrote:
Hi,
Well, not so scary. That's the mac list. From a not so recent mac with
Xcode 7 installed it looks like the below.
The good news here is that the common signals have the same numbers.
And how often do you get an SIGXCPU?
I was think of SIGUSR1, can be used to useful things (IIRC nginx or
apache reload when sent), but that one is not common. :-( Of course,
SIGTERM/SIGINT/SIGHUP are, so, yes, these are most important.
Herby
cheers
bruce
#define SIGHUP 1 /* hangup */
#define SIGINT 2 /* interrupt */
#define SIGQUIT 3 /* quit */
#define SIGILL 4 /* illegal instruction (not reset when caught) */
#define SIGTRAP 5 /* trace trap (not reset when caught) */
#define SIGABRT 6 /* abort() */
#if (defined(_POSIX_C_SOURCE) && !defined(_DARWIN_C_SOURCE))
#define SIGPOLL 7 /* pollable event ([XSR] generated, not
supported) */
#else /* (!_POSIX_C_SOURCE || _DARWIN_C_SOURCE) */
#define SIGIOT SIGABRT /* compatibility */
#define SIGEMT 7 /* EMT instruction */
#endif /* (!_POSIX_C_SOURCE || _DARWIN_C_SOURCE) */
#define SIGFPE 8 /* floating point exception */
#define SIGKILL 9 /* kill (cannot be caught or ignored) */
#define SIGBUS 10 /* bus error */
#define SIGSEGV 11 /* segmentation violation */
#define SIGSYS 12 /* bad argument to system call */
#define SIGPIPE 13 /* write on a pipe with no one to read it */
#define SIGALRM 14 /* alarm clock */
#define SIGTERM 15 /* software termination signal from kill */
#define SIGURG 16 /* urgent condition on IO channel */
#define SIGSTOP 17 /* sendable stop signal not from tty */
#define SIGTSTP 18 /* stop signal from tty */
#define SIGCONT 19 /* continue a stopped process */
#define SIGCHLD 20 /* to parent on child stop or exit */
#define SIGTTIN 21 /* to readers pgrp upon background tty read */
#define SIGTTOU 22 /* like TTIN for output if (tp->t_local<OSTOP) */
#if (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
#define SIGIO 23 /* input/output possible signal */
#endif
#define SIGXCPU 24 /* exceeded CPU time limit */
#define SIGXFSZ 25 /* exceeded file size limit */
#define SIGVTALRM 26 /* virtual time alarm */
#define SIGPROF 27 /* profiling time alarm */
#if (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
#define SIGWINCH 28 /* window size changes */
#define SIGINFO 29 /* information request */
#endif
#define SIGUSR1 30 /* user defined signal 1 */
#define SIGUSR2 31 /* user defined signal 2 */
/31 October 2017 14:56 Herby Vojčík <he...@mailbox.sk> wrote:/
Bruce O'Neel wrote:
> Hi,
>
> Posix requires that if the process is killed the return status is
> greater than 128.
>
> What is convention on linux systems is that if the process is sent a
> signal then the signal number is added to 128. Therefore 137 is
SIGKILL
> (kill -9). SIGTERM is 143, SIGABRT is 134, SIGSEGV is 139, and so
on.
> I've not seen an exception to this but there could be.
>
> Signals off of my closest linux system look like:
>
> #define SIGHUP 1
> #define SIGINT 2
> #define SIGQUIT 3
> #define SIGILL 4
> #define SIGTRAP 5
> #define SIGABRT 6
> #define SIGIOT 6
> #define SIGBUS 7
> #define SIGFPE 8
> #define SIGKILL 9
> #define SIGUSR1 10
> #define SIGSEGV 11
> #define SIGUSR2 12
> #define SIGPIPE 13
> #define SIGALRM 14
> #define SIGTERM 15
Scary, because Esteban's sigtrapping package has them defined a bit
differently:
{ #category : #'class initialization' }
POSIXSignal class >> initialize [
SIGHUP := 1.
SIGINT := 2.
SIGQUIT := 3.
SIGILL := 4.
SIGTRAP := 5.
SIGABRT := 6.
SIGPOLL := 7.
SIGIOT := SIGABRT.
SIGEMT := 7.
SIGFPE := 8.
SIGKILL := 9.
SIGBUS := 10.
SIGSEGV := 11.
SIGSYS := 12.
SIGPIPE := 13.
SIGALRM := 14.
SIGTERM := 15.
SIGURG := 16.
SIGSTOP := 17.
SIGTSTP := 18.
SIGCONT := 19.
SIGCHLD := 20.
SIGTTIN := 21.
SIGTTOU := 22.
SIGIO := 23.
SIGXCPU := 24.
SIGXFSZ := 25.
SIGVTALRM := 26.
SIGPROF := 27.
SIGWINCH := 28.
SIGINFO := 29.
SIGUSR1 := 30.
SIGUSR2 := 31.
]