nginx研究记录(二)
0.前言
上次学习nginx已经是一个月前了,虽然这个月断断续续在学,但效果其实并不好,每次学完都不知道前面学的是什么了。
今天自己又硬着头皮继续学,即使他是Linux和我工作无关,但这毕竟是半衰期长的事情,要多做一些。
为了避免学习的枯燥,我这次并没有完全敲代码,只是大概过了一遍流程,让自己有个印象即可
1.终端与bash进程
ps是进程查看命令,grep是文本搜索工具,这条命令表示查找包含bash字样的进程
1
ps -ef |grep bash
进程ID是1182就是bash进程,也就是Xshell连接到Ubuntu Linux虚拟机产生的进程
新增加一个Xshell与虚拟机的连接,发现bash也会多一个
pts是虚拟终端
每个虚拟终端连到虚拟机上,都会打开一个bash进程(也叫shell—壳)
这个输入各种命令的黑窗口就是bash,用于解释用户输入的命令
在Xshell中输入一条命令并且按下回车键后,命令就会被bash进程解释并执行(bash就是shell,也就是命令行解释器是个可执行程序)
2.信号
根据我的大概理解,是这样的,信号在Linux中大部分以SIG开头,其实是个数字,通过搜索Linux中文件内容时,你会发现它的宏定义
信号可以自己发给自己,也可以由操作系统内核来发送
自己发给自己(进程发给进程),也就是热更新,master发一个信号给自己,但其实收到信号的master其实是旧的master,根据信号再做一些操作。
操作系统内核来发送,比如键盘的命令,Ctrl+C中断信号,内存访问异常等
3.Kill
大部分想到Kill第一印象无非是杀死进程
但其实Kill并不都是杀死,他只不过也是给进程发送了一个信号,操作系统会根据信号来执行动作,大部分时候动作都是终止收到信号的这个进程
Kill其实能给进程发送很多种信号的
另外进程的状态,信号处理的相关动作就不一一细讲了,避免成为摘抄书籍
本文由作者按照 CC BY 4.0 进行授权