Linux 신호 목록

6100 단어 C
우 리 는 리 눅 스 가 지원 하 는 신호 목록 을 볼 수 있 도록 다음 명령 을 실행 합 니 다.
$ kill -l
1) SIGHUP       2) SIGINT       3) SIGQUIT      4) SIGILL
 5) SIGTRAP      6) SIGABRT      7) SIGBUS       8) SIGFPE
 9) SIGKILL     10) SIGUSR1     11) SIGSEGV     12) SIGUSR2
13) SIGPIPE     14) SIGALRM     15) SIGTERM     17) SIGCHLD
18) SIGCONT     19) SIGSTOP     20) SIGTSTP     21) SIGTTIN
22) SIGTTOU     23) SIGURG      24) SIGXCPU     25) SIGXFSZ
26) SIGVTALRM   27) SIGPROF     28) SIGWINCH    29) SIGIO
30) SIGPWR      31) SIGSYS      34) SIGRTMIN    35) SIGRTMIN+1
36) SIGRTMIN+2  37) SIGRTMIN+3  38) SIGRTMIN+4  39) SIGRTMIN+5
40) SIGRTMIN+6  41) SIGRTMIN+7  42) SIGRTMIN+8  43) SIGRTMIN+9
44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13
48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13
52) SIGRTMAX-12 53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9
56) SIGRTMAX-8  57) SIGRTMAX-7  58) SIGRTMAX-6  59) SIGRTMAX-5
60) SIGRTMAX-4  61) SIGRTMAX-3  62) SIGRTMAX-2  63) SIGRTMAX-1
64) SIGRTMAX

