리눅스 시스템에서는 소프트웨어 인터럽트인 시그널을 제공합니다. 시그널은 비동기적인 이벤트를 발생시키는 방법을 제공합니다.
이번 장에서는 시그널의 종류와 시그널을 발생하는 방법 및 시그널 발생하였을 때 처리하는 방법에 대하여 다룰 것입니다.
다음은 이번 장에서 다룰 함수입니다.
#include <sys/types.h>
#include <signal.h>
#include <unistd.h>
#include <stdlib.h>
void (*signal(int signo, void (*sig_handler)(int)))(int);
int kill(pid_t pid, int signo);
int raise(int signo);
int sigemptyset(sigset_t *set);
int sigfillset(sigset_t *set);
int sigaddset(sigset_t *set,int signo);
int sigdelset(sigset_t *set,int signo);
int sigismember(const sigset_t *set, int signo);
int sigprocmask(int how, sigset_t *set, sigset_t oset);
int sigaction(int signo, struct sigaction *act, struct sigaction *oact);
int sigpending(sigset_t *set);
int sigsuspend(sigset_t *set);
int sigsetjmp(sigjmp_buf env, int smask);
void siglongjmp(sigjmp_buf env, int val);
void abort(void);
unsigned int alarm(unsigned int seconds);
int pause(void);
unsigned int sleep(unsigned int seconds);