Process 관리

process는 흔히 실행중인 프로그램을 뜻한다. file과는 다른 의미이다. file은 디스크 상에 존재하며 수동적이다.
process는 메모리에 있거나 cpu가 실행하는 상태를 의미한다

ps - 프로세스 상태 보기

F S UID        PID  PPID  C STIME  TTY          TIME  CMD
4 S    0       3971  3967   0  10:17   pts/3      00:00:00 -bash
4 R    0      11869  3971   0  10:17   pts/3      00:00:00     ps

S (sleep) : 프로세스가 cpu 자원을 기다리고 있는 상태
SW : 프로세스가 swap 영역에 내려와 있는 상태
(스왑파티션에 있다)
    (한정된 메모리 자원을 효율적으로 사용하기 위해 일부 프로세스가 swap 영역으로 내갈 수 있다)
SWN : swap 영역에 있는 프로세스중 cpu 자원을 할당받을 우선순위가 낮은 상태
T : 중단된 상태
R : Runable 또는 Running 상태
Z : Zombie 상태

주요옵션

-e : 모든 프로세스 출력
-f : 프로세스 소유자 및 부모 프로세스 정보까지 출력
-ef : -e와 -f 는 주로 같이 붙여서 많이 사용된다.

프로세스도 file system 처럼 계층구조로 되어 있다.
부모프로세스가 있고 그 아래에 자식 프로세스가 있는 구조이다.


PID : 커널이 식별하는 프로세스 식별자
프로세스가 생성되는 순서대로 번호가 할당되며 1번은 init 이다.
TTY : 프로세스가 어떤 터미널에서 실행되었는가 하는 정보
TIME : 프로세스가 cpu를 점유한 누적 시간
CMD : 프로세스 이름



kill - 프로세스를 죽이는 명령어

주요 signal

1) SIGHUP : 프로세스 재실행이다. 죽였다가 다시 실행하는것과 같다.
2) SIGINT : 현재 프로세스 강제종료. ctrl+c 를 사용한다.
9) SIGKILL : 가장 많이 사용되는 시그널로 프로세스 강제 종료이다. 프로세스가 어떤일을 하든 무조건 죽인다.
물론 죽일 수 없는 예외적인 프로세스도 존재한다. 예를 들면 init 프로세스
15) SIGTERM : 프로세스 종료.
이 시그널을 사용하면 프로세스가 종료되지 않을 수도 있다.강제종료가 아니기 때문이다.
20) SIGTSTP : 현재 프로세스 강제 중단. ctrl+z 사용

위에서 언급한 signal 외에 다른 signal 들은 잘 사용되지 않는다.





프로세스 갯수 = 사용자 수에 비례 ..

killall - 특정 이름의 프로세스들을 죽인다.

bc - 계산기

fg - foreground
bg - background

foreground 로 실행되고 있는 프로세스를 ctrl + z 로 중단한 후
jobs 로 상태를 확인한 뒤 bg %'job아이디' 명령어로 background 상태를 만들어 준다.






* 아래의 두 개의  퍼미션은 Process 에 대한 이해가 필요하다.

1. s(set UID) (4nnn n은 8진수) : --s-------  
소유자 권한에 s 가 있으면 setUID 퍼미션이다.(실행하는 동안 소유자 권한을 갖는다)

setUID 퍼미션
보안과 관련되어 있는 퍼미션으로 이 퍼미션을 잘못관리하면 보안상 문제가 발생할 수 있다. 소유자 권한으로 파일을 실행할 수 있다.

2. s(set GID) (2nnn): ------s---  :
그룹 권한에 s 가 있으면 setGID 퍼미션이다.(실행하는 동안 그룹권한을 갖는다)

setGID 퍼미션
setGID 퍼미션의 개념은 setUID 퍼미션의 개념과 다르지 않다.
파일의 소유 그룹권한으로 실행할 수 있는 권한이다.

3. t(sticky bit) (1nnn): --------t :
3자권한에 t 가 있으면 sticky bit 퍼미션이다.(파일을 만들 수 있다. 그러나 파일소유자만 파일을 삭제할 수 있다)





1ːI¸llumino l 2008. 10. 22. 21:49
1 ··· 7 8 9 10 11 12 13 

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

카테고리

분류 전체보기
0ːN¸untio
1ːI¸llumino
2ːD¸estino
3ːC¸reo
4ːA¸go
5ːE¸mo
6ːC¸elo

달력

«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
get rsstistory! Tistory Tistory 가입하기!