第七讲:监视进程管理
程序是一个可执行文件(Process)是正在运行程序一个实例。
System V支持许多进程同时运行,各种系统通过调用可用进程
去创建新进程,与其他进程通讯,以及终止其他进程。 进程族系
新进程创建时,内核会分配一个进程标识号(PID)给它,并对 进程表中添加说明讯息。
由一个进程创建另一新进程,老进程为父进程,新进程为子进程。
用户Shell执行的大多数命令又是它的子进程,子进程则运行命令。
而父进程允许有多个子进程来实现任务等,待子进程完成。一个
父进程可以有多个子进程,但是,一个子进程只有一个父进程。
前台及後台进程
在Shell提示处打入命令後,创建一子进程运行命令,Shell等待
命令退出,然回到对用户提出提示符,这道命令与Shell同步运行, 即在前台运行。
在Shell提示处打入的命令,若随一个&,Shell创建的子进程运行此命令,但不等待
命令退出,而直接返回到对用户提出提示。这道命令与Shell同步运行,即在台运行。
$sleep 10 &
精灵进程
精灵进程是一个进程,它与终端和用户都无联系,也有人喜欢称
他为管家婆。精灵完成一些周期性的事,平时它睡眠。用ps (C)
命令可看到精灵,它在tty区域中带有问号(?)。
-Sched:PID
0,它完成进程的程序在存储局和盘交换局之间交 换工作。
-init:PID
1,系统自动建的第一用户进程,它负责初始化引导和注册过程,也就是所有
非系统进程的祖先。它会在终端口上, 启动getty (M)进程。
-vhand:PID
2,页面精灵,它频繁地把储页面内容送往交换区。
-bdfush:PID
3,定期刷新高速缓到盘(默认情况,每13秒刷 新一次)
-logger:归档系统出错讯息。
-cron:在调度时运行作业。
-Ipsched:脱机打印精灵。
孩儿进程
孤儿进程在父进程终止仍旧活动,由init(M)认它为乾儿子。 僵尸进程则是进程已终止,
但进程还未撤消,因为父进程并未「等待」它,进程表仍保留著这□体,进程表的□体
是僵尸进程所 消耗的资源。
随著新进程的创建,出现大量□体,但总数是有限制的,因此影 响新进程的产生。
而孩儿进程与僵尸进程不同,并不会影响系统 效率。
通常,在父进程死去时,才会移去僵尸进程。若他们还未移去, 应由init (M)继承并移去它。
监视进程
监视进程监注册户的数量,用以记系统的性能;亦会监视用户进程,包括挂起进程;
以及装载均值等系统性能问题。 要显示进程信息,可以利ps(C)命令报告,进程状态。
在默认 情况下,仅会报告与当前终端有联系的有关讯息。
若用户没有root权限,ps仅限以说明运行进程,报告用户的进程讯息。若用户有root权
限,则会报告在所有终端上所有用户的进程讯息。
$ ps-u joana
--u 〈username〉选项显示指定用户的讯息。
--t 〈ttynamt〉选项显示指定终端有关的进程讯息。
而ps -elf命令则提供了需有F、S、C、PRI、NI、TIME字段的 使用讯息。
-F是标记,指示进程位置,20表示在内存,0表示交换在盘上, 31是系统进程。
-S是状态讯息,指示进程状态,睡眠还是正在运行。
-C是进程占有CPU的百分率
-TIME是花费CPU的总时间。
| 论坛热门帖子: | [lch203] 写得蛮好的linux学习笔记(10-21) [黑马制造] 学习java的30个目标(10-19) [笑傲股林] 做测试半年了,有点迷茫,应该再学些什么提高自己的测试水平和测试能力呢?(10-19) [udp8589] 大家用google的来吱一声? 用百度的~~也来报道下?(10-18) [沂偌掳兆] 本人总结的一些认为C++比较经典的书籍,希望对大家有用(10-18) |
| TAG标签: | 必读 菜鸟 进程 命令 使用 用户 文件 系统 运行 作业 |
注册
个人空间
