서론
서론이니 넘어가도 됩니다.
어릴때부터 윈도우 친화적으로 컴퓨터를 경험하다보니 시작프로그램
이란게 무엇인지 정확하게 알고있다. 또한 이와 관련된 서비스
가 무엇인지도 알고 있다.
하지만 요새 우분투를 건드리면서 daemon이 뭐지, program.d
등등이 뭔지 하나도 모르겠다.
Daemon이 뭔지 wikipedia에서 검색을 해보고 나서야 이게 뭔지 감이 잡히기 시작했다.
Daemon의 정의
Daemon이란 백그라운드 프로세스로써 돌아가는 프로그램으로, 유저가 단순히 백그라운드 프로그램으로 실행하는 것보다 더 직접적인 제어를 받지 않는다는 특징이 있습니다.
그리고 형식적으로 이 daemon 프로그램들은 d로 끝나게 되어있고, 이를 통해 일반 프로그램과 구별을 할 수가 있게 됩니다.
리눅스를 만지면서 겪게되는 ssh와 sshd에서 이 sshd
가 ssh 프로그램의 대몬 프로그램인 것입니다.
Daemon의 특징
일반적으로 daemon 프로세스의 부모 프로세스는 해당 프로그램의 init 프로그램입니다.
또한 포킹(리눅스에서의 포킹) 및 종료에 의해 대몬이 시작될 수도 있는데, 이때는 프로세스를 제어하는 터미널과 해당 프로세스를 분리하는 것과 같은 다른 작업을 수행을 해야합니다.
또한 시스템 부팅 작업 등을 할 때 대몬을 시작해서 하드웨어 세팅같은 일부 작업 등을 하기도 합니다.
결론
결론적으로 특정 프로그램이 제대로 돌아가는지, 특정 하드웨어 작업이 제대로 수행되는지를 계속 관리해주는 별도의 프로그램이라고 보면 됩니다.
윈도우의 서비스
비슷한 존재와 같다고 생각하면 됩니다.
'프로그래밍' 카테고리의 다른 글
[Ubuntu] 삼성 노트북(ALC-298) 사운드 안들리는 방법 해결 (0) | 2023.06.28 |
---|