daemon และบริการต่างกันหรือไม่?


10

daemon และบริการต่างกันหรือไม่?

หรือว่าพวกเขาทั้งคู่เป็นแอพพลิเคชั่นที่มีอยู่ในหน่วยความจำและถูกผูกไว้กับพอร์ตที่เฉพาะเจาะจงและรับฟัง / ตอบสนองต่อการร้องขอ?


คำตอบ:


7

Daemons และบริการไม่เหมือนกัน

"บริการ" สามารถอ้างถึง Daemon หรือบริการ

daemon เป็นชุดย่อยของบริการที่มักจะทำงานในหน่วยความจำที่รอบริการคำขอ

โดยทั่วไปแล้วบริการที่ไม่ใช่ daemon จะถูกจัดการโดย xinetd xinetd คอยฟังคำขอจากนั้นเริ่มบริการที่จำเป็นในการจัดการคำขอ หลังจากบริการได้รับการร้องขอบริการจะหยุดอีกครั้ง

บริการที่ไม่ใช่ daemon ทั่วไป: rsync vsftpd

บริการ daemonized ทั่วไป: MySQL Apache


1
xinetd ถูกสร้างขึ้นเพื่อให้บริการอื่น ๆ เพื่อการอนุรักษ์ทรัพยากร แต่ไม่ได้ทำให้พวกเขาไม่ใช่ daemons ตัวอย่างของ non-daemons ของคุณรวมถึง deaemon ... vsftpd ลงท้ายด้วย d เพราะมันเป็นแบบแผน (แต่ไม่จำเป็น) เพื่อตั้งชื่อ unix deamons ด้วยโฆษณาในตอนท้ายเพื่อยืนต่อ Daemon .... vsftp-daemon :-)
Bart Silverstrim


คุณยังใช้ xinitd วันนี้หรือไม่? ฉันเดาว่า xinitd สร้างปัญหามากกว่าที่จะช่วยได้ (วันนี้)
guettli

13

daemons และบริการเป็นสิ่งเดียวกัน

อย่างไรก็ตามไม่จำเป็นต้องเชื่อมโยงกับพอร์ต HALd เป็น daemon ที่ตรวจสอบว่าเสียบปลั๊กฮาร์ดแวร์และติดตั้งอย่างถูกต้อง crond เป็น daemon ที่ช่วยให้รถไฟตรงเวลา


ดังนั้นพวกเขามักจะถูกผูกไว้กับพอร์ตหรือเหตุการณ์ระดับ OS?
Blankman

2
@Blankman: daemon มีหน้าที่ต้องทำ - คุณไม่ได้รันถ้ามันไม่มี ต้องได้รับข้อมูลจากที่อื่น แหล่งที่มาทั่วไปคือเครือข่าย แต่อาจเป็นเวลาที่ผ่านไป (cron) หรือบัสเชื่อมต่ออุปกรณ์ต่อพ่วงต่างๆ (HALd) หรือ ...
Jonathan Leffler

2

ใช่ - daemons ทำงานบนกล่องที่เหมือน Unix และให้บริการบน Windows

เมื่อสิบปีที่แล้ว daemons ยังคงไปเรื่อย ๆ และบริการไม่ได้

เมื่อสองสามทศวรรษที่ผ่านมาภูตก็ไม่ได้ไปเรื่อย ๆ เช่นกัน

ดังนั้นจริงๆแล้วฉันหมายถึงไม่ - ไม่มีความแตกต่างอย่างมีนัยสำคัญระหว่างบริการและ daemons

โปรดทราบว่า 'cron' เป็น daemon มันไม่ได้ผูกพันกับเครือข่ายเลย


3
ตามแนวคิดแล้วพวกมันเหมือนกัน โปรแกรมระบบที่ดำเนินการงานพื้นฐานบางอย่างไม่ยึดติดกับโดยเฉพาะอย่างยิ่งในการเข้าสู่ระบบผู้ใช้ ...
Bart Silverstrim

0

เนื่องจากการแจกแจงลินุกซ์ที่สำคัญทั้งหมดใช้ systemd วันนี้มันเป็นไปได้ที่จะค้นหาสิ่งที่ systemd พูดเกี่ยวกับมัน:

จาก man systemd

systemd เป็นผู้จัดการระบบและบริการสำหรับระบบปฏิบัติการ Linux

...

หน่วยบริการซึ่งเริ่มต้นและควบคุม daemons และกระบวนการที่ประกอบด้วย สำหรับรายละเอียดดู systemd.service (5)

...

systemctl daemon-reexec (รีสตาร์ท systemd)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.