같은 이름으로 3개 떠 있는 worker_loop 워커 중, 가장 오래 실행된 하나만 정리하고 그 PID 를 기록합니다.
worker_loop 를 새로 실행하지 마세요.
1. worker_loop 프로세스 중 시작 시각이 가장 이른 것을 종료하세요.
2. 나머지 worker_loop 2개는 계속 실행 상태로 두세요.
3. 종료한 PID 숫자 하나를 /home/exercise/proc3/terminated.pid 파일에 기록하세요.
같은 이름으로 3개 떠 있는 worker_loop 워커 중, 가장 오래 실행된 하나만 정리하고 그 PID 를 기록합니다.
worker_loop 를 새로 실행하지 마세요.
1. worker_loop 프로세스 중 시작 시각이 가장 이른 것을 종료하세요.
2. 나머지 worker_loop 2개는 계속 실행 상태로 두세요.
3. 종료한 PID 숫자 하나를 /home/exercise/proc3/terminated.pid 파일에 기록하세요.
같은 이름의 배치 워커를 여러 개 띄워 두는 서버에서, 오래 실행된 워커 하나가 메모리 누수로 점점 느려지는 일이 생깁니다. 이때 관리자는 서비스 전체를 내리지 않고 문제가 된 워커 하나만 골라 정리한 뒤, 어떤 PID를 종료했는지 장애 기록에 남깁니다.
리눅스에서 프로세스는 실행 파일 이름이 같아도 각자 고유한 PID와 시작 시각을 가진 별개의 실행 단위입니다. ps는 프로세스의 시작 시각 같은 상태 정보를 보여 주고, pgrep은 이름 조건으로 PID를 찾아 주며, kill은 특정 PID에 시그널을 보내 종료를 요청하는 도구입니다.
흔한 오해는 PID 숫자가 가장 작으면 가장 오래된 프로세스라고 보는 것인데, PID는 한계값에 이르면 다시 작은 번호부터 재사용되므로 실제 시작 시각으로 판단해야 하고, 이름이 같은 프로세스를 모두 끝내는 pkill·killall과 PID 하나만 지정하는 kill도 구분해야 합니다. 이런 선별적 프로세스 제어는 LPIC-1의 프로세스 생성·모니터링·종료 영역에서 다루며, 운영 서버를 맡는 시스템 관리자에게 기본으로 요구되는 역량입니다.