YesYo.com MintState Forums
뒤로    YesYo.com MintState BBS > Tech > Linux
검색
멤버이름    오토
비밀번호 
 

ps 수행중인 프로세스 표시

페이지 정보

작성자 MintState 댓글 0건 조회 20,917회 작성일 08-12-04 22:27

본문

ps 수행중인 프로세스 표시 

수행중인 프로세스(프로세스 자체에 수행중이라는 의미가 있지만) 정보를 표시한다. ps(Process Status) 유틸리티 옵션에는 - 문자를 덧붙이지 않아도 좋다.

a 모든 프로세스 목록에 대한 정보를 표시한다.
f 트리 형태로 프로세스 정보를 표시한다. (Forest)
l 긴 포맷으로 표시한다.
u 이용자 이름과 시작 시각을 포함한다.
x 터미널과 관련 없는 프로세스도 포함한다.

-sort[+ | -]key... 지정한 키에 따라 정렬한다.

정렬키
c cmd
C cmdline
f flags
g pgrp (group ID)
p pid
P ppid (Parent's process ID)
s size
T start_time
U uid
u user (user name)

필드
USER 프로세스의 소유자 이름
PID 프로세스를 구분하는 고유 식별 번호
%CPU 프로세스의 CPU 점유율
%MEM 프로세스의 메모리 점유율
RSS 프로세스가 이용하는 메모리 크기
TTY 프로세스가 수행된 터미널 번호
STAT 수행중인 프로세스 상태
S 잠들어 있다.
R 수행 중
Z 좀비 프로세스
TIME 프로세스가 이용한 시간
COMMAND 수행중인 명령에 대한 정보

쓰는 법
가장 일반적인 형태 ps ax
상세하게 보고 싶을 때 ps al





**
프로세스 컨트롤


1.ps명령어
:: 시스템에서 시작되는 프로세서는 각각 고유한 식별번호 프로세서ID(PID)를 가진다
ps명령은 시스템에서 현재 실행중인(sleep상태도 포함)프로세스에 대한 정보를 각 PID와 각 프로세스의 부모 ID(PPID)를 표시해 준다.
   
[syntax]     
ps [-option]     
:: 옵션에는 아래와 같은 것들이 있다.
 -e ==> 시스템에서 수행중인 모든 프로세서 정보를 보여준다.
 -f  ==> 위의 옵션과 같이 주어지며 세부정보를 보여준다. 이 옵션을 통해서  PPID(부모 프로세서)를 알수있다.

[예제]     

       
[Tip]
:: ps명령은 CPU를 주로 사용하는 명령이므로 응답시간이 느려질수도 있다.
 
 
2. 실제적인 프로세서 제어
:: 위에서 프로세서에 대해 간략하게 알아보았다. 여기서는 실제 작동중인 프로세서를 제어해 보도록하자.
   
- 백그라운드 작업 -
[syntax]
명령어 &
:: 명령어 다음에 엠퍼센드(&)를 붙이면 해당 작업은 백그라운드로 수행된다. 백그라운드 작업이란 현재 쉘을 사용할수 있게 만들어 주는 멀티플랙작업이 가능하게 해주는 유닉스의 융통성이 뛰어난 작업이다.

[예제]     

:: 위에서 앞의 [1]은 자신이 수행한 백그라운드 프로세서의 순차적인 번호(ob Number라고도 한다.)이고,  뒤의 194는 해당 백그라운드 작업의 PID(프로세서ID)값인 것이다.
     
$
             
[Tip]
:: 백그라운드 작업중인 프로세서는 일반적인 "Ctrl + c"명령으로 제어할수가 없다. ps를 통한 프로세서ID를 kill하거나 로그아웃하면 중지된다. 로그아웃을 할경우 해당 작업이 완료되지 않으면  $ There are running jobs. 이라는 메시지를 보여준다.

- 프로세서의 그라운드 이동 -
:: 제목이 조금 이상하군여(^^).현재 백그라운드나 포그라운드에 진행중인 프로세서를 각각 포그라운드나 백그라운드로 이동시킨다.

[syntax]
fg [%PID]
fg [%명령어]
bg [%PID]
bg [%명령어]
   
:: PID 와 실행한 명령어로도 가능하다.

[예제]

       
[Tip]
:: 포그라운드 작업을 중지시키는 명령인 "ctrl + z"는 .profile 에서 "stty susp ^z "라는 엔트리를 사용하여 로그인시 지정된다.

- nohup 명령어 -
:: 명령의 정지나 로그아웃에 영향을 받지 않는 명령으로 유닉스 시스템의 접두부(다른명령의 앞에 오는 명령)명령의 하나이다. 따라서 해당 명령을 지속적으로 실행하고자 할때 사용된다.

[syntax]   
nohup 명령어 &   

[예제]

   
[Tip]
:: nohup 명령의 출력방향을 지정하지 않으면 Default로 nohup.out이라는 파일이 생성된다. 이파일에는 표준출력과 표준에러가 모두 기록된다.

- nice 명령어 -
:: 유닉스의 멀티플랙스한 점은 CPU를 시분할 시스템으로 분할하여 CPU에게 작업을 할당한다. nice는 작업의 우선순위를 결정한다.

[syntax]     
nice [-N] 명령어
   
:: N은 1에서 15사이의 낮은 우선순위로 실행된다. 이것은 백그라운드에서의 작업할당번호이다.

[예제]     


nice값은 NI항목에 표시된다. 위에서 보듯이 nice값이 34이다.
이것은 기본nice값이 20이고 그리고 nice 실행시 더한값이 10이고 그리고 백그라운드시
4가 더해지기 때문이다.   
   
[Tip]
:: nice의 초기시작 값은 20이다. 백그라운드로 실행할 경우 포그라운드보다 +4 가된다. 따라서 포그라운드일 경우에는 작업할당번호가 1~19까지이다.

- kill(프로세서 죽이기) -
:: TERM신호를 지정된 프로세스에 보낸다. 해당 프로세스를 종료하도록 요구한다.

[syntax]
kill [-s 시그널이름] PID
   
:: kill PID하여도 된다.
   
[예제]   


[Tip]
:: 좀비프로세스란 해당 프로세서가 defunct난 경우로 kill명령어로 죽지 않는  경우가 있다. 확인은 ps -ef 로 CMD 가 난 경우이다.
프로세스 테이블은 프로세스 가동갯수가 있는데 좀비프로세스는 프로세서 테이블을 차지함으로서 자원을 소모한다.
이때는 시스템을 재가동 하는 경우가 대부분이다.

댓글목록

등록된 댓글이 없습니다.

Total 360건 18 페이지
Linux 목록
번호 제목 글쓴이 조회 날짜
열람중 MintState 20918 12-04
19 MintState 20946 10-30
18 MintState 21184 09-04
17 MintState 21389 01-05
16 MintState 22135 07-27
15 MintState 22505 01-05
14 MintState 22578 12-04
13 MintState 22640 05-08
12 MintState 22654 05-08
11 MintState 22798 01-05
10 MintState 23991 11-17
9 MintState 24005 07-26
8 MintState 24588 01-05
7 MintState 24598 12-24
6 MintState 25857 01-05
5 MintState 26972 01-05
4 MintState 31080 11-05
3 MintState 32676 11-17
2 MintState 39170 01-05
1 MintState 151987 11-10
게시물 검색
모바일 버전으로 보기
CopyRight ©2004 - 2024, YesYo.com MintState. ™