控制台窗口主进程一直响(控制台窗口主进程是什么)
控制台前台与后台知识点汇总:

控制台的前台和后台
前台启动
一般地,用户键入一个命令“ls –l”,这就已经启动了一个进程,而且是一个前台的进程。这时候系统其实已经处于一个多进程状态。
或许有些用户会疑惑: 我只启动了一个进程而已。但实际上有许多运行在后台的、系统启动时就已经自动启动的进程正在悄悄运行着。
还有的用户在键入“ls –l”命令以后赶紧使用“ps –x”查看,却没有看到 ls 进程,也觉得很奇怪。其实这是因为 ls 这个进程结束太快,使用 ps 查看时该进程已经执行结束了。
如果启动一个比较耗时的进程:
find / -name fox.jpg
然后再把该进程挂起,使用 ps 查看,就会看到一个 find 进程在里面。
后台启动
直接从后台手工启动一个进程用得比较少一些,除非是该进程甚为耗时,且用户也不急着需要结果的时候。假设用户要启动一个需要长时间运行的格式化文本文件的进程。为了不使整个 shell 在格式化过程中都处于“瘫痪”状态,从后台启动这个进程是明智的选择。
由上例可见,从后台启动进程其实就是在命令结尾加上一个&号。键入命令以后,出现一个数字, 这个数字就是该进程的编号,也称为 PID,然后就出现了提示符。用户可以继续其他工作。
上面介绍了前、后台启动的两种情况。实际上这两种启动方式有个共同的特点,就是新进程都是由当前 shell 这个进程产生的。也就是说,是 shell 创建了新进程,于是就称这种关系为进程间的父子关系。这里 shell 是父进程,而新进程是子进程。一个父进程可以有多个子进程,一般地,子进程结束后才能继续父进程;当然如果是从后台启动,那就不用等待子进程结束了。

进程放入后台运行

控制台的任务
jobs
进程这一概念是对系统而言,对每一个控制台,我们则称为 jobs。
与进程有进程号一样,使用 kill、renice 等指令操作进程使用进程号,使用 fg、bg 指令操作 jobs 使用工作号。
bg 使挂起的进程在后台运行。
例如,当你已经在前台启动了一个命令时(没有在此命令后面使用&),意识到这一命令将运行叫长一端时间,但此时还须使用 shell。在这种情况下,可通过在按下 Ctrl 键的同时按下 Z 键挂起当前运行的进程。此时你即可以使它长期挂起,也可以通过输入 bg 把这一进程放到后台运行。这样便可以把 shell 解放出来。从而用于其他命令的执行。
fg 使被挂起的进程恢复到前台运行。
对于 jobs,我们也可以通过 kill [-signal] %jobID 来控制。







