信号之间的通信与守护进程

那么问题来了,有没有哪个进程脱离终端还在运行呢???
哈哈,在 Linux 中我们需要控制哪个程序的运行情况时必须要使用相关的命令。
第一位主角就是 kill
信号之间的通信与守护进程我们可以使用 kill 命令查看系统内的所有信号:
信号之间的通信与守护进程我们中止一个信号 ctrl+c 其实就是 图中的 2 号信号。
在这图中还有一个信号非常重要那就是 9 号信号,因为该信号不能被捕获,则就会被杀死使其 终止
信号之间的通信与守护进程那我们现在来回答文章开头的问题? 即**守护进程(deamon)**脱离终端就可以运行。
先介绍一个与守护进程相似的命令 nohup 先运行一个普通进程:
信号之间的通信与守护进程
信号之间的通信与守护进程因为输出太多我们使用管道符来进行过滤:
信号之间的通信与守护进程想一下如果我们把刚刚运行 tail -f 的窗口终端给关了,这个进程在新的窗口还会存在么?
信号之间的通信与守护进程

即系统会自动杀死这个进程。
主角二号登场:
信号之间的通信与守护进程那我弱弱的问一个问题,程序运行时不挂起是啥意思?
程序挂起可以理解为暂时淘汰出内存的进程,因为计算机的资源是有限的啊。当要运行时才会不挂起,所以nohup的作用是让这个进程一直占据资源。
信号之间的通信与守护进程和刚刚的操作一样,关闭程序运行的终端:程序运行并不受影响
信号之间的通信与守护进程来脑补,我们启动 windows的时候打开服务里面有许多的进程都在自动运行:
信号之间的通信与守护进程而我们这里说到的守护进程也就恰恰如此啦。在开机后就会自动启动。那nohup 和 守护进程有啥区别呢?
信号之间的通信与守护进程
第一个: 运行环境目录不同
nohup :
信号之间的通信与守护进程deamon :
信号之间的通信与守护进程第二个: 输入,输出的文件位置不同
nohup:
信号之间的通信与守护进程

deamon:
信号之间的通信与守护进程
但总的来说来着的目的是相同的—》让程序脱离终端还能运行
球场风云,两分钟全知道:
我们今天复习了进程之间的通信,也知道 kill 命令咋传送型号了。2号信号是中止进程的,9号信号是终止进程的,我们得抠字眼才明白。 nohup命令与守护进程的目的是让程序脱离终端还能运行。