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

一:前台进程

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

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

二:后台进程

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

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

三:守护进程

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

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

守护进程创建流程:

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

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

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

相关推荐
竹之却2 分钟前
Linux Vim 编辑器的使用
linux·编辑器·vim
码上飞扬7 分钟前
Nginx功能及应用全解:从负载均衡到反向代理的全面剖析
运维·nginx·负载均衡
良许Linux10 分钟前
为什么我学了几天 STM32 感觉一脸茫然?
linux
良许Linux20 分钟前
为什么程序员必须坚持写技术博客?
linux
azaz_plus21 分钟前
Linux makefile的一些语法
linux·makefile
奔跑吧 android26 分钟前
《Linux内存管理:实验驱动的深度探索》【附录】【实验环境搭建 4】【Qemu 如何模拟numa架构】
linux·qemu·内存管理·kernel
良许Linux33 分钟前
不想做程序员了,自己又没其他本领,能干什么呢?
linux
Brilliant Nemo39 分钟前
Docker 镜像相关的基本操作
运维·docker·容器
良许Linux43 分钟前
程序员加班的真正原因是什么?
linux
良许Linux1 小时前
C++ 程序员入门需要多久,怎样才能学好?
linux