프로세스,데몬,서비스 차이점

프로세스(Process)는 컴퓨터에서 메모리에 적재되어 CPU에 의해 실행되는 컴퓨터 프로그램(Program)을 말 합니다.

1. 프로세스와 프로그램 차이

먼저 프로그램은 어떤 작업을 위해 실행할 수 있는 파일을 의미합니다. 파일 시스템에 존재하는 실행 파일이 프로그램입니다. 윈도우 PC에 설치되어 있는 크롬, 원노트, 엑셀, 카카오톡 등의 파일들이 프로그램입니다.

윈도우 크롬에서 확인한 프로세스

프로세스는 프로그램 실행 후 CPU를 차지하면서 수행하는 수행 주체입니다. Program 자체에는 생명이 없으며, 보조 기억장치(하드디스크, SSD)에 존재하며 실행되기를 기다리는 명령어(코드)와 정적인 데이터의 묶음입니다. Program의 명령어와 정적 데이터가 메모리에 적재되면 동적인 Process가 됩니다.

Process는 실행 중인 프로그램으로 정의할 수 있습니다.

리눅스 ps -ef 명령어로 윈도우처럼 프로세스를 확인할 수 있습니다.

ps 명령어로 프로세스 확인

2. 데몬(Daemon)

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

도깨비나 유령을 뜻하는 데몬(daemon)이란 이름은 MIT의 MAC 프로젝트 프로그래머들이 만들었습니다. 이후 유닉스 시스템에서 이 용어를 받아 들였습니다. 리스 신화에서도 신들이 관여하지 않는 일을 처리하는 데몬이 등장하는데, 이는 사용자가 직접 신경쓰지 않도록 하면서 백그라운드에서 일을 처리해 주는 데몬의 역할과 맞아 떨어졌습니다.

Daemon은 항상 돌아가고 있어야 하기 때문에 웹서버에 적합하며 대표적으로 Apache 웹서버의 httpd가 대표적인 Daemon 프로그램입니다. Daemon은 백그라운드에서 실행되고 서버로 들어오는 요청에 자동으로 응답 해 줍니다.

httpd, sshd, inetd 등 d로 끝나는 프로세서들이 대표적인 Daemon입니다.

3. 서비스(Service)

리눅스에서는 데몬으로 부르는 것이 윈도우에서는 서비스(Service)로 부른다고 보면 됩니다.

서비스는 백그라운드에서 실행되는 응용 프로그램입니다.

윈도우 작업관리자-서비스(리눅스에서는 데몬으로)

Similar Posts

  • IT 업종에서 확인할 키보드 특수문자 명칭(영어 및 한글 이름)

    개발자 및 서버 엔지니어 등 IT 인프라에 포함된 업종에서는 키보드 특수문자 명칭에 대해 확인이 필요한 경우가 있습니다. 영문 및 영어발음 및 한글 명칭은 어떻게 되는지 알아 보겠습니다. 특수 문자(special character)는 한글, 한자, 영문, 숫자 등 특수한 문자를 의미합니다. 이모지 또는 자음 한자 특수 문자는 아래 링크에서 확인할 수 있습니다. 목차1. 프로세스와 프로그램 차이2….

  • 메타버스란-4가지 유형

    메타버스란(metaverse) 가상, 초월을 의미하는 ‘메타(meta)’와 우주를 의미하는 ‘유니버스(universe)를 합성한 신조어입니다. 용어의 시작은 1992년 SF 소설 Snow Crash에서 시작되었습니다. 목차1. 프로세스와 프로그램 차이2. 데몬(Daemon)3. 서비스(Service) 1. 메타버스란-정의 metaverse를 정의하면 가상현실 세계입니다. 메타버스의 개념은 아직 뚜렷이 확인되지 않았습니다. 우리 나라의 경우 ‘대한민국 4차 사업혁명 페스티벌’에서 metaverse를 “가상의 자아인 아바타를 이용해서 경제, 사회, 문화, 정치 활동…

  • 프론트엔드 백엔드 차이

    웹 개발에서 프론트엔드(Front-end)와 백엔드(Back-end)는 가장 많이 사용되는 용어입니다. Front-end는 사용자가 보고 상호 작용하며 백엔드는 모든 것이 작동하는 방식입니다. 목차1. 프로세스와 프로그램 차이2. 데몬(Daemon)3. 서비스(Service) 프론트엔드 개발 Front-end 개발은 웹 사이트의 사용자 측면에서 방문자가 사이트와 상호작용 할 수 있게 진행이 됩니다. 개발자는 HTML(HyperText Markup Language) 및 CSS(Cascading Style Sheets)와 JavaScript와 같은 컴퓨터 프로그래밍 언어를…

  • 소프트웨어에서 릴리스(Release)란?

    “릴리스:(Release)“는 “풀어주다”, “풀어 놓는다” 및 “출시하다”라는 영단어에서 알 수 있듯이 제품 등을 공개하거나 출시할 때 많이 사용되며, 소프트웨어 개발에서 특정 버전이나 제품의 출시를 의미하는 용어로 가장 많이 사용됩니다. 목차1. 프로세스와 프로그램 차이2. 데몬(Daemon)3. 서비스(Service)✅ 소프트웨어 배포까지의 기본 과정 릴리즈는 소프트웨어의 특정 버전이나 제품의 출시를 의미하고, 배포는 이러한 릴리즈 된 소프트웨어가 사용자에게 전달되는 과정을…

  • 구글 애드센스 CMP(동의 관리 플랫폼) | GDPR 및 CCPA사용자 동의 메시지 만들기

    구글 애드센스 CMP는 Consent Management Platform을 의미합니다. 2024년 1월 16일부터 EEA 및 영국 사용자에게 광고를 게재하는 모든 게시자는 Google에서 인증한 CMP(동의 관리 플랫폼)를 사용해야 합니다. CMP(동의 관리 플랫폼)은 웹사이트나 앱 방문자의 개인 정보 수집 및 이용에 대한 동의를 얻고 관리하는 도구입니다. 구글이 인증하는 CMP의 사용 목적은 ‘GDPR’ 및 ‘IAB TCF’ 그리고 ‘CCPA &…

  • 자바와 자바스크립트 차이

    자바와 자바스크립트 차이에 대해 자바를 배웠다면 이름만 비슷하고 확연히 다른 차이점을 가지고 있는 것을 알 수 있습니다. 목차1. 프로세스와 프로그램 차이2. 데몬(Daemon)3. 서비스(Service)자바(Java) 자바는 객체지향 프로그래밍 언어로 Sun Microsystems(현재의 오라클)에서 개발했으며 현재는 오라클이 유지보수 하고 있습니다. 자바의 기본 데이터 타입과 자바 배열 사용 예시입니다. ▼ (출처: https://blog.naver.com/trader_ryu/220856442482) 자바스크립트(JavaScript) 자바스크립트는 객체지향 스크립트 언어입니다. 프론트…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 3   +   6   =