Linux进程有2种启动方式:1、手工启动进程,指的是由用户输入命令直接启动一个进程,根据所启动的进程类型和性质的不同,其又可以细分为前台启动和后台启动两种方式。2、调度启动进程(事先进行设置,根据用户要求,进程可以自行启动);Linux中任务可以被配置在指定的时间、日期或者系统平均负载量低于指定值时自动启动。
本教程操作环境:linux7.3系统、Dell G3电脑。
在 Linux 系统中,每个进程都有一个唯一的进程号(PID),方便系统识别和调度进程。通过简单地输出运行程序的程序名,就可以运行该程序,其实也就是启动了一个进程。
总体来说,启动一个进程主要有 2 种途径,分别是通过手工启动和通过调度启动(事先进行设置,根据用户要求,进程可以自行启动),手动启动也可以分为前台启动与后台启动。
Linux手工启动进程
手工启动进程指的是由用户输入命令直接启动一个进程,根据所启动的进程类型和性质的不同,其又可以细分为前台启动和后台启动两种方式。
前台启动进程
前台启动进程是手工启动进程最常用的方式,因为当用户输入一个命令并运行,就已经启动了一个进程,而且是一个前台的进程,此时系统其实已经处于一个多进程的状态(一个是 Shell 进程,另一个是新启动的进程)。
实际上,系统自动时就有许多进程悄悄地在后台运行,不过这里为了方便读者理解,并没有将这些进程包括在内。
当我们前台启动一个进程,并且进程没有退出时,我们使用 ps 命令,就可以看到该进程,比如,我们以前台进程的方式,运行 top 命令,具体命令如下:
top
运行后,终端输出如下:
我们看到,此时,我们以前台的方式运行了 top 进程,现在,我们使用 ps 命令,查看该进程,具体命令如下:
ps -elf |grep top
运行后,终端输出如下:
我们看到,我们使用了 ps 命令,可以看到正在运行的 top 进程,测试完毕,我们按下 q 退出 top 进程。
后台启动进程
进程直接从后台运行,用的相对较少,除非该进程非常耗时,且用户也不急着需要其运行结果的时候,例如,用户需要启动一个需要长时间运行的格式化文本文件的进程,为了不使整个 Shell 在格式化过程中都处于 “被占用” 状态,从后台启动这个进程是比较明智的选择。
从后台启动进程,其实就是在命令结尾处添加一个 “&” 符号。输入命令并运行之后,Shell 会提供给我们一个数字,此数字就是该进程的进程号。然后直接就会出现提示符,用户就可以继续完成其他工作,我们输入以下代码,以后台运行 top 命令,具体命令如下:
top &
运行后,终端输出如下:
我们看到,此时,我们以后台的方式运行了 top 进程,现在,我们使用 ps 命令,查看该进程,具体命令如下:
ps -elf |grep top
运行后,终端输出如下:
我们看到,我们使用了 ps 命令,可以看到正在后台运行的 top 进程,测试完毕,我们使用 kill 命令,杀掉正在后天运行的 top 进程,具体命令如下:
kill 25439
这里的 25439 是进程 id,我们使用该命令,就可以杀死正在后台运行的进程。
说明
以上介绍了手工启动的两种方式,实际上它们有个共同的特点,就是新进程都是由当前 Shell 这个进程产生的,换句话说,是 Shell 创建了新进程,于是称这种关系为进程间的父子关系,其中 Shell 是父进程,新进程是子进程。
值得一提的是,一个父进程可以有多个子进程,通常子进程结束后才能继续父进程;当然,如果是从后台启动,父进程就不用等待子进程了。
Linux系统调度启动进程
在 Linux 系统中,任务可以被配置在指定的时间、日期或者系统平均负载量低于指定值时自动启动。
例如,Linux 预配置了重要系统任务的运行,以便可以使系统能够实时被更新,系统管理员也可以使用自动化的任务来定期对重要数据进行备份。
实现调度启动进程的方法有很多,例如通过 crontab、 at 等命令。
相关推荐:《Linux视频教程》
以上是Linux进程有几种启动方式的详细内容。更多信息请关注PHP中文网其他相关文章!