进程控制再学习

0.“开两个终端窗口”

因为学校用的虚拟机,得用终端登录,不能像shell一样直接复制窗口。

我们只需要登录两次就可以了(方便监视)

进程控制再学习_第1张图片

进程控制再学习_第2张图片

1.ps

 1.循环ps

while :;do ps -f;ps -ef|grep zombie;done

每秒打印一次:

while :;do ps -f;ps -ef|grep zombie;sleep1;done

一个非常完美的监视打印:

while :;do ps axj | head -1 && ps axj | grep zombie | grep -v grep; sleep 1 ; echo "-------------"; done

说明:

1.head -1:

head -1是一个命令行指令,用于从输入中提取第一行内容。它将从标准输入或指定的文件中读取内容,并只输出第一行。

2.grep -v 可以删去后面指定名字的进程(因为grep也是进程)

3.echo 就是输出分隔符,更美观

细节:

1.axj 比 -f 额外包括系统守护进程信息

2.-f 和 -ef的区别:-ef会打印所有用户的进程:

进程控制再学习_第3张图片

2.二叉树子进程题的提示代码

(题:)

编例实现创建n=2d-2个子进程P1,P2,…,Pn,其中,d是树的深度且d>=1, P1和P2是调用进程的子进程,P3和P4是P1的子进程,P5和P6是P2的子进程。也就是各进程之间的关系是:Pi是P2i+1和P2i+2的父进程,也是组成二叉树的关系,如下图所示。请将各进程ID及其父进程ID打印出来。参考运行结果如下。 要求:(1)每个父进程都要等待子进程(如果)退出后才能退出;(2)d通过命令行参数传入;(3)附上源代码截图和运行结果截图。(10分)

进程控制再学习_第4张图片

进程控制再学习_第5张图片

(提示,有的只有父进程走,有的只有子进程走)

3.管道——左边的输出是右边的输入

当数据通过管道传递时,它会按照字节流的方式进行传输。管道会将一个程序的输出直接作为下一个程序的输入。

4.syslog的日志文件存储位置

进程控制再学习_第6张图片

你可能感兴趣的:(系统编程,linux,运维,服务器)