DevOps BootCamp/Linux

프로세스 관리

cloudmaster 2023. 3. 13. 10:31

멀티 프로세스 : 애플리케이션 단위의 멀티 태스킹

멀리 스레드 : 애플리케이션 내부의 멀티 태스킹

● 프로세스 실행 방식

포그라운드 : 터미널에서 작업할 때, 일반적으로 사용자가 명령을 입력하면 이를 해석하여 실행하고 결과를 화면에 출력

백그라운드 : 프로세스가 실행되는 동안 뒤에서 다른 프로세스가 실행, 터미널에서 여러 개의 프로세스를 동시에 실행

  -명령어 : 멍령어 뒤에 &을 붙임, 터이널 세션 종료될 때 같이 프로그램 종료.

  - 앞에 nohup 명령어 쓰면 터미널 세션 종료되도 작업 종료될 때까지 프로세스 실행

 

★ 프로세스 목록 확인

 - ps : 현재 실행 중인 프로세스 목록 확인

  ● PID : 프로세스 번호

  ● TTY : 프로세스 실행된 터미널의 종류와 번호

  ● TIME : 프로세스 실행 시간

  ● CMD : 실행되고 있는 프로그램의 이름

 

- 옵션

UNIX 방식

 ps -e : 실행 중인 프로세스의 모든 정보를 출력

 ps -f : 프로세스의 자세한 정보 출력

 ps -u uid : uid로 특정한 사용자에 대한 모든 프로세스의 정보 출력

 ps -p pid :  pid로 지정한 프로세스 정보 출력

 

BSD 방식

 ps a : 터미널에서 실행한 프로세스의 정보 출력

 ps u : 프로세스 소유자의 이름, CPU 사용량, 메모리 사용량 등 상세 정보를 출력

 ps x : 시스템에서 실행 중인 모든 프로세스의 정보를 출력

  - RSS : 사용하고 있는 물리적 메모리 크기(kb)

  - VSZ : 사용하고 있는 가상 메모리 크기(kb)

 

pstree 명령어

 컴퓨터의 전체 프로세스를 구조화하여 확인하고 싶을 때.

 

kill 명령어

 - 시그널 : Ctrl + c 키를 눌렀을 때, 프로그램을 종료하기 이벤트가 발생 > 이벤트를 프로세스에 알려주기 위해서 사용하는 것

 - 특정 프로세스에 작업 중지, 실행 종료, 대기, 재시작, 강제 종료 등의 시그널을 전달하기 위해서 kill 명령을 사용

 - kill -l 명령어 사용 시, 시그널의 종류 확인 가능

 

시그널 종류

 - 1. SIGHUP : 재시작

 - 2. SIGINT : 실행 중지, Ctrl + c 

 - 3. SIGKILL : 프로세스 강제종료

 - 4. SIGTERM : 프로세스 정상종료

 - 5. SIGCONT : 정지된 프로세스 실행

 - 6. SIGSTOP : 터미널에서 입력되는 정지 시그널

 - 7. SIGTSTP : 실행 정지 후 재실행 대기, Ctrl + z

kill -시그널번호(시그널명) %작업번호
kill -시그널번호(시그널명) PID

 

jobs 명령어

 - 백그라운드에서 수행 중인 프로세스는 jobs 명령으로 확인

- [1], [2] 작업 번호,

- + 현재 처리되고 있는 프로세스,

- - 다음에 작업할 프로세스

- fg %작업번호 명령을 사용하여 포그라운드로 전환

 

 

'DevOps BootCamp > Linux' 카테고리의 다른 글

시스템 모니터링  (0) 2023.03.14
서비스 관리  (0) 2023.03.13
관리자로서의 리눅스  (0) 2023.03.10
출력 관련 명령어  (0) 2023.03.10
우분투 CLI 명령어  (0) 2023.03.09