프로세스 및 작업 제어 (Processes and Job Control)
Linux 가 프로그램을 프로세스로 실행하는 방식, 프로세스를 검사하는 방법, 그리고 포그라운드 (foreground) 및 백그라운드 (background) 작업, 시그널 (signals), 프로세스 우선순위를 관리하는 방법을 배웁니다. 이 과정에서는 시스템에서 무엇이 실행되고 있는지 파악하고, 작업이 멈추거나 오작동하거나 리소스를 과도하게 점유할 때 어떻게 대응해야 하는지에 대한 운영 기술을 다룹니다.
왜 중요한가요?
프로세스는 Linux 시스템을 움직이는 핵심 요소입니다. 서비스, 셸, 스크립트, 사용자 애플리케이션 모두 프로세스로 실행되며, 운영상의 문제는 대부분 적절한 프로세스를 식별하고 상태를 확인한 뒤 올바른 조치를 취하는 과정에서 해결됩니다. 프로세스에 대한 이해는 문제 해결, 시스템 모니터링, 일상적인 운영 지원을 위해 필수적입니다.
학습 내용
- 실행 중인 프로세스를 검사하고 일반적인 프로세스 세부 정보의 의미를 이해합니다.
top과 같은 도구를 사용하여 활성 워크로드를 실시간으로 모니터링합니다.- 대화형 셸 세션에서 작업을 포그라운드와 백그라운드 사이로 전환합니다.
- 상황에 맞는 적절한 강도로 프로세스를 중지하거나 종료합니다.
nice와renice를 사용하여 스케줄링 우선순위를 조정합니다.- 이러한 기술을 활용하여 실제와 유사한 환경에서 폭주하는 프로세스 (runaway process) 문제를 해결합니다.
과정 로드맵
이 과정은 프로세스 검사부터 시작하여 현재 실행 중인 항목과 Linux 가 활성 프로그램을 어떻게 표현하는지 살펴봅니다. 이후 실시간 모니터링 단계로 넘어가 top과 같은 도구를 통해 CPU 나 메모리 사용량이 급증하는 상황을 포착하는 방법을 배웁니다.
다음으로, 포그라운드 및 백그라운드 작업을 도입하여 매번 새로운 터미널을 열지 않고도 대화형 명령을 관리하는 방법을 익힙니다. 그 후, 시스템이 응답하지 않을 때 무작정 대응하는 대신 프로세스를 의도적으로 중지하고, 시그널을 보내고, 종료하는 방법을 배웁니다.
마지막 실습 주제는 프로세스 우선순위와 nice 및 renice가 스케줄링 동작에 미치는 영향입니다. 과정의 마지막에는 '폭주하는 프로세스 완화 (Runaway Process Mitigation)' 챌린지가 준비되어 있으며, 실제 운영 환경에서처럼 문제 있는 워크로드를 조사하고 제어하는 실습을 진행합니다.
수강 대상
이 과정은 실행 중인 워크로드를 이해하고, 멈추거나 리소스를 과도하게 사용하는 프로세스에 자신 있게 대응하고자 하는 Linux 학습자, 주니어 시스템 관리자, DevOps 입문자를 위한 과정입니다.
학습 성과
이 과정을 마치면 활성 프로세스를 검사하고, 시스템 활동을 실시간으로 모니터링하며, 셸 내에서 작업을 관리하고, 일반적인 운영 문제에 대해 적절한 프로세스 제어 조치를 선택할 수 있게 됩니다.




