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

Windows服务器
实例讲解Windows 2003分区增容功能
WIN2003服务器端安全配置的一点简单经验
Windows 2003中快速建立ADSL拨号
远程如何修改Windows 2003系统机器名
微软揭示Windows 2003 R2关键性技术
Windows Server 2003组策略排障六法
感受Windows 2003 SP1安全配置向导功能
微软测试Windows Server 2003集群版
Win 2003系统传真功能的配置及使用
巧用Win 2003构筑校园网服务器防火墙
抢先看!WinServer 2003 R2 RTM发布
九招Windows 2003系统设置小技巧
巧施妙计—突破Win 2003系统的种种限制
巧妙启用Windows 2003的远程桌面功能
部署Windows Server 2003终端服务
在Win2003配置DNS的Internet访问
Windows 2003下提高FSO的安全性
Windows Server 2003 SP1 今日发布
微软将在HEC上发布Windows 2003 64-bit
快下载!值得装Windows 2003 SP1三大原因

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 38 ::
收藏到网摘: 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中提供了一个专门的工具来观察。单击“开始菜