您的位置:网站首页 > 电器维修资料网 > 正文 >
详解Windows 8内存管理
★★★★★【文章导读】:详解Windows 8内存管理具体内容是:Windows8将内存使用作为基本设计原则。鉴于人们需要同时运行越来越多的应用程序,Windows8的目标将是是显着降低核心系统的整体运行时内存要求。Windows8运行时的内存使用是确定Windows8系统要求以及将搭载Windows8的…
来源: 日期:2013-11-25 10:21:52 人气:标签:
Windows 8将内存使用作为基本设计原则。鉴于人们需要同时运行越来越多的应用程序,Windows 8 的目标将是是显着降低核心系统的整体运行时内存要求。
Windows 8 运行时的内存使用是确定 Windows 8 系统要求以及将搭载 Windows 8 的大量设备的一个重要因素。Windows 8 需要在基于 SoC 的低功耗设备上交付完整的体验。因此保留大量内存供多个并行应用程序使用并保持设备的整体响应能力变得更为重要。
内存使用目标
Windows 8 设定的目标就是采用与 Windows 7 相同的系统要求。随着硬件资源的升级,即使保持发布的要求相同,应用程序也会有更多的资源可以使用。Windows 8 将确保使用 Windows 7 时代的硬件的人们可以选择将其现有计算机轻松地升级到 Windows 8 并利用 Windows 8 提供的功能。根据性能测试基础结构中保留的旧式计算机,Windows 7 发布之前生产的许多计算机也能够运行 Windows 8。
Windows 8 的一项重要任务是寻找机会减少现有功能消耗的内存以及整个主板消耗的内存的同时,为新功能腾出空间。
任务管理器中的内存使用比较
准确比较 Windows 8 与 Windows 7 内存使用的 简单的方法是将这两种操作系统同时安装在一台 1GB RAM 计算机上(操作系统 低 RAM 要求),然后在它们已经过多次重新启动并闲置一段时间后对其进行比较。 Windows 任务管理器通过其“正在使用”统计信息提供系统内存的视图。下面的比较了运行 Windows 7 和 Windows 8 的同一台计算机在闲置时的内存使用情况。
Windows 7 SP1 中的内存使用
Windows 8 中的内存使用
构成计算机的特定硬件、驱动程序的内存使用甚至是运行时间都会造成差异,因此不同计算机上的内存结果将有所不同。尽管如此,还是可以看出,相对于 Windows 7 而言,Windows 8 在这方面做得更好一些。 为了使测试计算机上的操作更有趣,请转到设备管理器并禁用您的显示适配器(卸载图形驱动程序)。您绝不能像这样来运行计算机,但这可以给出更准确的 Windows 本身的内存使用估计值。通过禁用图形驱动程序,在闲置一段时间后,上述计算机的内存使用减少了 200MB。
注意:对于 Windows 8,其干净安装中还将包含扩展的 Windows Defender 技术,该技术首次纳入了完整的反恶意软件功能,该技术针对内存和资源使用进行了优化。
Windows 8 内存管理
Windows 8 进行了数百项特定更改来 大限度地减少中的操作系统内存使用。在此将介绍几个帮助大幅节省内存的特定领域。
内存组合
在评估典型的运行中 PC 上的 RAM 内容时,容易发现内存的许多部分都包含相同的内容。系统 RAM 之间冗余的数据副本将有机会减少内存占用,甚至是服务和操作系统组件的内存占用。 怎么会发生这种情况呢?应用程序有时会分配内存以供将来使用,并将其全部初始化为相同的值。应用程序实际上可能永远都不会使用该内存,因为用户可能永远都不会调用某些功能。如果多个运行中应用程序同时执行该操作,系统中将会出现冗余内存副本。 内存组合是一种方法,通过这种方法,Windows 可以在正常活动期间高效地评估系统 RAM 的内容,并找到所有系统内存之间的重复内容。然后 Windows 会释放重复内容,只保留单个副本。如果应用程序以后尝试写入内存,Windows 将为其提供一个专用副本。所有这一切都在内存管理器中悄悄进行,不会对应用程序造成影响。该方法可以释放数十至数百 MB 的内存(具体取决于同时运行的应用程序数量)。
服务更改和缩减
配置为始终运行的操作系统服务是环境内存使用的一个重要根源。在 Windows 8 规划过程中评估一系列操作系统服务时,将删除其中的大量服务(13 个),将一组不同的服务改为“手动”启动,同时还使一些“始终运行”的服务切换为“按需启动”模式。在该模式中,操作系统中的“触发器”将导致发生以下情况:
1.服务启动。
2.服务执行其操作。
3.服务闲置一段时间以确保没有任何其他需要执行的操作
4.服务退出。
Windows 8 中,即插即用、Windows Update 和用户模式驱动程序框架服务都是触发启动,而在 Windows 7 中,这些服务始终在运行。
Windows 8 中添加了大量新功能和新代码。这些新功能的其中一部分打包为新服务的形式。在这些新服务中,只有两个是自动启动的;所有其他服务都是手动启动或触发启动。
使用更少的内存执行同一作业
在 Windows 运行应用程序和执行它自己的系统日常管理时,程序文件和数据会从磁盘加载到主内存中。 Windows 7 发布后不久,向多个低级别 Windows 组件应用了一种类似方法,这些组件可追溯到 NT 的早期(20 世纪 90 年代早期)。所做工作包括重建代码体系结构和更改数据结构以便将内存的“热”部分(频繁引用)与“冷”部分完全分离。通过紧密整合热项目,降低了整体运行时内存开销。 考虑到可能的变化, Windows 8 将尽早完成计划中的工作以便有足够的时间来应对变化。截至目前,这些变化在 Windows 8 上已有所体现,成果表明普通计算机上的内存使用可降低数十 MB。
“桌面系统”迟缓初始化
从内存的角度来看,鉴于将会有一组设备,用户在使用这些设备时几乎所有时间都停留在沉浸式的 Metro 风格用户界面中。在这种情况下,Windows 8 只在必要时初始化桌面环境特有的操作系统组件,这将节约 23MB 左右的内存使用。(请注意,任务管理器在桌面系统中运行,因此上面显示的内存数字包括桌面系统的开销)。
更精细的内存优先级划分
在确定应用程序和系统组件的内存分配的优先级方面,Windows 8 有更好的方案。这意味着,Windows 可以更明智地判断哪些内存应该保留,哪些内存应该立即移除。 例如,防病毒程序会在其他程序打开文件时对文件进行各种检查。防病毒程序分配用来检查病毒签名的内存通常是一次性分配。在 Windows 7 中,该内存被视为与系统中的其他内存(例如,MICroSOFt Excel 的运行实例所分配的内存)具有相同优先级。如果内存变得稀缺,Windows 7 终可能会移除正在帮助用户做出响应的内存其他运行中应用程序(如 Excel),显然,这种做法不是保持系统响应能力的 佳选择。 在 Windows 8 中,任何程序都可以将内存分配为“低优先级”。这是向 Windows 发出的一个重要信号,也就是说,当存在内存压力时,Windows 可以移除该低优先级内存以腾出空间,而且不会影响维持系统响应能力所需的其他内存。
总体来说,Windows 8 应用程序模型将为新的应用程序“以更友好的方式使用内存”流程生命周期做出更改。这将是Windows 8 颠覆性改造过程中非常重要的一部分。
【看看这篇文章在百度的收录情况】