티스토리 뷰

네트워크

데몬이란?

금전 2018. 4. 10. 13:29

* 데몬이란?

멀티태스킹 운영체제에서 사용자가 직접 제어하지 않고,

백그라운드에서 돌면서 여러 작업을 하는 프로그램을 말한다.

일반적으로 프로세스로 실행된다.


데몬은 대체적으로 부모 프로세스를 갖지 않아서 PPID가 1이다.

프로세스 트리에서 init바로 아래에 위치한다.

시스템은 시동할 때 데몬을 시작하는 경우가 많은데,

이런 데몬들은 네트워크 요청/하드웨어 동작 등 프로그램에 반응하는 기능을 담당한다.


그 밖에도 Linux의 cron처럼 주기적인 작업을 실행하는 등 다양한 목적으로 사용된다.


데몬은 시스템에 관련된 작업을 하며 서비스 요청이 없을 대는 후위 프로세스로 유휴 상태에 있는다.

시스템의 CPU를 차지하지는 않지만, 메모리와 기타 자원을 차지하므로 많은 데몬을 띄우기 위해서는 그만큼 시스템 자원이 필요하다.


* 데몬의 실행 모드

데몬의 실행모드에는 크게 두가지가 있다.

독립적으로 실행되는 standalone 모드와, 

슈퍼데몬에 의해 관리되는 xinetd 모드다.


standalone 방식은 독립적으로 실행되며, 항상 메모리에 상주한다.

이 때 서비스 요청이 있으면 언제든 바로 응답을 한다. 서비스 요청, 즉 접근을 감지하는 것을 Listening 한다고 한다.


xinetd 방식은 슈퍼 데몬에 의해 관리가 된다.

서비스 요청이 있을 때만 메모리에 적재되어 응답을 한다.

서비스 요청이 있을 때만 메모리에 적재되므로 서버 부하를 상대적으로 줄일 수 있다는 장점이 있다.

단점은 응답속도가 standalone보다 느리다는 것이다.

따라서 빠른 응답속도가 필요하지 않을 경우에 이 모드를 사용한다. 






댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
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
글 보관함