当前位置: 首页 > 图文教程 > 服务器 > Windows服务器 > 菜鸟必看 揭开系统资源的神秘面纱

Windows服务器
用Win 2003架设邮件服务器
为Win 2003加装视频压缩
让DNS服务器支持泛域名解析
感受Windows 2003域更名工具
Win2003中搭建视频服务器
配置Windows 2000系统中的磁盘配额
Windows 2000操作系统启动菜单详解
Windows 2000 工具包中的 REG.EXE 中文说明
坚守阵地—Win 2000内置安全命令的威力
Windows 2000局域网的组策略管理
windows 2000虚拟主机基本权限的设置
巧妙设置Windows 2000启动项
Windows 2000操作系统光盘探秘
阿江的Windows 2000服务器安全设置教程
体验Windows 2000运行如飞的感觉
Windows 2000操作系统二十条超级应用技巧
Windows服务器安全设置经验详谈
Windows 2000虚拟主机最安全设置
在Windows 2000系统中预防Ping攻击
Windows 2000操作系统共享上网完全攻略

Windows服务器 中的 菜鸟必看 揭开系统资源的神秘面纱


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 36 ::
收藏到网摘: n/a

    许多朋友对计算机里头的“当红”名词“系统资源”可能并不陌生,在报刊或书籍上我们经常可以看到它的影子,但对于这位朝夕相处的朋友,你究竟了解多少呢?不少朋友一直存在认识上的误区,他们把系统资源和内存占用当作一回事了。真实的情况如何呢?想弄清楚问题的答案,那就随本文一起揭开系统资源的神秘面纱。
  
  一、溯本清源,弄清各类资源的含义

  “物以类聚,人以群分”,对于资源的概念划分,我们听得最多的主要有:CPU资源、内存资源、系统资源、用户资源、GDI资源,这些不同名称的资源,彼此间究竟有没有联系?要走出认识上的误区,首先必须弄清楚它们的含义。  

  先从系统资源说起吧。简单地说,当应用程序运行时,内存需要一块空间来追踪、保留正在执行的程序的状态,比如按钮、光标、菜单位置和位图、窗口状态等,存储这些信息的空间有个专有名词来形容,那就是我们熟悉的“系统资源”,而存储这些信息的空间是一种称为“堆”的内存块,你可以把“堆”理解成采用特殊机制管理的内存空间。

  根据存储对象类型的不同,系统资源分为两个方面:用户资源和GDI(Graphic Device Interface,图形设备接口)资源。由系统内核程序“User.exe”管理的堆叫作用户资源堆,用来存储窗口状态、菜单位置等信息;由系统内核程序“Gdi.exe”管理的堆叫作GDI资源堆,用来存储画刷、画笔、字体、调色板等图形对象信息。用户资源堆和GDI资源堆合称为系统资源堆,习惯上我们称之为系统资源。

  现在大家应该明白,系统资源和内存资源并不是同一回事。我们说一个程序使用了多少内存资源,实际上就是指该程序运行时须要占用多少内存空间,依据软件设计的优化程度、功能强弱等因素,有的只需几百KB,有的却需要几十MB甚至数百MB,通常比系统资源要大得多。

  CPU资源就更好理解了,它实际上指的是CPU使用率,软件运行时都要通过CPU进行数据运算,占用一定的CPU执行时间,CPU使用率是衡量软硬件设计的重要指标。某些设计不完善或陷入死循环的程序,往往会让系统处于无反应状态,原因就是它们的CPU使用率很高。在某些软件评测文章里,我们通常还可以看到“资源占用过高”的评语,但实际上这种提法并不全面,应该具体指出是哪类资源占用过高,比如CPU资源、内存资源或系统资源。   

      二、寻根把脉,探讨系统资源管理机制  

  “瘟酒五”、“瘟酒八”的不稳定是众所周知的,Windows 2000/XP的稳定性就好多了。事实上,引发Windows 9x不稳定的罪魁祸首就是系统资源的管理方式。基于NT内核设计的Windows 2000/XP,同使用Win9x内核的Windows 95/98/ME相比,管理系统资源的机制是完全不同的。  

  1.Windows 9x

  在Windows 9x系统下,微软将系统资源分为五个堆,其中用户资源堆占据三个,GDI资源堆为两个。三个用户资源堆分别是:16位的用户堆,大小为64KB;32位的窗口堆,大小为2MB;32位的菜单堆,大小为2MB。两个GDI资源堆分别是:16位的GDI堆,大小为64KB;32位的GDI堆,大小为2MB。从划分类型来分析,我们不难发现有16位和32位两种,Windows 9x如此设计系统资源的原因,就是为了让旧的16位程序能在新的操作系统上正常运行。   

  著名的“木桶原理”大家都知道吧?如果组成木桶的木板长短不一,那么这个木桶的最大容量不取决于长的木板,而取决于最短的那块木板。木桶原理同样适用于系统可用资源,道理很简单,当某个类型可以分配的资源被占尽时,即使其它部分剩下的资源还很多,系统也会因资源不足而出现问题。所以说,可用的系统资源一定等于可用用户资源和可用GDI资源中较小的那一个。为了保持与16位应用程序的兼容性,Windows 9x的大量数据要占用16位的64KB的资源堆,这部分资源首先被大量消耗,限制系统资源使用的是64KB的资源堆而不是2MB的资源堆。

  想必大家应该明白了,在Windows 9x系统下,系统资源的大小是固定的,与硬件的档次根本没有关系,无论你的CPU是P4还是486,内存是8MB还是1G。当你遭遇“系统资源不足”的提示时,有些老鸟可能会向你提示增加内存,其实这种经验之谈完全是错误的。解决问题的方法主要有两种:一是减少同时运行的程序,释放可用系统资源;二是重新启动系统,克服因资源回收机制不完善,导致系统资源的可用空间急剧下降后,不足以满足正常运行的需要。  

  如何查看当前的系统资源状况?在Windows 9x中提供了一个专门的工具来观察。单击“开始菜