Nov
28
fork() -> execl() 로 만든 자식 프로세스가 가끔씩 알수없는 이유로 동작이 정지되는 경우가 있다.
kill 시그널을 주거나 혹은 잘못된 명령을 전달했을때, 이를 처리하는 루틴이 없을 경우 이와 같은 현상이 발생한다.
ps -eal | grep ‘해당 프로세스 네임’
명령어를 입력하면 “defunct”이라는 상태 표시가 나온다.
이와 같은 ‘defunct’ 상태를 가진 프로세스를 ‘좀비 프로세스’라고 한다.
죽은 것도 아니요, 산것도 아닌 이런 프로세스는 사용자가 직접 죽여줘야 한다.
하는 일도 없으면서 괜히 메모리를 잡아먹고 있는 이 프로세스를 삭제하는 마법의 주문은 다음과 같다.
$ kill -9 PID
이제 마법의 주문을 외워보자. : )