본문 바로가기
IT KNOWLEDGE/개발 방법론

프로세스와 데몬 그리고 서비스

by BTC_김회장 2023. 11. 30.

베하~! 반갑습니다 인사통 입니다!

날씨가 추워지고 있어요 다들 건강 잘 챙기시길 바랍니다!

오늘은 프로세스와 데몬, 서비스에 대해서 알아보도록 할게요!

프로세스 (Process)

프로세스는 메모리에 적재되어 CPU에 의해 실행되는 컴퓨터 프로그램을 지칭합니다.

각 프로세스는 고유한 프로세스 ID(PID)를 가지고, 운영체제는 프로세스 간의 자원 공유를 관리합니다.

예를 들어, 웹 브라우저를 실행하는 경우 브라우저라는 프로그램은 하나의 프로세스로 실행되는 것이라 보면 됩니다.

프로세스는 눈에 보이는 프로세스(foreground process) 와 눈에 보이지 않은 프로세스(background process) 로 구분됩니다.

작업관리자에서 쉽게 프로세스를 볼 수 있어요!

 

포그라운드 프로세스 백그라운드 프로세스
사용자와 상호작용하는 프로세스 프로세스는 사용자와 상호작용하지 않고 시스템에서 실행되는 프로세스
최소화를 하더라도 눈에 보이는 프로세스 시각적으로 보이지는 않지만 뒤에서 일을 하는 프로세스
카카오톡,인터넷,메모장 등 눈에 보임 백신, 그래픽 드라이버, 마이크 드라이버 등 눈에 보이지 않음

 


데몬 (Daemon)

데몬은 백그라운드에서 실행되는 프로그램으로, 사용자가 직접적으로 제어하지 않고 백그라운드에서 돌면서 여러 작업을 하는 프로그램을 말합니다.

사용자의 요청을 기다리고 있다가 요청이 발생하면 이에 적절히 대응하는 리스너와 같은 역할을 하는거죠, 즉, 메모리에 상주하면서 특정 요청이 오면 즉시 대응 할 수 있도록 대기중인 프로세스 입니다.

 

 

Daemon 단어의 어원
데몬이란 용어는 맥스웰의 도깨비 사고 실험에서 영감을 얻어 탄생하였다. 맥스웰의 도깨비는 보이지 않는 곳에서 분자들을 골라주는 일을 하는데, 보이지 않는 곳에서 조용히 일한다는 점에서 맥스웰의 도깨비와 데몬 프로그램은 비슷하기 때문이다. 또한 데몬는 악마나 유령을 뜻하는데, 유령은 걷지 않고 항상 떠 있다는 점에서 백그라운드에서 조용하게 항상 수행되는 프로그램을 데몬 프로그램이라 부르게 된 것이다. 


데몬은 항상 돌아가고 있어야하는 웹서버에 적합하여 일반적으로 서버에서 주로 사용됩니다.

대표적인 예로 Apache 웹서버의 httpd가 바로 데몬 프로그램이죠.

httpd는 웹서버에 백그라운드에서 실행되면서 서버로 들어오는 요청에 자동으로 응답해 준다.

현재 실행중인 데몬 확인


서비스 (Service)

서비스는 백그라운드에서 실행되는 응용 프로그램입니다. 윈도우 서비스는 일반적으로 사용자 인터페이스를 필요로 하지 않는 작업(네트워크 서비스, 데이터베이스 서버, 백업 서비스) 등을 수행한다. 이러한 서비스들은 시스템이 부팅될 때 자동으로 시작되며, 사용자가 로그인하지 않은 상태에서도 계속해서 실행됩니다.
즉, 윈도우 OS에서는 백그라운드에서 실행되는 응용 프로그램을 service 라 부르고 유닉스(리눅스) OS에서는 daemon 이라고 불리운다고 보면 됩니다.

서비스도 프로세스와 마찬가지로 작업관리자에서 쉽게 찾아볼수 있다.

 

이상으로 프로세스, 데몬, 서비스에 대해서 알아봤습니다.

다음에도 더욱 알찬 내용으로 돌아올게요!

베빠~!

 

참고: https://inpa.tistory.com/entry/프로세스-데몬-서비스-정리

댓글