signal.h
Go to the documentation of this file.00001 00045 #ifndef KERN_SIGNAL_H 00046 #define KERN_SIGNAL_H 00047 00048 #include <cfg/compiler.h> 00049 #include <cfg/macros.h> // BV() 00050 00051 /* Fwd decl */ 00052 struct Process; 00053 00054 /* Inter-process Communication services */ 00055 sigmask_t sig_check(sigmask_t sigs); 00056 void sig_send(struct Process *proc, sigmask_t sig); 00057 void sig_post(struct Process *proc, sigmask_t sig); 00058 /* 00059 * XXX: this is provided for backword compatibility, consider to make this 00060 * deprecated for the future. 00061 */ 00062 INLINE void sig_signal(struct Process *proc, sigmask_t sig) 00063 { 00064 sig_post(proc, sig); 00065 } 00066 sigmask_t sig_wait(sigmask_t sigs); 00067 sigmask_t sig_waitTimeout(sigmask_t sigs, ticks_t timeout); 00068 00069 int signal_testRun(void); 00070 int signal_testSetup(void); 00071 int signal_testTearDown(void); 00072 00077 #define SIG_USER0 BV(0) 00078 #define SIG_USER1 BV(1) 00079 #define SIG_USER2 BV(2) 00080 #define SIG_USER3 BV(3) 00081 #define SIG_TIMEOUT BV(4) 00082 #define SIG_SYSTEM5 BV(5) 00083 #define SIG_SYSTEM6 BV(6) 00084 #define SIG_SINGLE BV(7) 00085 /*\}*/ 00086 00087 #endif /* KERN_SIGNAL_H */
