SROP 개념 정리 void sig_handler(int signum){ printf("sig_handler called.\n"); exit(0); } int main(){ signal(SIGALRM,sig_handler); alarm(5); ~~ 이런 코드가 존재할 때, SIGALRM 시그널이 발생하면 커널 모드로 진입하여 sig_handler 함수를 실행한다. 이 때 시그널을 커널 모드에서 처리하고나서 다시 유저 모드로 돌아와 프로세스의 코드를 실행해야 하므로, 유저 모드의 상태를 모두 기억하고 되돌아올 수 있도록 한다. 현재 프로세스가 바뀌는 것을 컨텍스트 스위칭 (Context Switching) 이라고 하는데, 커널모드 - 유저모드 간 context 스위칭이 발생할 때의 상황을 커널에서 기억하고..