🦇 Linux

[내가 보려고 쓴] 리눅스 프로세스 개념

ji-hyun 2021. 8. 29. 15:38

프로세스란?

 

리눅스는 한 번에 수백여개 이상의 프로그램을 저장하고 동시에 수행할 수 있다. 

 

보통 프로그램을 설치하면 하드디스크에 저장되고, 특정한 목적을 위해 프로그램을 실행하면 메모리에 상주하게 된다. 이렇듯 실행 중인 프로그램프로세스라 하고, 실행 시에 번호(Process Identity, PID) 가 할당되어 관리된다.

 

예를 들어 파워포인트가 프로그램이라고 한다면 더블 클릭 시 프로세스가 하나 생성이 된다. 그리고 또 더블 클릭하면 프로세스가 또 생성이 된다. 이처럼 실행 중인 프로그램을 프로세스라 하는 것이며, 모든 프로그램은 실행 될 때 하나 이상의 프로세스를 갖는다. 

 

 

프로세스는 크게 두 가지로 나눌 수 있는데, 백그라운드 프로세스포어그라운드 프로세스가 있다.

백그라운드 프로세스는 이름 그대로 뒤에서 실행되는 프로세스를 의미하며, 사용자와 직접적인 대화를 하진 않는다.

포어그라운드 프로세스란 사용자와 상호작용을 하는 프로세스이다.

 

 

 

 

 

 

 

ps

process status 의 줄임말이다.

 

아무 옵션 없이 'ps' 만 하면 자신의 터미널에서만 실행되고 있는 프로세스들의 관련 정보만 나타내며, 모든 유저를 출력하고 싶을 때는 'ps aux' 를 하면 된다. (ps -ef 명령과 같다.)

 

 

 

 

위 그림을 보면 ps -l 명령을 하여 NI 값을 볼 수 있는데 이는 nice 값을 의미한다.

nice 값이 높다는건 우선순위가 떨어진다는 것을 의미한다.

 

 

$ renice 10 1362

이 명령 줄에서는 프로세스ID 1362 인 것을 nice 값 10만큼 증가를 의미하며, 이는 우선순위를 낮추는 것을 의미한다.

명령 결과 NI 항목을 보면 0 -> 10 이며, PRI (priority) 항목은 80 -> 90 으로 된 것을 확인할 수 있다.

 

 

 

 

'🦇 Linux' 카테고리의 다른 글

리눅스 - ftp  (0) 2021.08.29
리눅스 - rpm, yum  (0) 2021.08.29
[내가 보려고 쓴] 리눅스 - du, df  (0) 2021.08.25
리눅스 - bashrc, bash_profile  (0) 2021.08.25
리눅스 - 셸, 환경변수, bash 셸  (0) 2021.08.24