Changeset 23 for trunk/kernel/kern/signal.h
- Timestamp:
- Jun 18, 2017, 10:06:41 PM (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/kernel/kern/signal.h
r16 r23 4 4 * Author Ghassan Almaless (2008,2009,2010,2011,2012) 5 5 * Mohamed Lamine Karaoui (2015) 6 * Alain Greiner (2016 )6 * Alain Greiner (2016,2017) 7 7 * 8 8 * Copyright (c) UPMC Sorbonne Universites … … 33 33 #define SIG_ERROR -1L 34 34 35 #define SIGHUP 1 /*! hangup */36 #define SIGINT 2 /*! interrupt */37 #define SIGQUIT 3 /*! quit */38 #define SIGILL 4 /*! illegal instruction (not reset when caught) */39 #define SIGTRAP 5 /*! trace trap (not reset when caught) */40 #define SIGIOT 6 /*! IOT instruction */41 #define SIGABRT 6 /*! used by abort, replace SIGIOT in the future */42 #define SIGEMT 7 /*! EMT instruction */43 #define SIGFPE 8 /*! floating point exception */44 #define SIGKILL 9 /*! kill (cannot be caught or ignored) */45 #define SIGBUS 10 /*! bus error */46 #define SIGSEGV 11 /*! segmentation violation */47 #define SIGSYS 12 /*! bad argument to system call */48 #define SIGPIPE 13 /*! write on a pipe with no one to read it */49 #define SIGALRM 14 /*! alarm clock */50 #define SIGTERM 15 /*! software termination signal from kill */51 #define SIGURG 16 /*! urgent condition on IO channel */52 #define SIGSTOP 17 /*! sendable stop signal not from tty */53 #define SIGTSTP 18 /*! stop signal from tty */54 #define SIGCONT 19 /*! continue a stopped process */55 #define SIGCHLD 20 /*! to parent on child stop or exit */56 #define SIGCLD 20 /*! System V name for SIGCHLD */57 #define SIGTTIN 21 /*! to readers pgrp upon background tty read */58 #define SIGTTOU 22 /*! like TTIN for output if (tp->t_local<OSTOP) */59 #define SIGIO 23 /*! input/output possible signal */60 #define SIGPOLL SIGIO /*! System V name for SIGIO */61 #define SIGXCPU 24 /*! exceeded CPU time limit */62 #define SIGXFSZ 25 /*! exceeded file size limit */63 #define SIGVTALRM 26 /*! virtual time alarm */64 #define SIGPROF 27 /*! profiling time alarm */65 #define SIGWINCH 28 /*! window changed */66 #define SIGLOST 29 /*! resource lost (eg, record-lock lost) */67 #define SIGUSR1 30 /*! user defined signal 1 */68 #define SIGUSR2 31 /*! user defined signal 2 */69 #define SIG_NR 32 /*! signal 0 implied */35 #define SIGHUP 1 /*! hangup */ 36 #define SIGINT 2 /*! interrupt */ 37 #define SIGQUIT 3 /*! quit */ 38 #define SIGILL 4 /*! illegal instruction (not reset when caught) */ 39 #define SIGTRAP 5 /*! trace trap (not reset when caught) */ 40 #define SIGIOT 6 /*! IOT instruction */ 41 #define SIGABRT 6 /*! used by abort, replace SIGIOT in the future */ 42 #define SIGEMT 7 /*! EMT instruction */ 43 #define SIGFPE 8 /*! floating point exception */ 44 #define SIGKILL 9 /*! kill (cannot be caught or ignored) */ 45 #define SIGBUS 10 /*! bus error */ 46 #define SIGSEGV 11 /*! segmentation violation */ 47 #define SIGSYS 12 /*! bad argument to system call */ 48 #define SIGPIPE 13 /*! write on a pipe with no one to read it */ 49 #define SIGALRM 14 /*! alarm clock */ 50 #define SIGTERM 15 /*! software termination signal from kill */ 51 #define SIGURG 16 /*! urgent condition on IO channel */ 52 #define SIGSTOP 17 /*! sendable stop signal not from tty */ 53 #define SIGTSTP 18 /*! stop signal from tty */ 54 #define SIGCONT 19 /*! continue a stopped process */ 55 #define SIGCHLD 20 /*! to parent on child stop or exit */ 56 #define SIGCLD 20 /*! System V name for SIGCHLD */ 57 #define SIGTTIN 21 /*! to readers pgrp upon background tty read */ 58 #define SIGTTOU 22 /*! like TTIN for output if (tp->t_local<OSTOP) */ 59 #define SIGIO 23 /*! input/output possible signal */ 60 #define SIGPOLL SIGIO /*! System V name for SIGIO */ 61 #define SIGXCPU 24 /*! exceeded CPU time limit */ 62 #define SIGXFSZ 25 /*! exceeded file size limit */ 63 #define SIGVTALRM 26 /*! virtual time alarm */ 64 #define SIGPROF 27 /*! profiling time alarm */ 65 #define SIGWINCH 28 /*! window changed */ 66 #define SIGLOST 29 /*! resource lost (eg, record-lock lost) */ 67 #define SIGUSR1 30 /*! user defined signal 1 */ 68 #define SIGUSR2 31 /*! user defined signal 2 */ 69 #define SIG_NR 32 /*! signal 0 implied */ 70 70 71 71 #define SIG_DEFAULT_MASK 0xFFEEFFFF … … 81 81 82 82 /******************************************************************************************* 83 * This structure ... 83 * This structure ... TODO 84 84 ******************************************************************************************/ 85 85 … … 104 104 105 105 /******************************************************************************************* 106 * This structure ... 106 * This structure ... TODO 107 107 ******************************************************************************************/ 108 108 … … 122 122 123 123 /******************************************************************************************* 124 * This structure TODO124 * This structure ... TODO 125 125 ******************************************************************************************/ 126 126 … … 132 132 sig_mgr_t; 133 133 134 135 134 /******************************************************************************************* 136 * This function TODO 137 ******************************************************************************************/ 138 int sys_signal ( uint32_t sig, 139 sa_handler_t * handler ); 140 141 /******************************************************************************************* 142 * This function TODO 135 * This function ... TODO 143 136 ******************************************************************************************/ 144 137 int sys_sigreturn_setup( void * sigreturn_func ); 145 138 146 /*******************************************************************************************147 * This function register the signal <sig> in the bit_vector of all threads of a given148 * process identified by its <pid>, in all clusters containing threads for this process.149 * It can be executed by any thread running in any cluster, as this function uses150 * remote access to traverse the list of process copies, and the RPC_RISE_SIGNAL151 * to deliver the signal to all involved clusters.152 * The list of process copies is rooted in the owner cluster.153 ******************************************************************************************/154 int sys_kill( pid_t pid,155 uint32_t sig );156 139 157 140 /******************************************************************************************* 158 * This function TODO141 * This function ... TODO 159 142 ******************************************************************************************/ 160 error_tsignal_manager_init( struct process_s * process );143 void signal_manager_init( struct process_s * process ); 161 144 162 145 /******************************************************************************************* … … 165 148 * It must be executed by a thread running in the same cluster as the target threads 166 149 * (can be a local thread or a RPC thread). 150 ******************************************************************************************* 151 * @ process : local pointer on local target process. 152 * @ sig_id : signal type. 167 153 ******************************************************************************************/ 168 error_tsignal_rise( struct process_s * process,169 uint32_t sig);154 void signal_rise( struct process_s * process, 155 uint32_t sig_id ); 170 156 171 157 /*******************************************************************************************
Note: See TracChangeset
for help on using the changeset viewer.