목록 에서 번호 1 ~ 31 의 신 호 는 전통 적 인 UNIX 가 지원 하 는 신호 로 신뢰 할 수 없 는 신호 (비 실시 간) 이 고 번호 32 ~ 63 의 신 호 는 나중에 확 대 된 것 으로 신뢰 할 수 있 는 신호 (실시 간 신호) 라 고 부른다.신뢰 할 수 없 는 신호 와 신뢰 할 수 있 는 신호 의 차 이 는 전자 가 줄 을 서 는 것 을 지원 하지 않 고 신 호 를 잃 어 버 릴 수 있 으 며 후 자 는 그렇지 않다 는 것 이다.
다음은 SIGRTMIN 보다 번호 가 작은 신호 에 대해 논의 하 겠 습 니 다.
1) SIGHUP 이 신 호 는 사용자 단말기 연결 (정상 또는 비정 상) 이 끝 날 때 보 냅 니 다. 보통 터미널 의 제어 프로 세 스 가 끝 날 때 같은 session 내의 각 작업 을 알 립 니 다. 이 때 는 제어 단말기 와 더 이상 연결 되 지 않 습 니 다.
Linux 에 로그 인 할 때 시스템 은 로그 인 사용자 에 게 터미널 (Session) 을 할당 합 니 다.이 터미널 에서 실행 되 는 모든 프로그램 은 프론트 프로 세 스 그룹 과 백 엔 드 프로 세 스 그룹 을 포함 하여 일반적으로 이 세 션 에 속 합 니 다.사용자 가 Linux 로그 인 을 종료 할 때 프론트 데스크 톱 프로 세 스 그룹 과 배경 에 터미널 출력 프로 세 스 가 있 으 면 SIGHUP 신 호 를 받 습 니 다.이 신호 의 기본 동작 은 프로 세 스 를 종료 하 는 것 입 니 다. 따라서 프론트 프로 세 스 그룹 과 백 엔 드 에 터미널 출력 이 있 는 프로 세 스 가 중 단 됩 니 다.그러나 이 신 호 를 포착 할 수 있 습 니 다. 예 를 들 어 wget 은 SIGHUP 신 호 를 포착 하고 무시 할 수 있 습 니 다. 그러면 Linux 로그 인 을 종료 하 더 라 도 wget 은 계속 다운로드 할 수 있 습 니 다.
또한 터미널 과 관 계 를 끊 은 데 몬 에 대해 서 는 설정 파일 을 다시 읽 는 것 을 알 리 는 데 사 용 됩 니 다.
2) SIGINT 프로그램 종료 (interrupt) 신 호 는 사용자 가 INTR 문자 (보통 Ctrl - C) 를 입력 했 을 때 보 내 며 프론트 프로 세 스 그룹 에 프로 세 스 종 료 를 알 리 는 데 사 용 됩 니 다.
3) SIGQUIT 는 SIGINT 와 유사 하지만 QUIT 문자 (보통 Ctrl - /) 로 제어 합 니 다. 프로 세 스 는 SIGQUIT 가 종료 되 었 을 때 core 파일 이 발생 합 니 다. 이 의미 에서 프로그램 오류 신호 와 유사 합 니 다.
4) SIGILL 은 불법 명령 을 실 행 했 습 니 다. 보통 실행 가능 한 파일 자체 에 오류 가 발생 하거나 데이터 세그먼트 를 실행 하려 고 하기 때 문 입 니 다. 스 택 이 넘 칠 때 도 이 신호 가 발생 할 수 있 습 니 다.
5) SIGTRAP 는 정지점 명령 이나 다른 trap 명령 으로 만들어 집 니 다. debugger 에서 사용 합 니 다.
6) SIGABRT 는 abort 함수 로 생 성 된 신 호 를 호출 합 니 다.
7) SIGBUS 불법 주소, 메모리 주소 정렬 (alignment) 오류 포함.예 를 들 어 네 글자 길이 의 정 수 를 방문 하지만 주 소 는 4 의 배수 가 아니다.이 는 SIGSEGV 와 의 차이 점 은 후자 가 합 법 적 으로 주 소 를 저장 하 는 불법 방문 으로 인해 발생 한 것 이다 (예 를 들 어 방문 은 자신의 저장 공간 에 속 하지 않 거나 저장 공간 만 읽 기).
8) SIGFPE 는 치 명 적 인 산술 연산 오류 가 발생 했 을 때 보 냅 니 다. 부동 소수점 연산 오류 뿐만 아니 라 넘 침 및 나 누 기 0 등 모든 산술 오류 도 포함 합 니 다.
9) SIGKILL 은 프로그램의 실행 을 즉시 종료 하 는 데 사 용 됩 니 다. 이 신 호 는 차단, 처리, 무시 할 수 없습니다.관리자 가 어떤 프로 세 스 가 종료 되 지 않 는 다 는 것 을 발견 하면 이 신 호 를 보 내 려 고 시도 할 수 있 습 니 다.
10) SIGUSR 1 은 사용자 에 게 사용 하도록 남 겨 준다.
11) SIGSEGV 는 자신 에 게 할당 되 지 않 은 메모리 에 접근 하거나 쓰기 권한 이 없 는 메모리 주소 로 데 이 터 를 쓰 려 고 합 니 다.
12) SIGUSR 2 는 사용자 에 게 사용 하도록 남 겨 준다.
13) SIGPIPE 파이프 파열.이 신 호 는 보통 프로 세 스 간 통신 에서 발생 합 니 다. 예 를 들 어 FIFO (파이프) 통신 을 사용 하 는 두 프로 세 스 는 파 이 프 를 열지 않 거나 예상 치 못 하 게 종료 되면 파이프 에 쓰 고 프로 세 스 를 쓰 면 SIGPIPE 신 호 를 받 습 니 다.또한 Socket 으로 통신 하 는 두 프로 세 스 는 Socket 을 쓸 때 읽 기 프로 세 스 가 종료 되 었 습 니 다.
14) SIGALRM 시계 정시 신호 로 실제 시간 이나 시계 시간 을 계산 합 니 다. alarm 함 수 는 이 신 호 를 사용 합 니 다.
15) SIGTERM 프로그램 종료 (terminate) 신 호 는 SIGKILL 과 달리 이 신호 가 차단 되 고 처 리 될 수 있다.일반적으로 프로그램 이 정상적으로 종료 하도록 요구 하 는 데 사 용 됩 니 다. 셸 명령 kill 이 부족 하면 이 신 호 를 보 냅 니 다.프로 세 스 가 종료 되 지 않 으 면 SIGKILL 을 시도 할 수 있 습 니 다.
17) SIGCHLD 하위 프로 세 스 가 끝 날 때 부모 프로 세 스 가 이 신 호 를 받 습 니 다.
부모 프로 세 스 가 이 신 호 를 처리 하지 않 았 고 (wait) 하위 프로 세 스 를 기다 리 지 않 았 다 면 하위 프로 세 스 는 종료 되 었 지만 커 널 프로 세 스 표 에서 표 항목 을 차지 할 것 입 니 다. 이 때 하위 프로 세 스 는 좀 비 프로 세 스 라 고 합 니 다.이러한 상황 에서 우 리 는 (부모 프로 세 스 나 SIGCHILD 신 호 를 무시 하거나 포착 하거나 wait 에서 파생 된 하위 프로 세 스 나 부모 프로 세 스 가 먼저 종료 되 는 것 을 피해 야 합 니 다. 이때 하위 프로 세 스 의 종 료 는 init 프로 세 스 가 자동 으로 연결 합 니 다).
18) SIGCONT 은 정지 (stopped) 된 프로 세 스 를 계속 실행 시 킵 니 다. 이 신 호 는 차단 되 지 않 습 니 다. 프로그램 이 stopped 상태 에서 계속 실행 할 때 특정한 작업 을 수행 할 수 있 도록 handler 를 사용 할 수 있 습 니 다. 예 를 들 어 프롬프트 를 다시 표시 합 니 다.
19) SIGSTOP 는 프로 세 스 의 실행 을 중단 합 니 다. terminate 와 interrupt 의 차이 점 을 주의 하 십시오. 이 프로 세 스 는 아직 끝나 지 않 았 습 니 다. 실행 을 중단 할 뿐 입 니 다. 이 신 호 는 차단 되 거나 처리 되 거나 무시 할 수 없습니다.
20) SIGTSTP 는 프로 세 스 의 실행 을 중지 하지만, 이 신 호 는 처리 되 거나 무시 할 수 있 습 니 다. 사용자 가 SUSP 문 자 를 입력 했 을 때 (보통 Ctrl - Z) 이 신 호 를 보 냅 니 다.
21) SIGTIN 은 배경 작업 이 사용자 터미널 에서 데 이 터 를 읽 으 려 면 이 작업 의 모든 프로 세 스 가 SIGTIN 신 호 를 받 습 니 다. 부족 할 때 이 프로 세 스 는 실행 을 중단 합 니 다.
22) SIGTTOU 는 SIGTTIN 과 유사 하지만 터미널 (또는 터미널 모드 수정) 을 쓸 때 받 습 니 다.
23) SIGURG 는 "긴급" 데이터 나 out - of - band 데이터 가 socket 에 도 착 했 을 때 발생 합 니 다.
24) SIGXCPU 는 CPU 시간 자원 제한 을 초과 합 니 다. 이 제한 은 getrlimit / settrimit 에서 읽 거나 변경 할 수 있 습 니 다.
25) SIGXFSZ 는 프로 세 스 가 파일 크기 의 자원 제한 을 초과 할 때 파일 을 확대 하려 고 합 니 다.
26) SIGVTALRM 가상 시계 신호 입 니 다. SIGALRM 과 유사 하지만 이 프로 세 스 가 사용 하 는 CPU 시간 을 계산 합 니 다.
27) SIGROF 는 SIGALRM / SIGVTALRM 과 유사 하지만 이 프로 세 스 가 사용 하 는 CPU 시간 과 시스템 호출 시간 을 포함한다.
28) SIGWINCH 창 크기 가 바 뀌 었 을 때 보 냅 니 다.
29) SIGIO 파일 설명자 가 준비 되 어 있 으 며 입 출력 작업 을 시작 할 수 있 습 니 다.
30) SIGPWRPower failure
31) SIGSYS 의 불법 시스템 호출
위 에 열거 한 신호 에서 프로그램 이 캡 처 하거나 차단 하거나 무시 할 수 없 는 신 호 는 SIGKILL, SIGSTOP 가 기본 동작 으로 복구 할 수 없다 는 신 호 는 SIGIL, SIGTRAP 기본 값 으로 프로 세 스 를 유산 시 킬 수 있다 는 신호 가 있 습 니 다. SIGBRT, SIGBUS, SIGFPE, SIGIL, SIGIOT, SIGQUIT, SIGEGV, SIGTRAP, SIGXCPU, SIGXFSZ 기본 값 으로 프로 세 스 를 종료 시 킬 수 있 는 신 호 는 SIGALRM, SIGUP, SIGINT, SIGKILL, SIGIPE 입 니 다.SIGOLL, SIGPRO F, SIGSYS, SIGTERM, SIGSR 1, SIGSR 2, SIGVTALRM 기본 값 으로 프로 세 스 가 정지 되 는 신 호 는 SIGTOP, SIGTSTP, SIGTTIN, SIGTOU 기본 프로 세 스 가 무시 하 는 신 호 는 SIGCHLD, SIGGWR, SIGGRG, SIGWINCH 입 니 다.
또한 SIGIO 는 SVR 4 에서 탈퇴 하고 4.3BSD 에 서 는 무시 합 니 다.SIGCONT 는 프로 세 스 가 끊 겼 을 때 계속 합 니 다. 그렇지 않 으 면 무시 하고 막 힐 수 없습니다.

좋은 웹페이지 즐겨찾기