目录
前言(进程的特性):
进程有四大特性:
竞争性: 系统进程数目众多,而CPU资源只有少量,甚至1个,所以进程之间是具有竞争属性的。为了高效完成任务,更合理竞争相关资源,便具有了优先级
独立性: 多进程运行,需要独享各种资源,多进程运行期间互不干扰
并行: 多个进程在多个CPU下分别,同时进行运行,这称之为并行
并发: 多个进程在一个CPU下采用进程切换的方式,在一段时间之内,让多个进程都得以推进,称之为并发。 上下文 (计算机) - 维基百科,自由的百科全书 (wikipedia.org)
那么Linux系统是如何实现并发的呢?深入理解Linux内核进程上下文切换-腾讯云开发者社区-腾讯云 (tencent.com)
1.认识环境变量
1.1 PATH
在Linux终端,我们输入指令,程序会直接运行指令对应的程序,但当我们编写好一个可执行程序时,执行它为什么要加上“ ./ ”呢?
或者这样说,为什么我们执行自己编写的可执行文件时要指定路径,而执行指令时则不用呢?本质上都是可执行文件。
因为当我们在命令行中输入指令后,系统会自动在PATH环境变量中,去进行查找。
查看环境变量PATH:
(以冒号为各个绝对路径的分隔符)
如果我们想执行“./mycmd”,只要在命令行中输入指令mycmd回车,可以把该条指令所在的绝对路径添加到环境变量PATH中,
就算重命名mycmd,执行重命名后的可执行文件也不用添加路径。
如果我们一不小心将PATH中的所有路径都覆盖了,会怎么样呢? 大多数指令无法正常执行。我们现在重启Xshell,就会恢复原来的环境变量。因为我们修改的PATH是存在内存当中,修改内存中的PATH,并不会影响磁盘中PATH最初的配置。
1.2 HOME
指定用户的主工作目录(即用户登陆到Linux系统中时,默认的目录)
1.3 SHELL
当前Shell,它的值通常是/bin/bash。
1.4 HISSIZE
记录历史指令的个数,与指令history的相关。