程序长时间最小化需要很长时间才能“唤醒”

程序长时间最小化需要很长时间才能“唤醒”

我经常使用 Photoshop CS6 和多个浏览器。我不会同时使用它们,所以有时某些应用程序会最小化到任务栏数小时或数天。

问题是,当我尝试从任务栏最大化它们时 - 有时比启动它们花费的时间更长!尤其是 Photoshop 在终于出现后的几秒钟内感觉非常奇怪,它很慢,没有响应,甚至有时会完全冻结一两分钟。

这不是硬件问题,因为我的所有电脑都一直都是这样。

在将我的 HDD 升级为 SDD 并添加 RAM 后,我是否也会注意到这一点(我的主要 PC 目前有 4 GB)?有功能强大的 PC / Mac 的人可以告诉我 - 你们是否也遇到这种情况?

我猜操作系统会以某种方式“关注”活动软件,并将所有资源从运行但未使用的软件上移开。是否可以以某种方式设置 RAM / CPU / HDD 优先级或其他内容,例如 Photoshop,以便它在长时间不活动后不会变慢?

答案1

概括

直接的问题是,您已最小化的程序正在被分页到硬盘上的“页面文件”中。可以通过安装固态硬盘 (SSD)、为系统添加更多 RAM、减少打开的程序数量或升级到较新的系统架构(例如 Ivy Bridge 或 Haswell)来改善此症状。在这些选项中,添加更多 RAM 通常是最有效的解决方案。

解释

Windows 的默认行为是让活动应用程序优先于非活动应用程序在 RAM 中占有一席之地。当内存压力很大时(这意味着如果让每个程序都拥有所需的所有 RAM,系统就没有很多可用 RAM),它会开始将最小化的程序放入页面文件中,这意味着它会将其内容从 RAM 写入磁盘,然后释放该 RAM 区域。这些可用 RAM 可帮助您正在使用的程序(例如,您的 Web 浏览器)运行得更快,因为如果它们需要占用新的 RAM 段(例如当您打开新选项卡时),它们就可以这样做。

这种“空闲”的 RAM 还可以用作页面缓存,这意味着当活动程序尝试读取硬盘上的数据时,这些数据可能会被缓存在 RAM 中,从而阻止访问硬盘以获取这些数据。通过将大部分 RAM 用于页面缓存,并将未使用的程序交换到磁盘,Windows 正在尝试提高您正在使用的程序的响应能力,方法是让它们可以使用 RAM,并将它们访问的文件缓存在 RAM 中而不是硬盘中。

这种行为的缺点是,最小化的程序需要一段时间才能将其内容从磁盘上的页面文件复制回 RAM。程序占用的内存越大,复制时间就越长。这就是您在最大化 Photoshop 时遇到延迟的原因。

RAM 是许多比硬盘快 100 倍(根据具体硬件,最高可达几个数量级)。SSD 比硬盘快很多,但仍然比 RAM 慢几个数量级。将页面文件放在 SSD 上将帮助,但如果您的页面文件由于 RAM 压力而被大量使用,它也会比平时更快地磨损 SSD。

补救措施

