Comparison: App vs Daemon

App is software that users interact with directly.

Daemon is a system process that runs in the background to support or provide services.

Criteria App Daemon
🧩 Definition Software intended for users to perform specific tasks A program that runs in the background, serving the system or other apps
👤 Target audience End-user System or other applications
🖥️ Interface May have GUI or CLI Mostly headless
⏱️ When it runs When the user actively opens it or the system calls it Usually starts with the system and runs continuously
📌 Common names firefox, gedit, htop, vlc... apache2, sshd, dbus-daemon, systemd, cupsd...
📂 Executable file location /usr/bin, /usr/local/bin, ~/bin/... /usr/sbin, /lib/systemd/system/, /etc/init.d/...
🧠 Main role Serves specific user tasks Supports the system, provides services such as web, network, printing...
📜 Name Usually short, easy-to-remember names Usually ends with the letter d (short for daemon): sshd, systemd, cupsd, dbus-daemon
⚙️ Startup management Users run or start applications themselves Managed by systemd, init, rc.d, or supervisord
🛠️ How to terminate Close window or Ctrl+C (if CLI) Use systemctl, service, or kill by PID

Specific examples:

1. App: Firefox

  • User clicks icon to open
  • Full graphical interface
  • When shut down, program ends

2. Daemon: sshd (SSH Server)

  • Starts when computer is turned on
  • Always runs in the background waiting for remote SSH connection
  • No interface, runs continuously until computer is shut down