Có sự khác biệt giữa daemon và dịch vụ không?


Câu trả lời:


7

Daemon và Dịch vụ không giống nhau.

"Dịch vụ" có thể đề cập đến Daemon hoặc Dịch vụ.

Một daemon là một tập hợp con các dịch vụ luôn chạy trong bộ nhớ đang chờ để phục vụ một yêu cầu.

Một dịch vụ không phải daemon thường được xử lý bởi xinetd. xinetd lắng nghe yêu cầu, sau đó bắt đầu dịch vụ cần thiết để xử lý yêu cầu. Sau khi yêu cầu được phục vụ, dịch vụ sẽ dừng lại.

Các dịch vụ không phải daemon điển hình: rsync vsftpd

Các dịch vụ được tạo ra điển hình: MySQL Apache


1
xinetd được tạo ra để phục vụ các dịch vụ khác để bảo tồn tài nguyên, nhưng không biến chúng thành phi daemon. ví dụ về phi daemon của bạn bao gồm một deaemon ... vsftpd kết thúc bằng d vì đó là quy ước (nhưng không bắt buộc) để đặt tên cho các deamon unix với quảng cáo ở cuối để đại diện cho Daemon .... vsftp-daemon :-)
Bart Silverstrim


Bạn vẫn sử dụng xinitd ngày hôm nay? Tôi đoán xinitd làm cho nhiều rắc rối hơn nó giúp đỡ (ngày hôm nay).
guettli

13

daemon và dịch vụ là một trong cùng một.

Tuy nhiên, không phải bị ràng buộc với một cổng. HALd là một daemon, theo dõi cắm phần cứng và gắn kết đúng cách. crond là một daemon giữ cho tàu chạy đúng giờ.


Vì vậy, sau đó họ thường bị ràng buộc với một cổng, hoặc các sự kiện cấp hệ điều hành?
Blankman

2
@Blankman: một daemon có một công việc phải làm - bạn không chạy nó nếu nó không hoạt động. Nó phải nhận đầu vào từ đâu đó; một nguồn phổ biến là mạng, nhưng có thể là thời gian trôi qua (cron) hoặc các xe buýt kết nối ngoại vi khác nhau (HALd) hoặc ...
Jonathan Leffler

2

- trình nền chạy trên các hộp giống Unix và các dịch vụ chạy trên Windows.

Ngày xưa một thập kỷ trước, daemon tiếp tục hoạt động vô thời hạn và các dịch vụ thì không.

Ngày xưa cách đây vài thập kỷ, daemon cũng không ngừng đi mãi mãi.

Vì vậy, thực sự, ý tôi là Không - không có sự khác biệt đáng kể giữa các dịch vụ và trình nền.

Lưu ý rằng 'cron' là một daemon; nó hoàn toàn không bị ràng buộc với mạng


3
về mặt khái niệm chúng giống nhau. Các chương trình hệ thống thực hiện một số tác vụ nền không được đính kèm với người dùng đã đăng nhập cụ thể ...
Bart Silverstrim

0

Vì tất cả các bản phân phối linux chính đều sử dụng systemd ngày nay, nên có thể tìm kiếm những gì systemd nói về nó:

từ man systemd

systemd là trình quản lý hệ thống và dịch vụ cho các hệ điều hành Linux.

...

Các đơn vị dịch vụ, bắt đầu và kiểm soát trình nền và các quy trình mà chúng bao gồm. Để biết chi tiết, xem systemd.service (5).

...

systemctl daemon-reexec (không khởi động lại systemd)

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.