리눅스 소켓 등의 IO 시그널 sigio 처리

IO 시그널 처리 


소켓, uart등의 io 시그널 처리방법은 아래와 같다. 


#include <sys/signal.h>

void sigio_handler(int status)
{

}


struct sigaction saio;
saio.sa_handler = sigio_handler;
sigemptyset(&saio.sa_mask);
saio.sa_flags = 0;
saio.sa_restorer = NULL;
sigaction(SIGIO,&saio,NULL);


1. 위 코드를 사용하여 IO 시그널이 발생할 때 호출될 함수를 등록한다.

2. IO 시그널이 발생하여 핸들러 함수가 호출되면 이벤트를 처리한다.


Note: sigio처리는 thread가 아는 process에서 처리하도록 하자.


[관련 포스트]

리눅스 Ctrl+C 및 종료 시그널 처리

댓글

이 블로그의 인기 게시물

간단한 cfar 알고리즘에 대해

uwb radar 호흡수 측정 방법 예제 코드

임베디드 리눅스 Starting Kernel 로그 출력 후 멈춤 현상이 있을때

Keras 모델 가중치 weights 파라미터 가져오기 설정하기 저장하기 및 불러오기

바로 프로젝트 적용 가능한 FIR Filter (low/high/band pass filter )를 c나 python으로 만들기