top(Table Of Process)
저번 포스팅에서는 개별 프로세스 조회 중점의 명령어인 ps에 관해서 알아 봤다.
이번에는 좀 더 구체적으로 어느 프로세스가 리소스의 어느 정도를 점유하며,
전체 프로세스를 실시간으로 확인할 수 있는 명령어인 top에 대해 알아보자
● 명령어 'top'의 활용방식
빨간색 실선 안의 정보들은 시스템의 가동시간, 평균 부하값(Load Average), 메모리의 상태 등의
자원에 관한 간략한 정보가 표기되어 있으며, 하단의 노란색 실선 안의 정보들은 프로세스들의 정보를
담고있는 것을 확인할 수 있다. 그림의 왼쪽부터 필드의 정보를 서술하면
- PID : 프로세스 ID
- USER : 프로세스의 소유자
- PR : 프로세스의 우선순위
- NI : 작업의 nice값
- VIRT : 프로세스가 사용중인 가상메모리 양
- RES : 물리적인(실제의) 메모리의 양
- SHR : 공유 메모리의 양
- S : 해당 프로세스의 상태 (Status)
- %CPU : CPU 사용량
- %MEM : 현재 사용중인 실제 메모리의 양
- TIME+ : 프로세스가 CPU를 사용한 시간
- COMMAND : 프로세스가 시작되는 데에 사용된 명령어
각각 의미하며,
콘솔창에 'top' 실행 시 사용되는 옵션으로는 'top -d [초(Sec)]'와 'top -b(배치모드)'가 있는데,
'-d' 옵션의 경우 top의 정보 갱신주기를 설정하는 옵션이고
배치모드로 프로세스의 흐름을 확인 하기에는 시인성이 좋지 않아 거의 사용되지 않는다고 한다.
굳이 옵션을 입력하지 않고도 'top' 화면에 진입하여 Space Bar, Enter 키를 입력하면
그때 그때 갱신되도록 설정되어 있다.
● 목록별 정렬
- Shift+p : CPU 사용량 기준 정렬
- Shift+t : CPU 사용 시간별 정렬
- Shift+m : 메모리 사용량 기준 정렬
- Shift+n : PID 기준 정렬
등의 명령어로 시인성 좋게 실행중인 프로세스를 확인할 수 있다.
● 사용자별 정렬
'Shift+u' 입력 후 'Which User (blank for all)' 입력창에 사용자의 ID를 입력하면
해당 사용자가 실행중인 프로세스를 확인할 수 있다.
● 프로세스 제어
가장 간단한 예시로 현재 실행중인 임의의 프로세스
'vim /etc/passwd' 종료를 시도, 해당 명령행에 PID(4622)를 입력하면
원하는 SIGNAL값을 입력하라는 명령행이 나온다. 여기서
SIGKILL 의 값인 숫자 9 입력 후 엔터를 치면 해당 프로세스가
강제로 종료되는 것을 확인할 수 있다.
'Linux_System' 카테고리의 다른 글
[Linux]ZFS (0) | 2023.01.16 |
---|---|
[Linux]PAM (0) | 2023.01.12 |
[Linux]Process(1)_ps (0) | 2022.11.05 |
[Linux]Software_Compile (0) | 2022.10.31 |
[Linux]YUM_LocalRepository (0) | 2022.10.26 |