이번 포스팅에서는 지난 포스팅에 이어서 시그널에 대해 알아보겠습니다! sigprocmask를 활용해서 프로그램 출력이 0.000 0.000, 1.000 1.000과 같은 수의 쌍이 되도록 코드를 작성해보겠습니다. 이번 예제에서 여러개의 신호를 다룰 예정입니다. 많은 신호를 다루기 위해서는 신호를 집합으로 표시하는 자료 형식이 필요합니다. 이때 우리는 sigset_t라는 자료형을 사용합니다. sigset_t을 이용해서 신호를 block, unblock, pending할 수 있습니다. 이러한 작업을 하기위해 다양한 함수가 있습니다. int sigfillset(sigset_t *set) : set에 리눅스에 있는 모든 시그널이 들어간다. (다루지 못하는 SIGSTOP,SIGKILL은 못들어간다.) int si..
지난 포스팅에서 시그널의 개념에 대해 알아보았습니다. 이번 시간에는 SIGNAL 관련 예제를 알아보겠습니다~ 1. 무한 루프 프로그램에게 시그널 보내기 #include #include #include int main(){ while(1){ printf("pid : %d \n",getpid()); sleep(1); } return 0; } 다음은 무한으로 자신의 PID를 출력하는 프로그램입니다. 프로그램을 실행시키고 시그널을 보내겠습니다! 이때 [PID]에는 출력되는 자신의 pid를 입력하시면 됩니다. (ex. 2601) SIGINT -> (1) Ctrl+C 누르기 (2) 터미널에 $kill -SIGINT [PID] SIGSTOP-> (1) Ctrl+Z 누르기 (2) 터미널에 $kill -SIGSTOP [..
- Total
- Today
- Yesterday
- 리눅스
- 혼공단 SQL
- googleapis
- 혼공
- 개발
- C++
- 혼공단 9기
- 개발일지
- 혼공단
- 운영체제
- 혼공학습단
- 백준
- Process
- 백엔드 개발
- JavaScript
- 스페인
- nodejs
- Linux
- AWS
- 프로젝트
- 공룡책
- JS
- 스페인 교환학생
- 교환학생
- MySQL
- Signal
- 자바스크립트
- SQL
- 해커톤
- 깃 예제
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |