01.리눅스 기초 - 프로세스(process)
🌈 프로세스(process)
🔥 프로세스란 무엇인가?
🔥 프로세스 모니터링
1. 프로세스란 무엇인가?
- process는 3가지(processor, memory, storage)로 요소로 이뤄져 있음
- processor는 CPU로 중앙처리 장치를 의미하고, memory는 RAM, storage는 HDD 또는 SSD로 생각하면 됨
- 프로그램은 storage 저장되어 있고, 이를 사용하면 프로그램이 memory에 올라오게됨.
- memoery에 필요한 프로그램이 적재되면 processor가 이를 처리하여 실행시킴
- 명령어(mkdir, top, rm 등)등은 storage(/bin 또는 /sbin)에 파일의 형태로 저장되어 있음. 이를 실행하면 momoery에 적재되어 cpu가 처리하는 것임
2. 프로세스 모니터링
- UNIX에서 프로세스 모니터링하는 프로그램은 대표적으로 "ps", "top", "htop" 등이 있음
1) ps
- 🔍 ps : 터미널에서 ps를 입력하면 현재 실행중인 프로그램들을 보여주고, 백그라운드에서 실행되는 프로그램까지 보고 싶다면 ps aux를 명령하면 됨
- 🔍 ps aux | gerp root ⇢ root라는 텍스트를 포함하고 있는 실행 중인 프로그램들 확인
- 🔍 sudo kill [PID번호] : 강제종료(kill)
2) htop
- 🔍 brew install htop : htop 설치 방법
- 🔍 htop : htop 실행
- RES : 물리적으로 사용하는 메모리 크기이며, 이를 퍼센트지로 변환한 것이 MEM임
- 프로그램 정렬 : cpu를 클릭하면 cpu를 기준으로 정렬, MEM을 클릭하면 memory를 기준으로 정렬
- TIME : 실행된 시간을 나타냄
- Command : 어떤 명령으로 실행이 되었는지 보여줌
- 아래 상태바처럼 표시되는 숫자는 코어의 갯수이고 현재 상용량을 나타냄
- MeM : Memory에서 16GB중 8.50GB를 사용 중
- Load average : 최근 1분, 5분, 15분 간 발생한 CPU에 평균적인 부하량(사용 중인 코어 갯수)을 나타냄