Linux中 前台、后台和守护进程区别

一:前台进程

前台进程运行时会占据当前命令行界面,直到进程执行完,在进程执行期间,不能在当前命令行界面做其它的操作。

前台进程的父进程就是启动该进程的shell,该shell终端关闭,前台进程也就结束了;

二:后台进程

在命令行终端启动后不会占据当前命令行界面,在后台进程执行期间可以在当前终端做其它交互。

后台进程的父进程仍然是当前shell,如果关闭shell终端,也可能会导致放入后台的后台进程跟着关闭。

三:守护进程

守护进程是一种特殊的后台进程,特殊点在于在命令行终端创建守护进程后,守护进程会和当前shell断开联系。

此时变为一个孤儿进程被PID为1的进程收养,所以守护进程不受任何终端的影响,关闭shell后不会停止守护进程。

守护进程创建流程:

(1)启动一个进程A后,A会fork一个进程B,此时A退出,B独立运行。

(2)B通过一系列操作确保自己无控制终端,从而变为孤儿进程。

(3)B被PID为1的进程收养,独立于终端运行。

相关推荐
石像鬼₧魂石12 小时前
Windows Server 2003 域控制器靶机搭建与渗透环境配置手册
linux·windows·学习
Bits to Atoms12 小时前
宇树机器人二次开发环境配置 -- docker创建
运维·docker·容器
RisunJan12 小时前
Linux命令-killall(根据进程名称来终止一个或多个进程)
linux·运维·服务器
信码由缰12 小时前
塑造2026年的六大软件开发与DevOps趋势
运维·devops
小-黯12 小时前
Linux桌面入口文件.desktop文件内容格式
linux·运维·服务器
Serverless社区13 小时前
探秘 AgentRun|基于 Serverless 的 AI Agent 沙箱工程化之路
运维·阿里云·云原生·serverless·函数计算
CheungChunChiu13 小时前
Flutter 在嵌入式开发的策略与生态
linux·flutter·opengl
十五年专注C++开发13 小时前
CMake基础: 在release模式下生成调试信息的方法
linux·c++·windows·cmake·跨平台构建
不会代码的小猴13 小时前
Linux环境编程第三天笔记
linux·笔记
~光~~13 小时前
【嵌入式linux学习】04_Pinctrl 和 GPIO子系统
linux·rk3588·嵌入式linux