시스템 프로그래밍[4-11]

Turtle·2024년 5월 19일
0
post-thumbnail

❓시그널

시그널(Signal)이란, 소프트웨어 인터럽트로 예기치 않은 사건이 발생했을 때 이 사건에 대한 메시지를 비동기적으로 보내는 것을 말합니다. 시그널을 받은 프로세스는 시그널에 따른 지정된 기본 동작을 수행할 수도 있고, 사용자 정의에 의한 처리 동작을 수행할 수도 있다.

❓시그널 목록

운영체제에는 기본적으로 정의된 시그널이 존재하는데 이 시그널 내역들을 확인하기 위해서 터미널에 kill -l을 입력하면 아래와 같이 확인할 수 있다.

❓주요 시그널 정리

시그널 번호시그널 이름발생 조건기본 처리
1SIGHUP터미널과 연결이 끊어졌을 때종료
2SIGINT인터럽트로 Ctrl + C 입력 시종료
3SIGQUITCtrl + W 입력 시코어 덤프
4SIGILL잘못된 하드웨어 명령 사용코어 덤프
5SIGTRAPtrace, breakpoint에서 TRAP 발생코어 덤프
6SIGABRTabort(비정상 종료)함수에 의해 발생코어 덤프
8SIGFPE0으로 나누기와 같은 심각한 산술 오류에 의해 발생코어 덤프
9SIGKILL강제 종료 시종료
10SIGBUS버스 오류 시코어 덤프
11SIGSEGV세그멘테이션 폴트 시(유효하지 않은 메모리 참조)코어 덤프
12SIGSYSsystem call을 잘못했을때코어 덤프
13SIGPIPE파이프 처리 잘못했을때코어 덤프
14SIGALRM알람에 의해 발생코어 덤프
16SIGUSR1사용자 정의 시그널1종료
17SIGUSR2사용자 정의 시그널2종료
18SIGCHLD자식 프로세스 상태가 변할 때무시
19SIGSTOP프로세스 정지 시그널종료
23SIGSTOPSIGCONT 시그널을 받을 때까지 프로세스가 중지됨중지
24SIGTSTPCtrl + Z 입력 시중지
25SIGCONT중지된 프로세스 실행 시무시
28SIGVTALRM가상 타이머 종료 시종료
29SIGIO비동기화 I/O이벤트 알림종료
30SIGPWR전원 고장종료

0개의 댓글