본문 바로가기

IT 관련정보/리눅스

리눅스 기본 이론(4) -프로세스 관리

***프로세스 관리하기***

프로세스란 시스템에서 실행되는 모든 프로그램을 의미한다.

프로세스는 시스템 리소스를 차지한다.(리소스->CPU, RAM, .....)

시스템의 안정성과 성능향상을 위해서는 시스템관리가 필수적이다.


Daemon이란?

커널상에서 백그라운드 모드로 작동하여 비활성화 상태에 있다가 요청이 들어오면

동작하는 프로세스를 의미한다.


예를 들어, 인터넷기사일 경우

근무시간 오전 9시~오후6시까지


1.데몬 동작 유형

-inetd -->xinetd라는 수퍼데몬이 관리

-standalone -->요청이 있을 경우 즉시 반응하는 데몬.


데몬확인

netstate -at | grep 데몬명


2.수퍼데몬이란?

리눅스 시스템이 부팅될 때 적재되는 서비스들을 관리하는 데몬을 xinetd데몬이라 한다.


시스템이 부팅될 때 적재되는 서비스들을 확인한다. --->ntsysv


역할

-차별적인 접속을 위한 접근제어 기능 제공

-접속횟수 제한

-동일한 클라이언트의 동시 접속 제한

-로그 파일 크기 제한

-서비스 접속 실행시 로그를 기록할 수 있다.

-클라이언트별 서비스 이용시간 로그 기록

-원격호스트로 리다이렉션 서비스

-IPv6 지원


관련홈페이지 http://www.xinetd.org


설치

yum install xinetd



---------------------------------------------------


프로세스


커널은 프로세스가 동작할 때 각 프로세스마다 고유 ID를 지정하게 되며,

이를 Process ID(PID)라고 한다.

PID 값은 1번부터 시작되며, 1번은 init 프로세스에게 할당된다.


1.프로세스 상황 확인하기

#ps

PID TTY TIME CMD


#ps -ef

UID PID PPID C STIME TTY TIME CMD


UID PID PPID은 프로세스를 실행한 시스템 사용자를 보여준다.


PPID는 부모 프로세스를 가리킨다.


TTY는 접속 터미널을 의미한다.

로컬로그인시에는 TTY+가상터미널 수

X-window 터미널이나 원격로그인시에는 pts/번호 형태로 표시된다.


STAT-프로세스의 상태를 세 개의 필드로 구분하여 보여준다.

       첫번째 필드는 D, R, S, T, X, Z 코드가 있다   


D 휴지상태 PAUSE 일시 정지 상태

R 현재 동작중이거나 동작할 수 있는 상태

S 휴식을 하고 있지만 중지시킬 수 있는 상태

T 추적중에 있는 프로세스 상태

X 완전히 죽어 있는 프로세스

Z 죽어 있는 좀비 프로세스


두번째 필드

< 프로세스의 우선순위가 높은 상태

N 프로세스의 우선순위가 낮은 상태(Nice)

L 실시간으로 동작하지만 메모리안에 잠겨진 페이지를 가진 상태

s 주도하고 있는 프로세스(session leader)

l 멀티쓰레드

+ 포그라운드 프로세스 그룹


STIME은 프로세스를 실행한 시간을 의미한다.

TIME은 프로세스가 총 소비한 CPU 총 시간을 의미한다.

CMD는 프로세스의 명령을 의미한다.