Thursday, April 23, 2015

Using Signal in Embedded Linux

@ Send Signals
  : kill() 함수를 이용하여 특정 프로세스에게 원하는 신호를 전달
  : kill_proc() 함수를 이용하면 Kernel -> User 특정 프로세스로 신호 전달도 가능

@ Handle Signal
  : signal() 함수를 이용하여 특정 신호에 대하여 처리할 핸들러를 등록

@ Example
# ./signal &
# ./kill [signal_process_id]
Invoked signal_handler...

/*
 * kill.c
 */
#include <sys/types.h>
#include <signal.h>

main(int argc, char** argv)
{
kill(atoi(argv[1]), SIGINT);
}

/*
 * signal.c
 */
#include <signal.h>

void signal_handler(int signum)
{
printf("Invoked signal_handler... \n");
}

main()
{
signal(SIGINT, signal_handler);

while(1);
}

No comments:

Post a Comment