데몬(daemon)에 대하여...
daemon
사전적의미:
1 악마, 마귀, 귀신(devil);사신(邪神);악의 화신, 귀신 같은 사람
2 귀재, 명인, 비범한 사람 《for, at》
3【종교】 정령(精靈), 신령;【그리스신화】 [보통 daemon으로] (gods와 men의 중간에 위치하는) 수호...
참조: Linux System Programming by Robert Love, Page 178.
데몬은 터미널과 연결관계가 없는 백그라운드 프로세스이다.
데몬들은 일반적으로 부팅 시간에 루트로 시작되거나,
몇몇 특별한 사용자(such as apache or postfix)로 실행된다.
통상적으로 데몬의 이름끝에는 d가 붙는다.(as in crond and sshd)
그러나, 이러한 이름 규칙이 반드시 요구사항은 아니다.
데몬이라는 명칭은 물리학자인 James Maxwell의 1867년 실험이론에서 유래 되었다.
또한, 그리스 신화에서 사람과 신 사이의 존재이며, 힘과 지식을 선물한다.
유대-크리스찬 가르침과는 다르게, 그리스 신화 데몬은 악마(evil)가 아니다.
신화에서 데몬은 올림푸스 산의 거주자들이 임무을 수행하며
신과 결부 시키는 경향이 있으나,
유닉스에서 데몬은 사용자들(foreground users)이 꺼리는(avoid) 임무들을 수행한다.
데몬은 일반적으로 두가지 요구조건이 있다:
init의 자식(child)으로 실행 되어야 하는것과, 터미널에 연결되지 않아야 하는 것이다.
프로그램은 데몬이 되기 위해 다음과 같은 단계로 수행된다:
1. fork() 호출. 새로운 프로세스를 생성한다.
2. 부모(parent) 안에서 exit() 호출. 데몬의 부모가 존재하지 않도록 한다.
3. setsid() 호출. 새로운 프로세스 그룹과 세션이 부여된다.
4. chdir()를 사용하여 루트 디렉토리로 이동.
5. 모든 file descriptors를 닫는다.
6. file descriptors 0, 1, 2(표준입력,표준출력,표준오류)을 /dev/null에 연결.
From:
*알지비 (메신저: rgbi3307(at)nate.com)
*학창시절 마이크로마우스를 만들었고, 10년동안 IT관련 개발자로 일하고 있음.
*틈틈히 커널연구회(http://www.kernel.kr/) 내용물들을 만들고 있음.
*((공부해서 남을 주려면 남보다 더많이 연구해야함.))
공부내용을 올리시는 듯 한데...
자유게시판이 아니라, 강좌 게시판에 올리시면 어떨까 생각합니다.
http://kldp.org/forum/2797
그러면 처음 무엇을 봐야 할지 모르는 사람들도 글을 쉽게 볼 수 있으리라 생각합니다.
====
( - -)a 이제는 학생으로 가장한 백수가 아닌 진짜 백수가 되어야겠다.
네...
해당 포럼으로 들어가서 새글을 올려야 하는군요.
그동안, 왼쪽 상단 새글 글올리기 --> 포럼 주제를 선택하니,
자유게시판에만 입력이 되고,
다른 주제는 빨간색으로 표시되며, 않된다고 해서...
From:
*알지비 (메신저: rgbi3307(at)nate.com)
*학창시절 마이크로마우스를 만들었고, 10년동안 IT관련 개발자로 일하고 있음.
*틈틈히 커널연구회(http://www.kernel.kr/) 내용물들을 만들고 있음.
*((공부해서 남을 주려면 남보다 더많이 연구해야함.))
From:
*알지비 (메일: rgbi3307(at)nate.com)
*커널연구회(http://www.kernel.bz/) 내용물들을 만들고 있음.
*((공부해서 남을 주려면 남보다 더많이 연구해야함.))