So sánh: App vs Daemon

App là phần mềm người dùng tương tác trực tiếp.
Daemon là tiến trình hệ thống chạy nền để hỗ trợ hoặc cung cấp dịch vụ.

Tiêu chí App (Ứng dụng) Daemon (Dịch vụ nền)
🧩 Định nghĩa Phần mềm dành cho người dùng thực thi tác vụ cụ thể Chương trình chạy nền, phục vụ hệ thống hoặc app khác
👤 Đối tượng sử dụng Người dùng cuối (end-user) Hệ thống hoặc các ứng dụng khác
🖥️ Giao diện Có thể có GUI hoặc CLI Hầu hết không có giao diện người dùng (headless)
⏱️ Thời điểm chạy Khi người dùng chủ động mở hoặc hệ thống gọi Thường khởi chạy cùng hệ thống và chạy liên tục
📌 Tên thường gặp firefox, gedit, htop, vlc... apache2, sshd, dbus-daemon, systemd, cupsd...
📂 Vị trí file thực thi /usr/bin, /usr/local/bin, ~/bin/... /usr/sbin, /lib/systemd/system/, /etc/init.d/...
🧠 Vai trò chính Phục vụ tác vụ của người dùng cụ thể Hỗ trợ hệ thống, cung cấp dịch vụ như web, mạng, in ấn…
📜 Tên gọi Thường là tên ngắn, dễ nhớ Thường kết thúc bằng chữ d (viết tắt của daemon): sshd, systemd, cupsd, dbus-daemon
⚙️ Quản lý khởi động Người dùng tự chạy hoặc khởi động ứng dụng Được quản lý bởi systemd, init, rc.d, hoặc supervisord
🛠️ Cách kết thúc Đóng cửa sổ hoặc Ctrl+C (nếu là CLI) Dùng systemctl, service, hoặc kill bằng PID

Ví dụ cụ thể:

1. App: Firefox

  • Người dùng nhấn vào biểu tượng để mở
  • Giao diện đồ họa đầy đủ
  • Khi tắt, chương trình kết thúc

2. Daemon: sshd (SSH Server)

  • Khởi động khi máy bật
  • Luôn chạy nền để chờ kết nối SSH từ xa
  • Không có giao diện, chạy liên tục đến khi tắt máy