FreeBSD 是一个多任务操作系统。 这就意味着好像一次可以运行一个以上的程序。 每个占用一定时间运行的程序就叫 进程 (process)。 你运行的每一个命令会至少启动一个新进程,还有很多一直运行着的系统进程, 用以维持系统的正常运作。
每个进程用来标识的一个编号就叫
进程 ID, 或叫 PID。
而且,就像文件那样,每个进程也有所属用户和所属群体。
所属用户和所属群体使用在这方面:确定这个进程可以打开那些文件和那些设备,
从而在初期使用文件的权限。 多数的进程都有一个父进程,
而进程是依靠父进程来启动的。
例如,假如您把命令输入到shell里那shell是一个进程,而您运行的各个命令同样是进程,
那么,shell就是您各个运行进程的父进程。
而这方面有一个例外的进程就叫init(8)。
init
始终是首个进程,,所以他的PID始终是1,
而init
在FreeBSD起动时由内核自动启动。
在系统上,有两个命令对进程观察非常有用:ps(1) 和 top(1)。
这个ps
命令作用是观察当前运行进程的状态,
显示他们的PID,使用了多少内存,它们启动的命令行。
而top
命令则是显示所有运行进程,并在以秒计的短时内更新数据。
您能交互式的观察您计算机的工作。
默认情况下, ps
仅显示出您自己所运行的命令。
例如:
在这个例子里您可看到,从 ps(1) 输出的每一列是有规律的。
PID
就是进程ID,这个较早前已讨论过了。
PID号的分配由 1一直上升直到99999,
当您运行到超过限制时,这些编号会回转分配
(仍在使用中的 PID 不会分配给其他进程)。
TT
这一列显示了程序运行所在的终端, 目前可以安全地忽略。
STAT
显示程序的状态,也可以安全地被忽略。
TIME
是程序在CPU处理时间──运行的时间量,
并不是指您程序启动到现在的所用的时间。
许多程序碰巧遇到某方面在他们之前要花费大量CPU处理时间时,他们就必须等候。
最后, COMMAND
是运行程序时使所用的命令行。
ps(1)支持使用各种选项去改变显示出来的内容,
最有用的一个就是auxww
。
a
选项显示出所有运行进程的内容, 而不仅仅是您的进程。
u
选项显示出进程所归属的用户名字以及内存使用,
x
选项显示出后台进程。 而
ww
选项表示为 ps(1) 把每个进程的整个命令行全部显示完,
而不是由于命令行过长就把它从屏幕上截去。
下面和从top(1)输出是类似的,一个示例式对话就象这样子:
这个输出分成两部份。 前面部份(起始前五行) 显示了:运行于最后进程的PID、 系统负载均衡 (那个是指系统繁忙时的调节方式)、 系统正常运行时间 ( 指从启动算起所用的时间) 和当前时间。 前面部份另外的图表 涉及:多少进程在运行(这个情况是47), 多少内存和多少交换分区在使用, 和在不同CPU状态里系统消耗多少时间。
在那下面一连串的纵列和从ps(1)输出的的内存是相似的。 如以前ps(1)一样,您能见到:PID、用户名、CPU处理时间合计、运行的命令。 top(1)默认是显示您的进程所用内存空间的合计。 内存空间这里分成两列,一列为总体大小,另一列是必须请求驻留大小是多少内存──总体大小。 而驻留大小实际上是瞬间使用的多少。 在以上那个例子,您会看到那Netscape®总计需要30 MB内存, 但实际只用了9 MB。
top(1) 每两秒自动刷新一次,您可以用s
改变刷新的秒数。
本文档和其它文档可从这里下载: ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.
如果对于FreeBSD有问题,请先阅读
文档,如不能解决再联系
<questions@FreeBSD.org>.
关于本文档的问题请发信联系
<doc@FreeBSD.org>.