增加系统效率的心得

发表于:2007-07-04来源:作者:点击数: 标签:
我在CLE1.0释出的第一时间就去下载安装,看到电脑 出现 KDE 画面时,简直感动得几乎痛哭流涕,在这里,我要向CLE发展小组致上无限的敬意。 当我开始尝试用 KDE 来取代 Windows 98 处理我日常工作的时候,发现稳定性不错,至少应用程式出问题时,可

  我在CLE1.0释出的第一时间就去下载安装,看到电脑出现 KDE 画面时,简直感动得几乎痛哭流涕,在这里,我要向CLE发展小组致上无限的敬意。
  
    当我开始尝试用 KDE 来取代 Windows 98 处理我日常工作的时候,发现稳定性不错,至少应用程式出问题时,可以不必重新开机。
  但是,效率却没有 Windows 来得好,於是我开始仔细研究系统,想找出瓶颈所在,以下是我的心得。
  我的电脑配备如下:
    处理器: Intel 赛扬 366 MHz
    记忆体: 128 Mb PC100 RAM
    硬 碟: IBM 15Gb 7200 rpm ATA66
    显示卡: Sis 620 AGP
    音效卡: CS46xx
    网路卡: D-Link DFE530TX (ver A)
    显示器: Alfscan G17 17 寸
    作业系统:安装 Windows 98 与 RH7.0 + CLE 1.0 一、开启硬碟 DMA 支援。  
   系统安装完毕後,硬碟的 DMA 是没有打开的,我的方法是在 /etc/rc.d/rc.local 最後面加上一行
  /sbin/hdparm -d1 -c3 -m16 /dev/hda
  这样每次开机後,硬碟的 DMA 就会开启,不必每次手动设定。   
  
  如果您的硬碟机支援 ATA33 可以加上 -X66 这个参数,ATA66则是 -X68,像我的硬碟是 ATA66 那麽完整参数就是
  /sbin/hdparm -d1 -X68 -c3 -m16 /dev/hda
  经过我的测试 ,在 DMA 未开启以前,实际读取效率是每秒约 4.10 Mb 左右,开启 DMA 後,每秒实际读取效率跃升为 20 Mb 大约提升 5 倍之多。
  
  §未开启 DMA 时的测试
  [root@firefly /root]# hdparm -d0 /dev/hda /dev/hda: setting using_dma to 0 (off) using_dma = 0 (off)
  
  [root@firefly /root]# hdparm -Tt /dev/hda /dev/hda: Timing buffer-cache reads: 128 MB in 2.75 seconds = 46.55 MB/sec Timing buffered disk reads: 64 MB in 15.58 seconds = 4.11 MB/sec
  
  §开启 DMA 後的测试结果
  [root@firefly /root]# hdparm -d1 -X68 -c3 -m16 /dev/hda /dev/hda: setting 32-bit I/O support flag to 3 setting multcount to 16 setting using_dma to 1 (on) setting xfermode to 68 (UltraDMA mode4) multcount = 16 (on) I/O support = 3 (32-bit w/sync) using_dma = 1 (on)
  
  [root@firefly /root]# hdparm -Tt /dev/hda/dev/hda: Timing buffer-cache reads: 128 MB in 2.75 seconds = 46.55 MB/sec Timing buffered disk reads: 64 MB in 3.20 seconds = 20.00 MB/sec
  由以上的数据,可以看得出来,硬碟 DMA 是否开启,对读取效率影响很大。
  
  二、关闭多馀的系统服务。   这是老生常谈的题目了,一般我们当作桌上型工作站的时候,只需要启动几个基本的 Service 即可,其他的不但没用,一方面会占用系统资源,另一方面则会有安全上的顾虑,我平常只用来上网、打打文件、听听音乐、看看电影,多半时间只是一个 Client 端,实在没必要启动 Server 端的服务,所以,我在 Setup System Services时,只留下以下几个 Service,其馀的都关闭。   1. crond   2..network   3. syslogd   4. xfs 真的,相信我,只要这四个就足够了!
  
  叁、下载 Kernel 重新编译。   因为系统所预设安装的 Kernel 是为了适用大部分的电脑而做的,并未对你的电脑作最佳化,所以显得臃肿肥大,因为 Kernel 直接掌控着电脑的一切,所以对系统效率影响当然很大。   我的作法是:下载最新的 Kernel 重新编译,将我电脑上的硬体直接编译进 Kernel 里面,不要作成 Module ,对於不需要的就不编译,这样,打造出完全针对自己环境的 Kernel ,才能完全发挥电脑的威力。   至於 Kernel 怎样编译?这就不是我的主题了,大家可以到CLDP 自行参考 KERNEL HOW-TO 中译版。
  
  四、减少虚拟终端机的数量。   系统预设是6个,也就是 CTRL+ALT F1~F6 那六个,我关掉其中四个,只留下 CTRL+ALT F1~F2,大约省下 4 Mbytes 的记忆体,但是这样一来,X-Window 会从原来的 CTRL+ALT F7 变成 CTRL+ALT F3 。   修改 /etc/inittab 中,将 mingetty 3 ~6 全部加上 # 字号,然後下指令 #init q
  
  五、调整 X-Windows 环境   我习惯操作 KDE ,对 GNOME 不熟,所以,以下是都是针对 KDE而设,GNOME 的使用者,我想,应该也差不多啦!   
  1、颜色数设为 16 Bit 就有很好的效果了,24 Bit 除了浪费资源,看不出有何好处。   
  2、不要使用萤幕保护程式。   
  3、取消动画视窗弁遄C   
  4、尽量使用同一种字型。   
  5、浏览器用 Mozilla 不要用 Netscape。   
  6、不要启动音效伺服器 artd 六、调整应用程式优先权。
    一般时候,我们使用任何程式时,其 NICE 值都是 0,意思是CPU 的使用权值。如果我们常用程式有较高的优先权的话,自然效率就会比较好,优先权的值从 -20 到 19 ,数字越小优先权就越高,但要注意的是一般使用者只能调低( 0~19),只有 root 有权调高优先权( -20 ~ 19 )。我们可以用 ps -fel 来观察 NI 那栏就知道。
    说了半天,到底如何调整呢?有一个指令 /bin/nice 就是用来作这件事的,用法如下:nice -n 程式名称 参数....   n 的值从 -20 到 19,这是手动操作,在 KDE 中,可以用选单编辑器来设定,方法是在你要调整优先权的程式的 [ 命令 ] 那一栏的前面,加上 /bin/nice --n 就可以了。
    比方说我常用 Mozilla 来浏览网页,我改成 /bin/nice --10 /usr/local/mozilla/mozilla 这样我的 Mozilla 执行时,就比其他程式有更高的优先权,在实际测试的时候,Mozilla 启动速度以及回应都快了不少,其他一些常用的程式,也可以比照办理。 後记   Linux 真的是一套很棒的作业系统,经过这样调整後,光是开机到登入视窗画面出现,从原来的 48 秒,变成 30 秒,用 top 指令(每秒)观察CPU idle 时间也从 82% 提升到 93%,而视窗程式的反应感觉上与 Windows 98 差不多了。

原文转自:http://www.ltesting.net