kill 명령어를 이용해서 프로세스가 죽게되었을때...
사용하던 임시 파일을 삭제를 하고 죽고 싶은데요.
SIGTERM 시그널이 와서 죽을때는 문제가 없지만,
SIGKILL 시그널이 와서 죽을때는 signal을 잡을 수가 없으니,
임시 파일을 남겨놓고 죽어야 되네요. ㅠ.ㅠ
SIGKILL이 왔을때도 뭔가 남은 처리를 하고 죽는 방법은 없는건가요?
네 방법 없습니다. 몇몇 시그널은 유저 프로세스가 잡을수 없도록 되어 있습니다. preemptive OS 입장에서는 당연히 필요한 것이죠.
헌데 임시 파일의 어떤 면 때문에 그런건지 다른 방식으로 생각해 보는게 좋을것 같네요. --------- 간디가 말한 우리를 파괴시키는 7가지 요소
첫째, 노동 없는 부(富)/둘째, 양심 없는 쾌락 셋째, 인격 없는 지! 식/넷째, 윤리 없는 비지니스
이익추구를 위해서라면..
다섯째, 인성(人性)없는 과학 여섯째, 희생 없는 종교/일곱째, 신념 없는 정치
--------- 간디가 말한 우리를 파괴시키는 7가지 요소
프로세스에서 임시 파일을 만든 뒤 그 파일을 열고, fd를 닫지 않은 채 삭제를 하게 되면 표면상 파일은 삭제되지만 내용은 계속 읽고 쓸 수 있습니다. fd가 닫혀야 비로소 파일에 접근이 불가능 하게 되니까, 프로세스가 죽으면 자동적으로 fd가 닫히고 질문하신분이 의도한 상황과 비슷한 결과가 나오지 않을까 싶네요.
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
네 방법 없습니다.
네 방법 없습니다. 몇몇 시그널은 유저 프로세스가 잡을수 없도록 되어 있습니다.
preemptive OS 입장에서는 당연히 필요한 것이죠.
헌데 임시 파일의 어떤 면 때문에 그런건지 다른 방식으로 생각해 보는게 좋을것
같네요.
---------
간디가 말한 우리를 파괴시키는 7가지 요소
첫째, 노동 없는 부(富)/둘째, 양심 없는 쾌락
셋째, 인격 없는 지! 식/넷째, 윤리 없는 비지니스
이익추구를 위해서라면..
다섯째, 인성(人性)없는 과학
여섯째, 희생 없는 종교/일곱째, 신념 없는 정치
---------
간디가 말한 우리를 파괴시키는 7가지 요소
첫째, 노동 없는 부(富)/둘째, 양심 없는 쾌락
셋째, 인격 없는 지! 식/넷째, 윤리 없는 비지니스
이익추구를 위해서라면..
다섯째, 인성(人性)없는 과학
여섯째, 희생 없는 종교/일곱째, 신념 없는 정치
대충 생각나는 꽁수를 적어보자면.........
프로세스에서 임시 파일을 만든 뒤 그 파일을 열고, fd를 닫지 않은 채 삭제를 하게 되면 표면상 파일은 삭제되지만 내용은 계속 읽고 쓸 수 있습니다. fd가 닫혀야 비로소 파일에 접근이 불가능 하게 되니까, 프로세스가 죽으면 자동적으로 fd가 닫히고 질문하신분이 의도한 상황과 비슷한 결과가 나오지 않을까 싶네요.
댓글 달기