Kill 명령에 관해서 질문, sun, linux...

uamyd5279의 이미지

ㅤㅎㅜㅂ....다들 바쁘시겠지만...저는 일의 양이 많은 것도 아닌데, 엄청 바쁘네요..학생때 넘 논 것 같아서....공부를 하지 않은 댓가를 치루는 것이려니 해도..좀 벅차네요..ㅜ.ㅡ

각설하고...이번에도 방금전 넋두리와 비슷한 맥락에서...

kill명령어에 관한 질문입니다.#kill -9 pid위에서 처럼 직접 command line에서 kill을 처리하는 것과 다음과 같이

int main{
...
 kill( pid, SIGTERM );
...
}
소스 내에서 kill을 수행하는 것
차이가 많은가요? 생각해 보면...같을 것이라고 생각은 하지만...
수행하면 /proc/밑에 특정 프로세스를 죽이는 프로그램을 짰는데, 때때로 죽지 않는것이 있어서요. kill -9하면 ...죽습니다만...

이번에도 kldp고수님들의 조언 부탁 드리겠습니다.
더운 여름...이지만 에어컨 바람이 너무 세서 춥네요. ㅡ.ㅡ;;; 냉방병 조심하세요~

plodder의 이미지

프로그램에 SIGINT/SIGTERM을 무시 하도록 시그널처리를 하고 있는 경우로 보입니다.

import signal

def signalHandler(num, f) :
    print("signal disregard !!!")

signal.signal(signal.SIGTERM, signalHandler)

대충 이런식으로...

자세한 내용은 signal 함수를 참고하세요 ^^

익명 사용자의 이미지

SIGKILL , SIGSTOP을 제외한 모든 시그널에 대해, 사용자가 이를 무시하거나, 제어하도록(시그널 핸들러를 달아서리...) 프로그램을 작성할 수 있습니다.

ssehoony의 이미지

uamyd5279 wrote:
ㅤㅎㅜㅂ....다들 바쁘시겠지만...저는 일의 양이 많은 것도 아닌데, 엄청 바쁘네요..학생때 넘 논 것 같아서....공부를 하지 않은 댓가를 치루는 것이려니 해도..좀 벅차네요..ㅜ.ㅡ

각설하고...이번에도 방금전 넋두리와 비슷한 맥락에서...

kill명령어에 관한 질문입니다.#kill -9 pid위에서 처럼 직접 command line에서 kill을 처리하는 것과 다음과 같이

int main{
...
 kill( pid, SIGTERM );
...
}
소스 내에서 kill을 수행하는 것
차이가 많은가요? 생각해 보면...같을 것이라고 생각은 하지만...
수행하면 /proc/밑에 특정 프로세스를 죽이는 프로그램을 짰는데, 때때로 죽지 않는것이 있어서요. kill -9하면 ...죽습니다만...

이번에도 kldp고수님들의 조언 부탁 드리겠습니다.
더운 여름...이지만 에어컨 바람이 너무 세서 춥네요. ㅡ.ㅡ;;; 냉방병 조심하세요~

네 위 내용은 서로 다릅니다.

그냥 kill 명령은
kill pid == kill( pid, SIGTERM );

-9 옵션을 준 kill 명령은
kill -9 pid == kill( pid, SIGKILL );

다르죠?

hey의 이미지

SIGTERM은 해당 프로그램에 종료 신호를 줘서 알아서 종료하게끔 하는 것입니다.
SIGKILL은 프로그램에서 재정의가 불가능하구요.


----------------------------
May the F/OSS be with you..