许多朋友对计算机里头的“当红”名词“系统资源”可能并不陌生,在报刊或书籍上我们经常可以看到它的影子,但对于这位朝夕相处的朋友,你究竟了解多少呢?不少朋友一直存在认识上的误区,他们把系统资源和内存占用当作一回事了。真实的情况如何呢?想弄清楚问题的答案,那就随本文一起揭开系统资源的神秘面纱。
一、溯本清源,弄清各类资源的含义
“物以类聚,人以群分”,对于资源的概念划分,我们听得最多的主要有: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中提供了一个专门的工具来观察。单击“开始菜单→程序→附件→系统工具→资源状况”,即可运行该工具。如果你找不到该工具,可以在添加/删除中的Windows组件里头选择安装。
2.Windows 2000/XP
在Windows 2000/XP系统下,你几乎不会碰到诸如“系统资源不足”的提示,主要原因就在于Windows 2000/XP已经没有系统资源大小的限制,系统会根据实际运行情况,自动分配足够的系统资源。美中不足的是,一些旧的16位程序可能无法正常运行,为此微软特意提供了“兼容性模式”运行方式,可以在Windows 2000/XP系统上模拟其他版本的Windows,比如Windows 95/98/Me/NT等。

- 大小: 26.1 KB

- 大小: 89.9 KB

- 大小: 81.2 KB
分享到:
相关推荐
1. **Java入门**:为初学者揭开Java编程的神秘面纱,奠定坚实的基础。 2. **基础语法**:深入探讨Java编程语言的基本语法规则。 3. **Java类与对象**:详细解释Java中类和对象的构建与使用。 4. **Java高级类特性**...
总的来说,对于那些想要踏入网络领域,或者希望通过CCNA认证的人来说,《CCNA菜鸟笔记640-802》是一个很好的起点,它将引导你逐步揭开网络世界的神秘面纱,为你的IT职业生涯打下坚实的基础。通过仔细阅读这两份资料...
《网络协议报文格式大全》是由华为公司...总的来说,《网络协议报文格式大全》是网络工程师、系统管理员和爱好者的宝贵参考资料,它将帮助我们揭开网络通信的神秘面纱,提高我们在网络世界中的技术水平和问题解决能力。
li_3ck_02a_1118
基于MATLAB的牛顿迭代法实现
mellitz_3ck_01_0319
内容概要:文章阐述了银行采用人工智能(AI)技术替代传统系统的紧迫性和收益,讨论了通过构建现代化的数据和技术平台实现效率提升的方法,同时强调实施过程中确保数据质量和建立信任的重要性。文中提及,在金融行业中,若想优化业绩则必须拥抱AI带来的机遇,并为此进行经营模式的革新。根据Workday主办的研讨会内容,PwC金融服务风险与监管领导和Workday金融服务高层指出了大部分银行对AI认知不足的问题,强调AI在金融、人力资源以及IT等领域的广泛应用潜力及具体应用场景,如欺诈检测、技能映射和财务管理方面的作用。并且提到了AI部署过程中可能出现的技术与非技术难题及相应解决办法,鼓励金融机构及时投资建设新型基础设施,以保持竞争力。 适用人群:银行及其他金融机构管理人员;金融科技领域的专业研究人员;对企业数字化和智能化转型感兴趣的商业分析师、投资者;从事信息技术咨询工作的顾问。 使用场景及目标:本文可以帮助金融机构制定合理的技术发展战略规划,评估是否有必要推进AI技术转型,同时也为希望涉足银行科技项目的开发者提供了宝贵的市场洞察,帮助理解行业内普遍存在的困难与潜在的市场需求。此外,对于想要了解银行
matlab程序代码项目案例 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。 欢迎下载!欢迎交流学习!不清楚的可以私信问我!
AB PLC例程代码项目案例 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。 欢迎下载!欢迎交流学习!不清楚的可以私信问我!
AB PLC例程代码项目案例 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。 欢迎下载!欢迎交流学习!不清楚的可以私信问我!
AB PLC例程代码项目案例 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。 欢迎下载!欢迎交流学习!不清楚的可以私信问我!
chromedriver-linux64-136.0.7058.0.zip
AB PLC例程代码项目案例 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。 欢迎下载!欢迎交流学习!不清楚的可以私信问我!
AB PLC例程代码项目案例 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。 欢迎下载!欢迎交流学习!不清楚的可以私信问我!
内容概要:本文档介绍了背压热电联产(CHP)发电厂的详细设计步骤,涵盖确定各状态点的压力、温度、比焓以及质量流率的具体方法。主要内容围绕计算净电功率、燃料消耗及其效率展开,并提供了T-s图绘制的指南。针对每个组件(如蒸汽轮机、冷凝器、除氧器等),都列出了详细的效率假设和压力损失表,为实际工程应用提供了宝贵的参考资料和操作指导。同时,该作业任务要求学生从给定初始值中选择合适的操作条件进行系统模拟,并利用课程讲义和Moodle平台资料完成计算流程。 适用人群:对能源转换和动力设备设计感兴趣的学生或者初涉该领域的工程师。 使用场景及目标:旨在帮助学员深入了解并掌握背压热电联产装置的工作原理和技术指标计算的方法论,通过实践练习提高他们的问题解决能力。 其他说明:文档强调了稳态运行假设的重要性,即物质平衡等于能量输入等于输出的原则,并鼓励参与者借助附录提供的典型操作参数图表来寻找解决问题的方向。此外,它还特别指出对于一些变量值求解可能需要迭代法来进行调整,直至获得稳定结果。提交的报告必须含有一份详细的T-s图和其他必要附件。
机器学习_市财政收入分析(含数据集)
AB PLC例程代码项目案例 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。 欢迎下载!欢迎交流学习!不清楚的可以私信问我!
tracy_3cd_01_0318
lusted_3cd_01_0918
题目:基于51的自动分拣系统设计 主控:AT89C52 测距模块:超声波测距模块 甲醛传感器(ADC0832+滑动变阻器模拟) 粉尘传感器(PCF8591+滑动变阻器模拟) 净化模块(继电器驱动蓝灯) 排风模块(继电器驱动绿灯) 电源电路(5V降压为3.3V供电) 显示模块(LCD1602) 声光报警 按键(3个,切换阈值选择,阈值加减) 检测物体:开关模拟 电机驱动模块(继电器驱动直流电机转动) 功能: 1.显示屏显示甲醛,粉尘浓度可以切换设置阈值。 2.通过甲醛传感器检测车间环境,大于阈值时声光报警并启动净化模块。 3.通过粉尘传感器检测车间环境,大于阈值时声光报警并启动排风模块。 4.采用超声波传感器进行物体超高监测异常(大于XX距离)时触发声光报警 5.检测到物体(开关闭合)直流电机转动(模拟传送带)