<프로세스란?>

프로세스란 하드디스크에 저장된 프로그램이 메모리에 로딩되어 활성화 된것이다.

예로리눅스 웹 브라우저인 Firefox를 실행해서 화면에 나타난 상태를 프로세스라고 한다. (프로그램이 꼭 화면에 나타나지 않고 백그라운드로 실행되고 있는 것을 백그라운드 프로세스라 한다.)

 

 

<프로세스 용어정리>

1. 프그라운드 프로세스

Firefox등과 같이 실행하면 화면에 나타나 동작하는 프로세스를 말한다. , 화면에서 실행되는 것이 보이는 프로세스라고 생각하자.

2. 백그라운드 프로세스

실행은 되었지만, 화면에는 나타나지 않고 뒤에서 실행되는 프로세스를 말한다. 예로 바이러스 백신 같이 눈에는 보이지 않지만 실행되고 있는 것이다.

3. 프로세스 번호

프로세스가 실행될 때 번호가 부여되며, 그 고유번호가 곧 프로세스를 말한다. 프로세스 번호가 필요한 이유는 활성화된 프로세스를 메모리에서 강제로 퇴장시키기 위해서 프로세스 번호를 사용하기 때문이다.

4. 작업 번호

작동 중인 백그라운드 프로세스의 번호를 의미한다.

5. 부모 프로세스와 자식 프로세스

모든 프로세스는 부모 프로세스의 하위에 종속되어 실행된다.

예를 들어 firefox프로세스(자식 프로세스) X윈도우 프로세스(부모 프로세스) 아래에서 구동되어야 하는 것과 같다그렇다면 만약에 부모 프로세스가 죽게 되면 자식 프로세스는 어떻게 될까? 당연히 종료가 될 것이다.

X원도우 프로세스가 죽으면 firefox 프로세스는 죽게된다.

 

 

<데몬이란?>

데몬이란 서버 프로세스를 말한다. 방금 전에 프로세스에 대해서 설명했다. 프로세스에는 종류가 무지 많지만, 그중 서버 관련 프로세스 즉, 서비스해주는 프로세스를 말한다. 예를 들어 웹 서버 프로세스, 네임 서버 프로세스, DB 서버 프로세스 등을 데몬 이라고 부른다.데몬은 뒤에서 백그라운드로 작동한다.

데몬에는 Standalone 타입과 xinetd 타입의 데몬으로 나뉜다.

1. Standalone 타입

독자적으로 프로세스가 구동되어 서비스하는 데몬을 말한다. 웹 서버, DB서버, 센드메일 서버 등이있다. Standalone의 실행 파일은 /etc/init.d/ 디렉토리에 저장되어 있다.



/etc/init.d에 있는 파일들 모두에 데몬은 아니다. (거의 대부분!)

/etc/init.d/디렉토리에 있는 데몬들은 부팅 시에 자동 실행 여부를 지정할 수 있는데, system-config-services명령으로 확인하면 /etc/init.d/ 디렉토리에 있는 데몬들이 올라가 있는 것을 확인할 수 있다.

메모리상에 항상 작동되어 있어야 한다. 이렇게 자주 호출되는 데몬들은 Standalone타입의 데몬으로 처리하면 용이하지만 자주 사용되지 않은 데몬들까지 Standalone으로 처리하여 사용하면 시스템 자원의 낭비를 가져올 수 있다.

 

데몬 실행 및 종료 명령어)

service [데몬이름] start - 데몬 시작

service [데몬이름] stop - 데몬 중지

service [데몬이름] restart - 데몬 재시작 (종료했다가 다시 킴)

 

2. xinetd 타입

이 데몬은 수퍼데몬이라고 한다. 평소에 메모리에 상주해있지 않고, 자기가 standalone으로 동작하는 데몬들을 제외한 데몬들에 대해 최고의 지휘권을 갖고있으면서, Standalone이외의 데몬들(xinetd타입의 데몬)을 실행시키기 위해선 이 수퍼데몬을 거쳐서 실행되어야 한다. 이런 데몬들을 관리하며, 서비스하도록 연결시켜주는 것이다. xinetd타입의 데몬으로 사용하기 적당한 데몬은 빈도수가 대체로 적은 데몬들이다. 만약 이런 데몬들을 항상 메모리에 구동시켜 놓으면 잘 사용하지도 않은데다가 메모리 낭비가 이어지기 때문이다.

, xinetd타입의 데몬은 평상시에 구동되지 않다가, 서비스를 요청할 때만 xinetd데몬이 알아서 구동 시켜주는 방식이므로 별도로 서비스를 가동시켜 줄 수는 없다.

xinetd의 설정파일은 /etc/inetd.conf에 있으며, xinetd타입의 데몬들은

/etc/xinetd.d/ 디렉토리에 있다.

xinetd타입의 데몬은 재시작 할 필요가 없으므로, 그 상위(xinetd타입의 데몬들을 관리하는 xinetd 데몬)xinetd데몬을 재시작 하는 것이다. 왜냐? 어짜피 xinetd가 관리하고 실행 시켜줄 것이기 때문에!



posted by 경원구