为什么Linux中有时会有多个守护进程?

为什么Linux中有时会有多个守护进程?,linux,ubuntu,init.d,Linux,Ubuntu,Init.d,我注意到在我的Ubuntu系统上有三个相同守护进程的实例: root 1167 0.0 0.0 122556 5808 ? Ss 13:53 0:00 smbd -F root 1371 0.0 0.0 122540 1632 ? S 13:53 0:00 smbd -F root 1733 0.0 0.0 125104 4704 ? S 13:58 0:00 smbd -F

我注意到在我的Ubuntu系统上有三个相同守护进程的实例:

root      1167  0.0  0.0 122556  5808 ?        Ss   13:53   0:00 smbd -F
root      1371  0.0  0.0 122540  1632 ?        S    13:53   0:00 smbd -F
root      1733  0.0  0.0 125104  4704 ?        S    13:58   0:00 smbd -F
我的问题是这是否正常以及为什么会发生

我的另一个问题是,如果这不正常,我应该在哪里纠正它

谢谢

每当客户端请求会话时,就会创建会话每个客户端都会为每个会话获取一份服务器副本。此副本然后为该会话期间客户端建立的所有连接提供服务。当来自其客户端的所有连接关闭时,该客户端的服务器副本终止

换句话说,在您的linux机器上有多个活动的smbd会话(也称为windows文件共享会话),运行多个进程是完全正常的

每当客户端请求会话时,就会创建会话每个客户端都会为每个会话获取一份服务器副本。此副本然后为该会话期间客户端建立的所有连接提供服务。当来自其客户端的所有连接关闭时,该客户端的服务器副本终止


换句话说,在您的linux机器上有多个活动的smbd会话(也称为windows文件共享会话),运行多个进程是完全正常的。

是的,这是正常的。这是一种多进程模型,对于用C编写的Unix守护进程来说很常见。例如,您也会发现它适用于httpd(Apache)。httpd在prefork模式下,pre在接收到任何请求之前分叉一些进程,以避免在实际接收请求时分叉延迟。

是的,这是正常的。这是一种多进程模型,对于用C编写的Unix守护进程来说很常见。例如,您也会发现它适用于httpd(Apache)。httpd在prefork模式下,pre在接收到任何请求之前对某些进程进行fork,以避免在实际接收请求时出现fork延迟