프로세스 관리

Developer/Linux 2019. 5. 31. 00:02 Posted by JAKE_SLEEPY

프로세스는 현재 메모리에 로드되어 있는 프로그램이다.

 

 

 

EDA 툴을 돌릴때 제대로 동작하지 않는 경우가 생기는데, ctrl+z로 해당 프로세스에서 빠져나가는 경우 

 

그 프로세스가 메모리에 계속 로드되어 있는 경우가 있다.

 

 

 

 

나는 보통 ps u 명령을 통해 내가 사용중인 프로세스 목록을 확인한다.

 

프로세스에 대한 여러가지 정보를 볼 수 있다.

 

그리고 kill -9 PID 명령을 통해 죽이고 싶은 프로세스의 ID(PID)를 입력하여 프로세스를 죽인다.

 

추가적으로, killall 명령은 PID 번호가 아닌 이름으로 프로세스를 중지시키는 방법이다.

 

killall make*

 

ctrl+z로 해당 프로세스에서 빠져나간 후 kill %를 하면 바로 이전의 프로세스를 죽일 수 있다.

 

 

 

 

프로세스를 죽였는데 defunct라고 적힌 것들이 보이는데 이를 좀비 프로세스라고 부른다.

 

 

프로세스의 실행이 종료되었지만 아직 정리되지 않은 프로세스를 의미하며, 일번적으로 부모의 프로세스가 자신이 생성한 자식 프로세스를 정리해주어야 하는데, 프로그램 오류나 버그 때문에 부모 프로세스가 실행이 종료된 자식 프로세스를 제대로 정리하지 못해서 생긴다.

 

 

참고로 ps -help 명령을 이용하면 ps 명령에 관한 다양한 옵션들을 볼 수 있다.

 

 

 

 

ps 명령 말고도 프로세스를 모니터링 하는 top 명령어가 있다.

 

누가 내가 쓰는 머신에서 무슨 프로세스를 돌리고 어느 정도 리소스를 잡아먹고 있는지 체크할 수 있다.

 

이 프로그램은 1초에 한번씩 계속 정보를 갱신하면서 가장 프로세스를 많이 쓰는 순서로 리스트하여 보여준다.

 

종료하려면 q를 누르면 된다.

 

'Developer > Linux' 카테고리의 다른 글

파이프 그리고 리다이렉트  (0) 2019.06.01
링크 파일  (0) 2019.05.31
압축하고 풀기  (0) 2019.05.31
용량 체크  (0) 2019.05.31
리눅스 파일 및 내부 문자열 찾기  (0) 2019.05.30