프로세스 하드디스크에 저장된 실행 코드가 메모리에 로딩되어 활성화된 것
프로세스, 프로그램
* 프로그램은 일반적으로 하드 디스크 등에 저장되어 있는 실행코드를 뜻함
* 프로세스는 프로그램을 구동하여 프로그램 자체와 프로그램의 상태가 메모리 상에서 실행되는 작업 단위를 지칭한다.
ex) 하나의 프로그램을 여러 번 구동하면 여러 개의 프로세스가 메모리 상에서 실행된다.
웹 브라우저인 프로그램인 chrome과 firefox는 하드디스크에 저장되어 있습니다.
이렇게 저장된 파일을 프로그램이라 부르고 웹 브라우저를 실행해서 화면에 나타난 상태를 프로세스라 부릅니다.
# 포그라운드 프로세스
포그라운드 프로세스는 웹브라우저(firefox)등과 같이 실행하면 화면에 나타나서 사용자와 상호작용을 하는 프로세스를 말합니다. 화면에서 실행되서 보이는 프로세스라고 생각하면 됩니다
# 백그라운드 프로세스
백그라운트 프로세스는 실행은 되었지만, 화면에는 보이지 않고 뒤에서 실행되는 프로세스를 말합니다
ex) 바이러스 백신 서버 데몬 등 눈에 보이지 않지만 실행되는 것
# 프로세스 번호
메모리에 로딩되어 활성화된 프로세스를 구분하려면 각각의 고유 번호가 필요합니다
이렇게 프로세스에 할당된 고유 번호를 프로세스 번호라 부릅니다. 프로세스 번호가 필요한 이유는 메모리에서 활성화된 프로세스를 메모리에서 강제로 제거하려면 프로세스 번호를 사용해야 하기 때문입니다
# 작업 번호
현재 실행되는 백그라운드 프로세스의 순차 번호를 의미합니다
# 부모프로세스, 자식프로세스
모든 프로세스는 혼자서 독립적으로 실행되는 것이 아니라 부모 프로세스의 하위에 종속되어 실행됩니다
ex) 웹브라우저인 Firefox 같은 경우 X윈도 프로세스가 구동된 상태에서 실행되어야 합니다
따라서 윈도는 Firefox의 부모 프로세스이며, Firefox는 X윈도의 자식 프로세스라고 부릅니다
-> 부모프로세스인 X윈도를 강제 종료하면 Firefox도 종료됩니다
프로세스 관련 명령어
ps
현재 프로세스의 상태를 확인하는 명령어
프로세스 번호 및 상태 확인할 때 ps -ef | grep 프로세스이름
pstree
부모 자식 프로세스 관계를 트리 형태로 보여줌
kill
프로세스 강제 종료하면 명령어 kill -9 프로세스번호 를 함께 사용하면 무조건 프로세스 종료
무한루프도는 프로세스를 강제 종료
사용법
# yes > /dev/null
명령어를 사용해서 무한 루프 프로세스 생성
새로운 터미널 창을 열고 #ps -ef | grep yes 이나 #ps -ef 명령어로 프로세스 yes의 PID를 확인
#kill -9 '프로세스번호' 를 눌러서 삭제
프로세스를 처음부터 백그라운드로 실행하는 방법
명령어 뒤에 & 를 붙인다
ex) gedit & 백그라운드로 실행됨
gedit 등은 별도의 창이 가동되어 실행하는 것이므로 백그라운드로 실행해도 아무 문제가 되지 않습니다
그러나 xz gzip 등 압축 프로그램으로 대용량의 압축 파일을 만들 때 시간이 오래 걸리므로 백그라운드 프로세스로 실행하면 유용합니다
'❌이전글 > 이전글' 카테고리의 다른 글
티스토리 기본 글자색 검정색으로 변경하기 (3) | 2019.05.06 |
---|---|
리눅스centos7 - 응급복구(2) GRUB 부트로더 (0) | 2019.05.02 |
윈도우 32비트와 64비트는 차이점 궁금하다 궁금해 (0) | 2019.05.02 |
리눅스centos7 -응급복구 비밀번호분실(1) (0) | 2019.04.30 |
리눅스 Centos7 - 파이프 필터 리다이렉션 (0) | 2019.04.28 |
사이트맵 주소가 k.kakao로 나올 때 (0) | 2019.04.28 |
리눅스CentOS7 - find 명령어 사용법 (0) | 2019.04.27 |
리눅스CentOS7 - 파일 압축 , 묶기 (0) | 2019.04.27 |