第7 页FreeBSD 使用手册
来显示后台运行的进程信息,ww 用来显示所有的命令行,一旦它比较长而超出屏幕时,就
会截取其中一段 。
Top 的输出也比较熟悉 。可以看看下面的例子;
% top
last pid: 72257; load averages: 0.13, 0.09, 0.03 up 0 13:38:33
22:39:10
47 processes: 1 running, 46 sleeping
CPU states: 12.6% user, 0.0% nice, 7.8% system, 0.0% interrupt, 79.7% idle
Mem: 36M Active, 5256K Inact, 13M Wired, 6312K Cache, 15M Buf, 408K Free
Swap: 256M Total, 38M Used, 217M Free, 15% Inuse
PID USERNAME PRI NICE SIZE RES STATE TIME WCPU CPU COMMAND
72257 nik 28 0 1960K 1044K RUN 0:00 14.86% 1.42% top
7078 nik 2 0 15280K 10960K select 2:54 0.88% 0.88%
xemacs-21.1.14
281 nik 2 0 18636K 7112K select 5:36 0.73% 0.73% XF86_SVGA
296 nik 2 0 3240K 1644K select 0:12 0.05% 0.05% xterm
48630 nik 2 0 29816K 9148K select 3:18 0.00% 0.00%
navigator-linu
175 root 2 0 924K 252K select 1:41 0.00% 0.00% syslogd
7059 nik 2 0 7260K 4644K poll 1:38 0.00% 0.00% mutt
...
第8 页FreeBSD 使用手册
整个输出被分为两节 。头上(最初5 行)显示运行着的进程的PID,系统的平均负载(反
映系统的繁忙程度),系统的正常运行时间(从上次重起以来的时间),和当前时间 。其
它的图显示了当前运行了多少个进程,有多少内存和交换空间已经被占用,系统在不同CPU
状态之间切换需要花费多长时间 。
下面有一连串的竖直排列的ps 命令的输出信息 。你可以看到PID,用户名,CPU 时钟
的花费数量,正在运行的命令 。Top 也默认地显示了进程所花费掉的内存空间的数量 。这可
以被分成两列,一列针对所有的内存数量,一列针对常驻内存数量 。整个内存数量就是应
用程序需要多少内存,常驻内存是在此刻使用的内存数量 。在这个例子中,你可以看到
Netscape 使用了30M 内存,当前只使用了9MB 。Top 每隔两秒自动刷新一次;这可以通过加
上s 选项来修改 。
3.6 守护程序,信号和杀死进程
当你使用一个编辑器的时候,你可以要求它加载一些文件 。因为它们提供了这样的功
能,而且它们是与一个终端连在一起的 。但,有一些程序却不能让用户输入信息,它们是
不与终端连在一起的 。例如,一个web 服务器花费所有的时间来回应用户的请求,它通常
不需要你有任何的输入 。从一个站点到另一个站点传送email 是另外一个这种类型的应用
例子 。我们叫这些程序为daemons(守护程序) 。Daemon 具有希腊神话的特征;今天的许
多web 服务器和mail 服务器都使用这些 。有时你可能需要与一个守护程序进行通讯 。这些
通讯就叫做signal 。你可以通过给它发送signal(或是运行进程)来与守护程序通讯 。如
果你发送的signal 有很多(有一些有特殊的用处),其它的与应用程序集成在一起,应用
程序的文档会告诉你如何解释signal 。你可以发一个signal 给你的一个进程 。如果你设法
发送一个signal 给其他人的进程,它就会被忽略 。Root 用户除外,它可以发送signal 给
每一个进程 。
如果一个应用程序写入错误,就会设法访问内存,FreeBSD 会给进程发送Segmentation
Violation signal (SIGSEGV) 。如果一个应用程序使用alarm 系统来发出警告,那一段时
间以后,它也会发送警告信号 。
两个信号可能会中断一个进程,SIGTERM 和SIGKILL 。SIGTERM 是一个比较友好的杀死
进程的方法;这个进程也会捕获信号,以便让你关机,关闭可能打开的一些日志文件 。在
第9 页FreeBSD 使用手册
关机之前,通常需要完成当前正在做的工作 。有时,如果它是处在一个不能打断的任务中,
一个进程可以忽略SIGTERM 。
推荐阅读
- FreeBSD 4.0 Kernel Hacking Guide--vm/vm_init.c
- FreeBSD 5.3 ports 安装 AMP
- FreeBSD handbook中文版 9 配制FreeBSD 的内核
- FreeBSD命令ps介绍
- freebsd 配制文件
- FreeBSD的系统log日志
- FreeBSD对硬盘容量的要求
- FreeBSD handbook中文版 15 串口通讯
- 在FreeBSD 4.0下安装USB鼠标支持
- 2 FreeBSD handbook中文版 11 打印 高级打印机设置 B.Header Pages
