Olivier Lalonde Asked: 2010-10-02 14:07:23 +0800 CST2010-10-02 14:07:23 +0800 CST 2010-10-02 14:07:23 +0800 CST 常规流程和服务有什么区别? 772 常规进程(如 firefox、gimp、skype 等)和服务(httpd、mysqld 等)之间有什么区别?显然,服务的功能不同,但我真的很想知道操作系统级别的幕后情况是什么?他们有什么不同的待遇吗? services terminology 1 个回答 Voted Best Answer Gilles 'SO- stop being evil' 2010-10-02T14:53:07+08:002010-10-02T14:53:07+08:00 在底层,服务是普通的流程。让他们与众不同的是他们所做的事情以及他们是如何开始的(但这不是一个硬性的定义)。服务通常没有用户界面,通常在系统启动并在后台运行时启动,监听来自其他程序或通过网络的请求。此类进程在 unix 世界中称为守护进程。 有一个更笼统的服务定义,它更具概念性:服务是您的计算机提供的功能。此定义与命令管理的内容大致匹配service。许多服务由守护程序提供,但并非总是如此。例如,gdm服务(默认登录管理器)由一个不是真正守护进程的进程提供(它有一个用户界面供您输入密码)。像console-setup,mountall或networking(以 为例/etc/init)这样的服务不是由连续运行的进程提供的,而是通过运行一些改变状态的命令来启用和禁用的。 另一个有点相关的概念是服务器。服务器是侦听来自其他程序的连接的程序。(连接可能来自网络或通过各种本地通信方式。)许多服务器是守护程序,但短期程序可以是服务器,不会被视为守护程序;具有用户界面的程序也不会被视为守护程序。例如,Emacs 编辑器可以运行一个服务器,该服务器侦听打开文件的外部请求(即运行emacsclient myfile通过联系其关联进程在 Emacs 的运行实例中打开一个文件emascsserver);Emacs 可以以守护程序模式启动,这意味着服务器已启动但没有 GUI(打开文件时将打开一个窗口)。通过扩展,服务器计算机是主要目的是运行服务器程序的计算机。
在底层,服务是普通的流程。让他们与众不同的是他们所做的事情以及他们是如何开始的(但这不是一个硬性的定义)。服务通常没有用户界面,通常在系统启动并在后台运行时启动,监听来自其他程序或通过网络的请求。此类进程在 unix 世界中称为守护进程。
有一个更笼统的服务定义,它更具概念性:服务是您的计算机提供的功能。此定义与命令管理的内容大致匹配
service
。许多服务由守护程序提供,但并非总是如此。例如,gdm
服务(默认登录管理器)由一个不是真正守护进程的进程提供(它有一个用户界面供您输入密码)。像console-setup
,mountall
或networking
(以 为例/etc/init
)这样的服务不是由连续运行的进程提供的,而是通过运行一些改变状态的命令来启用和禁用的。另一个有点相关的概念是服务器。服务器是侦听来自其他程序的连接的程序。(连接可能来自网络或通过各种本地通信方式。)许多服务器是守护程序,但短期程序可以是服务器,不会被视为守护程序;具有用户界面的程序也不会被视为守护程序。例如,Emacs 编辑器可以运行一个服务器,该服务器侦听打开文件的外部请求(即运行
emacsclient myfile
通过联系其关联进程在 Emacs 的运行实例中打开一个文件emascsserver
);Emacs 可以以守护程序模式启动,这意味着服务器已启动但没有 GUI(打开文件时将打开一个窗口)。通过扩展,服务器计算机是主要目的是运行服务器程序的计算机。