IT 개념
[IT 개념] 리눅스 데몬(Daemon) 이란?
zincah
2022. 12. 16. 21:18
반응형
회사에서 작업을 하던 도중, ps-ef란 명령어로 daemon을 확인할 수 있다는 얘기를 들었고, 여기서 데몬이 뭘까 기록하기 위해서 데몬에 대해서 찾아보게 되었습니다.
데몬 이란? (Daemon)
운영체제에서 사용자가 직접 제어하지 않고, 백그라운드에서 여러 작업을 행하는 프로그램을 뜻합니다.
메모리에 머무르고 있으며 특정 요청이 올 때 그에 대한 대응을 할 수 있도록 대기 중인 프로세스를 말합니다.
데몬의 특징
- MS윈도우의 서비스와 유사
- 보통 리눅스 시스템의 1번 프로세스인 init(PID=1)이 실행
- 데몬 프로그램의 명령어는 'd'로 종료
- 부모 프로세스가 없고 대부분 프로세스 트리에서 init 바로 아래에 위치
fork off and die : 데몬이 되는 방법
일반적으로 자식 프로세스를 fork하여 생성하고 자식을 분기한 자신을 죽이면서 init이 고아가 된 자식 프로세스를 자신의 밑으로 데려가도록 하는 방식입니다. (fork off and die) 따라서, 데몬은 부모 프로세스가 없기에 PPID 는 1로 확인할 수 있습니다.
# ppid
ppid 값이 부모 프로세스의 pid를 뜻한다.
# ppid 값 확인하는 방법
ps -ef : 시스템 상의 모든 프로세스에 대한 정보를 출력하는 명령어
위의 명령어를 통해서 왼쪽에서 세번째에 나열되어있는 숫자들로 ppid를 확인할 수 있습니다.
반응형