kill -9의 단점 이라는 문제를 풀고 있는데요. 해석을 못해서^^;;
글쓴이: bigblues / 작성시간: 화, 2010/03/16 - 7:17오후
What is the disadvantage of using the command kill -9?
kill -9를 사용했을때 단점은?
The affected process is unable to clean up before exiting. 답이 이건데요. 영어를 모르는건 아닌데..
이해가 안가내요.
'kill -9에 의해서 영향을 받은 프로세스는' 하고 이후에 무엇을 의미하는지 모르겠어요.
영향을 받기전에 프로세스를 정상 종료하지 못한다는 의미인것 같기도 한데;;;
의미 좀 알려주세요^^
Forums:
다른 프로세스에
다른 프로세스에 시그널을 보내면 그 프로세스는 해당 시그널을 가로채 정해진 작업을 처리하거나 아니면 미리 정해진 시그널 액션을 수행합니다. 하지만 9번 시그널(SIGKILL)은 프로그램에서 시그널 액션을 바꿀 수가 없습니다. 즉, 해당 시그널을 받으면 그 프로세스는 곧바로 “죽음” 뿐인거죠.
만약 다른 시그널을 받는다면 해당 시그널을 가로채 정해진 일을 수행 후 프로그램을 끝낼 수가 있는데 9번 시그널은 그렇지 않습니다.
signal의 맨페이지를 보면 다음과 같이 나옵니다.
윈도우에 빗대어
윈도우에 빗대어 생각해보면, kill은 ALT+F4(WM_QUIT, WM_CLOSE ...), kill -9는 작업관리자에서 프로세스 종료를 선택하는 것과 같다고 보면 될까요?
-9 (SIGKILL) 을
-9 (SIGKILL) 을 프로세스가 받게 되면 반드시 종료를 하게 됩니다.
말 그대로 강제 종료 이다보니 종료하기전 프로세스가 종료처리를 할 기회가 없게 되죠. 예를 들어 임시파일 삭제 같은 작업 말이죠.
-15 (SIGTERM) 와 비교하면 후자는 시그널 핸들러를 바꿀 수가 있어서(그래서 종료가 안되는 경우도 있죠.) 종료 하기전에 프로세스가 종료 처리를 할 수 기회가 있는데 반해
-9 는 OS 에서 강제 종료 시키기 그럴 기회가 없다는 말 입니다.
댓글 달기