멀티 프로세스 : 애플리케이션 단위의 멀티 태스킹
멀리 스레드 : 애플리케이션 내부의 멀티 태스킹
● 프로세스 실행 방식
포그라운드 : 터미널에서 작업할 때, 일반적으로 사용자가 명령을 입력하면 이를 해석하여 실행하고 결과를 화면에 출력
백그라운드 : 프로세스가 실행되는 동안 뒤에서 다른 프로세스가 실행, 터미널에서 여러 개의 프로세스를 동시에 실행
-명령어 : 멍령어 뒤에 &을 붙임, 터이널 세션 종료될 때 같이 프로그램 종료.
- 앞에 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 |