| 검색 | ?
대문 / 프로그래밍 / 죽어도 죽지 않는 프로세스를 위한 launcher 만들기

죽어도 죽지 않는 프로세스를 위한 launcher 만들기

1.1. 개요

Posix 계열 OS는 대부분 fork() 함수를 통해서 Process를 복제할 수 있습니다. 이것을 응용하여 내가 만들었거나 남이 만든 불안정한 프로그램을 비정상 종료되어도 다시 띄워주는 죽지 않는 프로세스를 만들어 볼 수 있습니다. 보통 launcher라고 불리우기도 하는데요. 특정 조건의 프로세스를 감시하면서 조건이 발생하면 다시 띄워주거나 특정한 행동을 하도록 할 수 있는 기법이기도 합니다. 여기서는 이러한 launcher를 어떻게 만들고 응용할지 고민해보고자 예제를 만들어 봤습니다.

fork, waitpid, signal 함수를 어떻게 조합하여 내가 원하는 무적의 프로세스를 만들까 한번쯤 고민해보면 좋겠죠.

물론 비정상 종료 상황은 언젠가는 해결해야 하겠지만 그것을 해결할만한 충분한 시간이 주어지지 않는다면 이것을 먼저 고려할 필요가 있습니다. 단, 장치드라이버에 의한 문제는 좀더 복잡한 상황악화를 만들 수 있어서 또 다른 고민이 필요하기도 합니다.

1.2. 예제소스 다운로드

1.3. 소스




Copyright ⓒ MINZKN.COM
All Rights Reserved.