프로세스 관리 및 제어
안녕하세요^ㅅ^ bannavi입니다
오늘은 쉘로 시작하는 시스템 기본 프로그래밍 기본 여섯번째 시간으로,
지난 시간에 이어 foreground process제어하기를 살펴볼거에요
바로 시작하겠습니다
foreground process 제어하기
1) [CTRL] + z: foreground 프로세스를 실행 중지 상태(suspend모드)로 변경
2) 맨 마지막 [CTRL] +z로 중지된 프로세스는 bg명령으로 background프로세스로 실행될 수 있음
3) jobs 명령어: 백그라운드로 진행 또는 중지된 상태로 있는 프로세스를 보여줌
ctrl + z 실행중단
bg를 입력하면 가장 최근에 stop된 작업을 실행할 수 있다.
그리고 특정 순서의 job을 실행시키려면 한칸 띄고 숫자를 넣으면 된다.
프로세스를 완전히 종료시키는 방법도 있습니다
[CTRL] + c: 프로세스 작업 취소(해당 프로세스는 완전히 종료됩니다.)
아 컨트롤 씨는 해당 프로세스를 죽이는구나!
-> 운영체제 소프트웨어 인터럽트가 해당 프로세스에 보내집니다. 그래서 프로세스 제어가 가능한거구요
jobs로도 넘어가지 않음.
프로세스 상태 확인 - ps 명령어
- 사용법 : ps [option(s)]
- option(s)
- 데몬 프로세스(daemon process): daemon은 악마를 의미함. 사용자 모르게 시스템 관리를 위해 실행되는 프로세스로 보통 시스템이 부팅될 때 자동실행(예: ftpd, inetd 등)
ps는 자기가 실행한 프로세스만 보여준다
프로세스 상태 확인 - ps 명령어
- 주요 ps 출력 정보 항목
프로세스 중지시키기
# kill 명령어
- 사용법
a. kill % 작업 번호(job number)
b. kill 프로세스 ID(pid)
c. 작업 강제 종료 옵션 -9
예)
kill을 하면 프로세스를 강제로 죽일거고 맨 마지막엔 멈출 프로세스의 pid