以下是对可用补救措施及其一般有效性的解释:

  • 安装更多 RAM:这是推荐的路径。如果您的系统不支持比您已安装的更多的 RAM,您将需要升级更多系统:可能是主板、CPU、机箱、电源等,具体取决于系统有多旧。如果是笔记本电脑,您很可能必须购买一台支持更多已安装 RAM 的全新笔记本电脑。当您安装更多 RAM 时,您会减少内存压力,这减少了页面文件的使用,从各方面来说这都是好事。您还可以为页面缓存提供更多 RAM,这将使所有访问硬盘的程序运行得更快。截至 2013 年第四季度,我个人建议台式机或笔记本电脑至少配备 8 GB RAM,其用途比网页浏览和电子邮件更复杂。这意味着照片编辑、视频编辑/查看、玩电脑游戏、音频编辑或录制、编程/开发等都应该至少有 8 GB 的 RAM,甚至更多。

  • 一次运行较少的程序:只有当您运行的程序本身不占用大量内存时,这种方法才会起作用。不幸的是,Adobe Creative Suite 产品(例如 Photoshop CS6)以占用大量内存而闻名。这也会限制您的多任务处理能力。这是一个临时的免费补救措施,但每次启动 Photoshop 时关闭 Web 浏览器或 Word 可能会带来不便。这也不会阻止 Photoshop 在最小化时被交换,因此这实际上不是一个非常有效的解决方案。它只在某些特定情况下有用。

  • 安装 SSD:如果您的页面文件位于 SSD 上,那么 SSD 的速度比硬盘快得多,因此在读取或写入页面文件时,性能通常会得到提高。请注意,SSD 的设计无法承受非常频繁且持续的随机写入流;它们只能写入有限的次数,之后就会开始损坏。大量使用页面文件对于 SSD 来说并不是特别好的工作负载。您应该安装 SSD结合如果您想要获得最大性能同时又保持 SSD 的使用寿命,则需要大量 RAM。

  • 使用较新的系统架构:根据系统的使用年限,您可能正在使用过时的系统架构。“系统架构”通常定义为主板和 CPU 的“代数”(可以想象为子代、父代、祖代等)。较新的代数通常支持更快的 I/O(输入/输出)、更好的内存带宽、更低的延迟和更少的共享资源争用,而是提供组件之间的专用链接。例如,从“Nehalem”代(大约 2009 年)开始,前端总线 (FSB) 被淘汰,这消除了一个常见的瓶颈,因为几乎所有系统组件都必须共享相同的 FSB 来传输数据。这被“点对点”架构取代,这意味着每个组件都有自己的专用“通道”到 CPU,每隔几年就会随着新一代的出现而不断改进。您通常会看到整体系统性能的更显著的改进,具体取决于您的计算机架构与最新可用架构之间的“差距”。例如,2004 年推出的 Pentium 4 架构在升级到“Haswell”(截至 2013 年第四季度的最新版本)后,其改进效果将比 2010 年左右推出的“Sandy Bridge”架构更为显著。

链接

相关问题:

如何减少磁盘抖动(分页)?

Windows Swap(页面文件):启用还是禁用?

此外,如果您正在考虑这一点,您真的不应该禁用页面文件,因为这只会让事情变得更糟;请参见此处:

http://lifehacker.com/5426041/understanding-the-windows-pagefile-and-why-you-shouldnt-disable-it

答案2

我的旧电脑也出现了同样的问题,大约一个月前我买了一台新电脑(i7、17gb RAM、64位操作系统),所有的“唤醒”时间都消失了。

更详细地说:RAM 较低(4GB)可能是原因:

Windows 将优先使用最近的应用程序/进程,而不是“休眠”的应用程序/进程,因此它将允许它们使用物理 RAM,并在 RAM 不足时将“休眠”的应用程序移动到“页面文件”(实际上驻留在硬盘上的模拟 RAM)。

当您尝试唤醒这些应用程序时,Windows 需要将一些数据从 RAM 移动到页面文件(以腾出空间)并将应用程序数据从页面文件移回 RAM。

解决方案 :

  1. 获取更多 RAM(Photoshop 和浏览器非常喜欢它...)
  2. 如果您的 RAM 超过 4GB,请确保您使用的是 64 位操作系统。

祝你好运。

答案3

大致来说,操作系统以两种方式使用内存:存储与程序相关的数据(变量、数组、机器指令等)和作为磁盘上文件的缓存。有些令人困惑的是,大多数操作系统的性能监视器将用于文件缓存的内存视为“空闲”。只有程序占用的内存才被视为“已使用”。

操作系统喜欢将至少 25% 的内存保留为文件缓存。如果没有缓存,所有文件访问都会直接转到缓慢旋转的磁盘,系统会变得非常迟钝。

由于文件缓存非常重要,所以无论你打开多少程序,内存使用率都会稳定在 75% 左右。因此,你的操作系统可能会告诉你有 25% 的“可用”内存,而实际上系统内存不足,正在疯狂地将数据交换到页面文件。

Adobe CS 程序和大量浏览器选项卡很容易占用 4GB 内存,因此听起来您应该购买更多 RAM。

答案4

Windows 会跟踪最近物理内存中页面的引用情况。那些一段时间内未被引用的页面将被调出。如果有内存需求,则已调出的页面将被重新使用。请注意,无论应用程序是否最小化,都会发生这种情况。这只取决于内存是否正在被积极使用。如果您有足够的 RAM,页面可能会保留在内存中,如果再次需要它们,可以回收它们。如果它们不再在内存中,则需要从磁盘读取每个页面。这将导致程序运行缓慢,直到它所需的所有内容都被调入。启动程序时,Windows 使用 Superfetch 来预先加载它“学习”的程序页面,而不是等待页面错误来加快程序启动速度。

Windows 8 引入了交换文件,用于将暂停的 Store App 的活动页面存储在一个块中。这允许 Store App 快速重新启动。

相关内容