π©π» νλ‘μΈμ€ / λ°λͺ¬ / μλΉμ€ μ°¨μ΄ νλ°© μ 리
νλ‘μΈμ€ (Process)
νλ‘μΈμ€λ λ©λͺ¨λ¦¬μ μ μ¬λμ΄ CPUμ μν΄ μ€νλλ μ»΄ν¨ν° νλ‘κ·Έλ¨μ μ§μΉνλ€. κ° νλ‘μΈμ€λ κ³ μ ν νλ‘μΈμ€ ID(PID)λ₯Ό κ°μ§λ©°, μ΄μ체μ λ νλ‘μΈμ€ κ°μ μμ 곡μ λ₯Ό κ΄λ¦¬νλ€. μλ₯Ό λ€μ΄, μΉ λΈλΌμ°μ λ₯Ό μ€ννλ κ²½μ° λΈλΌμ°μ λΌλ νλ‘κ·Έλ¨μ νλμ νλ‘μΈμ€λ‘ μ€νλλ κ²μ΄λ€. κ·Έλ¦¬κ³ νλ‘μΈμ€λ λμ 보μ΄λ νλ‘μΈμ€(foreground process) μ λμ 보μ΄μ§ μμ νλ‘μΈμ€(background process) λ‘ κ΅¬λΆλλ€.
ν¬κ·ΈλΌμ΄λ νλ‘μΈμ€ | λ°±κ·ΈλΌμ΄λ νλ‘μΈμ€ |
μ¬μ©μμ μνΈμμ©νλ νλ‘μΈμ€ | νλ‘μΈμ€λ μ¬μ©μμ μνΈμμ©νμ§ μκ³ μμ€ν μμ μ€νλλ νλ‘μΈμ€ |
μ΅μνλ₯Ό νλλΌλ λμ 보μ΄λ νλ‘μΈμ€λ₯Ό ν¬κ·ΈλΌμ΄λ νλ‘μΈμ€ | λμ 보μ΄μ§ μμ§λ§ λ€μμ μΌμ νκ³ μλ νλ‘μΈμ€λ₯Ό λ°±κ·ΈλΌμ΄λ νλ‘μΈμ€ |
μΈν°λ·, μΉ΄μΉ΄μ€ν‘, λ©λͺ¨μ₯, κ·Έλ¦Όν λ± λμ 보μ΄λ νλ‘κ·Έλ¨ | λ°±μ νλ‘κ·Έλ¨, κ·Έλν½ λλΌμ΄λ², λ§μ΄ν¬ λλΌμ΄λ² λ± λμ 보μ΄μ§ μλ νλ‘κ·Έλ¨ |
λ°λͺ¬ (Daemon)
λ°λͺ¬μ λ°±κ·ΈλΌμ΄λμμ μ€νλλ νλ‘κ·Έλ¨μΌλ‘, μ¬μ©μκ° μ§μ μ μΌλ‘ μ μ΄νμ§ μκ³ λ°±κ·ΈλΌμ΄λμμ λλ©΄μ μ¬λ¬ μμ μ νλ νλ‘κ·Έλ¨μ λ§νλ€. μ¬μ©μμ μμ²μ κΈ°λ€λ¦¬κ³ μλ€κ° μμ²μ΄ λ°μνλ©΄ μ΄μ μ μ ν λμνλ 리μ€λμ κ°μ μν μ νλ€. μ¦, λ©λͺ¨λ¦¬μ μμ£Όνλ©΄μ νΉμ μμ²μ΄ μ€λ©΄ μ¦μ λμ ν μ μλλ‘ λκΈ°μ€μΈ νλ‘μΈμ€λ₯Ό λ§νλ€.
Daemon λ¨μ΄μ μ΄μ
λ°λͺ¬μ΄λ μ©μ΄λ λ§₯μ€μ°μ λκΉ¨λΉ μ¬κ³ μ€νμμ μκ°μ μ»μ΄ νμνμλ€. λ§₯μ€μ°μ λκΉ¨λΉλ 보μ΄μ§ μλ κ³³μμ λΆμλ€μ 골λΌμ£Όλ μΌμ νλλ°, 보μ΄μ§ μλ κ³³μμ μ‘°μ©ν μΌνλ€λ μ μμ λ§₯μ€μ°μ λκΉ¨λΉμ λ°λͺ¬ νλ‘κ·Έλ¨μ λΉμ·νκΈ° λλ¬Έμ΄λ€. λν λ°λͺ¬λ μ λ§λ μ λ Ήμ λ»νλλ°, μ λ Ήμ κ±·μ§ μκ³ νμ λ μλ€λ μ μμ λ°±κ·ΈλΌμ΄λμμ μ‘°μ©νκ² νμ μνλλ νλ‘κ·Έλ¨μ λ°λͺ¬ νλ‘κ·Έλ¨μ΄λΌ λΆλ₯΄κ² λ κ²μ΄λ€.
λ°λͺ¬μ νμ λμκ°κ³ μμ΄μΌνλ μΉμλ²μ μ ν©νμ¬ μΌλ°μ μΌλ‘ μλ²μμ μ£Όλ‘ μ¬μ©λλ€. λνμ μΈ μλ‘ Apache μΉμλ²μ httpdκ° λ°λ‘ λ°λͺ¬ νλ‘κ·Έλ¨μ΄λ€. httpdλ μΉμλ²μ λ°±κ·ΈλΌμ΄λμμ μ€νλλ©΄μ μλ²λ‘ λ€μ΄μ€λ μμ²μ μλμΌλ‘ μλ΅ν΄ μ€λ€.
μ΄λ°μλ μ λμ€(리λ μ€) μ΄μ체μ μμ μ΄μ체μ μμ νλ‘μΈμ€ μ΄λ¦ λμ΄ dλ‘ λλλ νλ‘μΈμ€λ€μ΄ λνμ μΈλ° inetd, httpd, nfsd, sshd, named, lpd λ±μ΄ μλ€.
μλΉμ€ λͺ | λ°λͺ¬ λͺ | μ μ |
Linux μνΌλ°λͺ¬ | xinetd | Linux λ΄ μ¬λ¬ μλΉμ€λ₯Ό νλ²μ κ΄λ¦¬ |
File Transfer Protocol | vsftpd | Fileμ μ μ‘νλ μλΉμ€ |
Secure Shell Service | sshd | μνΈν μ격 μμ μ΄ κ°λ₯ν μλΉμ€ |
Network File System | nfs | Network λ₯Ό μ΄μ©νμ¬ FileSystem μ 곡μ νλ μλΉμ€ |
Domain Name Service | named | IPμ Domain μ mapping μμΌμ£Όλ μλΉμ€ |
Web Service | httpd | Browser λ₯Ό μ΄μ©νμ¬ μΉ λ¬Έμ νμ΄μ§λ₯Ό μΆλ ₯μν¬ μ μλ μλΉμ€ |
Database Management | mysqld | DBλ₯Ό κ΄λ¦¬νλ μλΉμ€ |
Mail Service(send) | sendmail | mailμ μ μ‘ν μ μλ μλΉμ€ |
μλΉμ€ (Service)
μλΉμ€λ λ°±κ·ΈλΌμ΄λμμ μ€νλλ μμ© νλ‘κ·Έλ¨μ΄λ€. μλμ° μλΉμ€λ μΌλ°μ μΌλ‘ μ¬μ©μ μΈν°νμ΄μ€λ₯Ό νμλ‘ νμ§ μλ μμ (λ€νΈμν¬ μλΉμ€, λ°μ΄ν°λ² μ΄μ€ μλ², λ°±μ μλΉμ€) λ±μ μννλ€. μ΄λ¬ν μλΉμ€λ€μ μμ€ν μ΄ λΆν λ λ μλμΌλ‘ μμλλ©°, μ¬μ©μκ° λ‘κ·ΈμΈνμ§ μμ μνμμλ κ³μν΄μ μ€νλλ€.
μ΄λ κ²λ§ 보면 λ°λͺ¬κ³Ό μλΉμ€μ μ°¨μ΄κ° μ μλΏμ§ μμ κ²μΈλ°, μλμ° OSμμλ λ°±κ·ΈλΌμ΄λμμ μ€νλλ μμ© νλ‘κ·Έλ¨μ service λΌ λΆλ₯΄κ³ μ λμ€(리λ μ€) OSμμλ daemon μ΄λΌκ³ λΆλ¦¬μ΄λ€κ³ 보면 λλ€. μ¦, λμ΄ κ±°μ λΉμ·νλ€.
νλ‘μΈμ€, λ°λͺ¬, μλΉμ€ μ°¨μ΄
λ°λͺ¬ vs λ°±κ·ΈλΌμ΄λ νλ‘μΈμ€
μΌλ°μ μΌλ‘ νλ‘μΈμ€μ λ°λͺ¬μ μ°¨μ΄λ νλ‘μΈμ€λ νμμ μ€νμν€λ κ²μ΄κ³ λ°λͺ¬μ μλ μ€νμ΄λΌλ κ²μ΄λ€. μλ₯Όλ€μ΄ λ ΈνΈν¨λλ₯Ό μ€νμν€λ €λ©΄ μ¬μ©μκ° μ§μ μ‘°μν΄μΌλμ§λ§, λ°±μ νλ‘κ·Έλ¨μ μ»΄ν¨ν°λ₯Ό μ¬λΆν ν΄λ μλμΌλ‘ μ€νλλ€.
κ·ΈλΌ ν¬κ·ΈλΌμ΄λκ° μλ λ°±κ·ΈλΌμ΄λ νλ‘μΈμ€μ λ°λͺ¬μ λ¬΄μ¨ μ°¨μ΄μΌκΉ?
λ°λͺ¬κ³Ό λ°±κ·ΈλΌμ΄λ νλ‘μΈμ€μ κ°μ₯ ν° μ°¨μ΄μ μ μ΄μ체μ μμ μ¬μ©λλ μ μ΄λ€. λ°λͺ¬μ μ£Όλ‘ μ λμ€λ 리λ μ€μ κ°μ μ΄μ체μ μμ μ¬μ©λλ©° μμ€ν λ 벨μμ μ€νλλ λ°λ©΄, λ°±κ·ΈλΌμ΄λ νλ‘μΈμ€λ μλμ° μ΄μ체μ μμ μ¬μ©λλ©° λ°λͺ¬κ³Ό λΉμ·ν μν μ μννμ§λ§ λμ μλΉμ€(Service)λΌλ μ©μ΄λ₯Ό μ¬μ©νλ€λ μ μμ λ―ΈμΈν μ°¨μ΄κ° μλ€κ³ 보면 λλ€. λν λ°λͺ¬μ μ λμ€μ κ°μ μ΄μ체μ μμλ μΌλ°μ μΌλ‘ init νλ‘μΈμ€λ₯Ό ν΅ν΄ μ€νλλ λ°λ©΄, μλμ° μ΄μ체μ μμλ μλΉμ€ 맀λμ λ₯Ό ν΅ν΄ μ€νλλ€.
init νλ‘μΈμ€λ μμ€ν μ΄ μ’ λ£λ λκΉμ§ κ³μ μ€νλλ λ°λͺ¬ νλ‘μΈμ€μ΄λ©° λ€λ₯Έ λͺ¨λ νλ‘μΈμ€μ μ§κ°μ λΆλͺ¨ νλ‘μΈμ€μ΄λ€.
λ°λͺ¬ vs μλΉμ€
Daemon κ³Ό Serviceλ λΉμ·ν κ°λ μ΄μ§λ§, μ΄μ 체μ μ°¨μ΄μ μλ€κ³ νλ€. κ·ΈμΈμλ μ¬μ©μ²μλ μ°¨μ΄κ° μλλ°, λ°λͺ¬μ μΌλ°μ μΌλ‘ μλ²μμ μ£Όλ‘ μ¬μ©λκ³ , μλΉμ€λ λ€λ₯Έ νλ‘κ·Έλ¨μ΄λ μλΉμ€λ₯Ό μ§μνκΈ° μν΄ μ€νλλ€. λ°λͺ¬μ μμ€ν μμ λ 립μ μΌλ‘ μ€νλκ³ , μλΉμ€λ μμ€ν μ μνλ₯Ό λͺ¨λν°λ§νκ³ , λ°±κ·ΈλΌμ΄λμμ μ€νλλ μ ν리μΌμ΄μ μ μ μ΄νκ³ , μμ μ μννλ λ±μ μν μ§μνλλ° μ΄μ μ΄ λ§μΆ°μ Έ μλ€λ λ»μ΄λ€.
νμ§λ§ μ΄λ€ μ©μ΄λ μ’ μ’ μνΈκ΅νμ μΌλ‘ μ¬μ©λκΈ°λ νλ©°, μ»΄ν¨ν° μμ€ν μμ λ€μν μν μ μννλ―λ‘, ꡬ체μ μΈ μ©μ΄ ν΄μμ μ¬μ©λλ 컨ν μ€νΈμ λ°λΌ λ¬λΌμ§ μ μλ€. μλ₯Όλ€μ΄ 리λ μ€μμ ν¬νΈ/νλ‘ν μ½ μ 보λ₯Ό μ μν΄λμ /etc/services λλ ν λ¦¬κ° μκΈ° λλ¬Έμ λ OSμμ 'μλΉμ€'μ 'λ°λͺ¬'μ νΌμ©λμ΄ μ°μΈλ€κ³ 보면 λλ€.
κ·Έλ μ§λ§ μλμ° μΌλ° μ루μ μμλ λ°λͺ¬μ΄λΌλ μ©μ΄λ₯Ό μ°κΈ°λ νλ€. κ·Έ μ루μ μ κΈ°λ₯μ μννκΈ° μν΄μλ νμμ μΌλ‘ νμ μ€νμ΄ λμ΄ μμ΄μΌ νκΈ°μ, νλ‘μΈμ€λΌ λΆλ₯΄λ©΄ μ‘°κΈ μ΄μν΄μ Έ λ°λͺ¬μ΄λΌ λΆλ₯΄λ κ²μ΄λ€.
# μ°Έκ³ μλ£
https://hec-ker.tistory.com/323
https://jins-dev.tistory.com/entry/Daemon-%EA%B3%BC-Background-Process-%EC%9D%98-%EC%B0%A8%EC%9D%B4%EC%A0%90
https://blogger.pe.kr/770