728x90
서비스? 데몬?
'서비스'와 '데몬'의 차이
서버 관리 등의 용도로 사용되는 backgroud process에 대해, Windows에서는 서비스, Linux에서는 데몬으로 부른다. 말그대로 백그라운드에서 동작하는 기능을 관리하며 사용자가 명시적으로 시작하지 않아도 자동으로 실행된다. 이러한 기능적 공통점 때문인지 Windows에서도 '데몬'이라는 용어가 자주 쓰이고, Linux에서는 포트/프로토콜 정보를 정의해놓은 /etc/services가 따로 존재하기 때문에 두 OS에서 '서비스'와 '데몬'은 혼용되어 쓰인다.
하지만 서비스와 데몬이 동의어는 아니다.
- Windows의 Service
- 프로세스와 서비스는 1:1 관계가 아니다. 즉, 한 프로세스에서 둘 이상의 서비스를 실행할 수 있다.
- 실행 파일 뿐만 아니라 dll도 서비스로 구동된다.
- 서비스 < 프로세스
- Linux의 Daemon
- daemon == background process
- 둘 이상의 데몬이 한 프로세스 밑에서 동작하는 경우는 없다.
- 실행 파일만 데몬으로 구동된다.
- 데몬 = 프로세스
Windows가 service를 OS의 본질적 기능이라기보다는 특정 ‘기능’으로 취급하는 반면, linux에서는 daemon을 그냥 일반적인 프로세스의 일종으로 취급한다. 데스크톱에서는 사용자가 임의로 작성한 기능이 background에서, 특정 사용자가 logout한 후에도 동작해야 하는 경우는 드물다. 따라서 Windows 에서의 service는 단순 프로세스 관리가 아닌, 말 그대로 background service 관리만을 위해 특화된 기능을 ‘추가’해야만 하는 상황이었을 것이다.
반면 Unix의 영향을 많이 받은 linux에서는 특정 사용자가 구현한 기능을, 해당 사용자의 login 여부와 관계없이 background에서 오랜 시간 실행하는 것은 특이한 요구사항이 아니었을 것이다.
728x90
'SYSTEM' 카테고리의 다른 글
LDAP이란 무엇인가 (0) | 2021.03.18 |
---|---|
bash (3) 간단한 계산기 스크립트 짜기 (1) | 2021.03.11 |
bash (2) 환경 변수 설정 (1) | 2021.03.10 |
bash (1) alias (별칭/단축키) 설정 (0) | 2021.03.10 |
useradd/adduser 안쓰고 직접 파일 수정하여 계정 생성하기 (0) | 2021.03.09 |