警告!此“答案”做解决这个问题,而且还包含更多的信息,我希望有些人可以从中受益。

警告!此“答案”做解决这个问题,而且还包含更多的信息,我希望有些人可以从中受益。

我的 Mac(Macbook Pro)在执行基本任务(例如浏览网页或类似操作)时有时会很慢。如果我打开活动监视器,我(可能)有一个程序占用了大约 10% 的 CPU,其他程序则低于 1%。我的 CPU 使用率还不是满的。我还有超过 2 GB 的可用内存(总共 5 GB)。没有像复制文件这样的繁重 I/O 活动。

我打开的程序是 Google Chrome(6 个标签页,其中没有一个以某种方式(flash,许多 DOM 对象,Javascript)具有 IMO,也许除了 Gmail)、活动监视器、Finder、Sublime Text 2(文本编辑器)和 iTerm(终端)。

是什么原因导致速度变慢?“速度慢”是指:输入这些字符需要时间(我按下键盘上的键,但要过一段时间才能在屏幕上看到它们)、更改标签或程序等。

答案1

警告!此“答案”解决这个问题,而且还包含更多的信息,我希望有些人可以从中受益。


对于许多人来说,这是已知信息。然而,它可能对新用户有所帮助。

拥有太多了体验 Mac 运行缓慢,我唯一遇到的知道的是(不幸的是)可能会有无数原因。

上述关于 Spotlight 索引的回答确实是一个可能的罪魁祸首。如果菜单栏右上角的 Spotlight 放大镜图标包含一个微妙地增大和缩小的小点,则表明 Spotlight 正在索引您的硬盘驱动器(包括每个文件的内容)。但根据我的经验,当我继续浏览、发送电子邮件、使用 Photoshop、Pages 等时,Spotlight 并没有造成麻烦的性能损失。

如果需要,您可以转到“系统偏好设置”–>“Spotlight”–>“隐私”,然后单击最左侧列左下角的加号。添加您的启动驱动器和任何其他连接的驱动器。这将阻止 Spotlight 索引和消耗您的存储 I/O、CPU 和其他系统资源。

然后,如果您确实希望 Spotlight 索引所有内容(例如,在您睡觉时),请执行相反的操作并在“隐私”列中突出显示每个驱动器,然后单击减号。Spotlight应该恢复,放大镜应该会再次跳动。(允许您删除当前 Spotlight 索引的共享软件实用程序可能不是一个坏主意,因为 Spotlight 之后会重新开始并在您睡觉时不受干扰地运行。)

Spotlight 第一次索引整个卷时需要很长时间,但之后没有发现明显的性能变化(对我来说),因为它只逐步地索引新创建的文件和数据(远的比第一次运行的索引少所有的体积)。

活动监视器已被证明是一款不可或缺的工具,可用于查看正在运行且您无法察觉的所有“不可见”进程。您可能会对 Mac OS X 幕后发生的大量事情感到惊讶。在我看来,它确实是“世界上最先进的桌面操作系统”。

在活动监视器中,从弹出菜单中选择查看“所有进程,按层次结构”。

然后单击“CPU”列,该列根据进程使用的 CPU MHz 数量对所有进程进行排序。这种排序方法并不完美,因为您会注意到守护进程或进程在其他进程中运行并显示大量 CPU 使用率,但可能不会像您预期的那样出现在排序列表的顶部。此外,这是实时的,因此进程迅速在列表中不断地上下跳动。

除了 CPU 消耗,活动监视器还会显示进程正在使用多少个线程。十几个或更多线程意味着进程正在为自己分配大量资源。我不关注内存消耗,因为它是虚拟内存,使用硬盘空间作为虚拟 RAM。如果你把活动监视器中的应用程序和进程声称为自己分配的总虚拟内存加起来,你会认为你需要安装 1TB 的 RAM!虚拟内存在后台顺利运行,不需要你的关注。(感谢 Avi、Bertrand、Jordan 等人。)哦!最好将启动卷的 15-20% 留出没用过运行时,Mac OS X 和许多应用程序会暂时“停放”代码,否则这些代码会占用您有限的 RAM。它们会将此硬盘空间视为 RAM,尽管 RAM 很慢。

许多程序(如 Photoshop)将可用驱动器空间用作“暂存盘”。这就是您在仅安装 2GB RAM 的情况下在 Photoshop 中处理 4GB 图像文件的方法!

在活动监视器中查看,使用超过 50% CPU 的应用程序或进程应该是可疑的。(尽管有些单片程序确实如此,但这是正常的。)

如果您不需要应用程序保存或“记住”任何内容,您可以在活动监视器中强制退出它(红色八角形停止标志形状的按钮 - 但当您尝试突出显示在几分之一秒内跳来跳去的应用程序或进程时,这很棘手!)。

我以前也这样做过,然后重新启动应用程序,发现 CPU 使用率从之前的 54% 下降到之后的 9%。因此,之前应用程序运行正常且没有崩溃,但其部分代码可能陷入了无限循环或其他问题。退出并重新启动应该可以解决这个问题。

清理阁楼(和地下室)

即使在 Mac OS Classic 之后,一个老式的 Mac 关机(而不仅仅是重新启动)也能产生神奇的效果。如果您从菜单栏中选择关机,当除了壁纸之外的所有内容都消失时,您会看到旋转器旋转了一会儿,这很好!Mac OS X 正在做一些整理工作,可能保存您的系统配置,考虑所有内部修改、外部设备(硬盘驱动器、打印机、扫描仪、第三方键盘、鼠标、Wacom 手写板等)及其连接方式;USB、FireWire、eSATA PCI 卡、蓝牙、Wi-Fi 等,创建需要加载的扩展和内核缓存,这样它就不必在每次启动时都去“搜索”,更新 bootcacheplaylist、文件系统日志等。

关机完成后,等待所有内部和外部驱动器停止旋转并关闭(静音!)

然后按住 Shift 键,同时按下电脑的开机按钮。不要松开 Shift 键。Mac 的启动时间会比平时长一点,但请按住 Shift 键,直到看到 Apple 徽标看到旋转器开始旋转。现在您可以松开 Shift 键。

如果您没有将 Mac OS X 设置为“自动登录”,您最终将看到登录窗口,其中帐户名称上方以红色显示“安全启动”字样。

等一下!暂时不要登录!

你看,苹果公司告诉你有关“安全模式”的全部内容是,当你的 Mac 在“完全启动”模式下出现问题时,这是一种故障排除方法。

苹果表示,安全模式不会加载任何第三方扩展(甚至不会加载苹果自己的一些扩展),也不会加载您在系统偏好设置—>帐户中选择的任何启动项,也不会加载大多数菜单栏项。

这些都是真的,但我了解到“安全启动”可以进行各种幕后修复、检查、维修和维护以及许多其他“好东西”。

(但经过多年的寻找,没有人能告诉我到底是什么。他们说,“相信我。它确实起了作用。)

我知道它会忽略 kernelextension 缓存,迫使操作系统重新查找并加载必要的内核扩展。(如果您仍在登录屏幕,它甚至会检查并修复 BOOT VOLUME,这是磁盘实用程序或任何第三方磁盘实用程序无法且拒绝执行的操作。)

在“安全启动”下,当处于登录屏幕时,只有 OS X 的极小部分被加载,因此 Apple 的安全启动“实用程序”在一个基本环境中完成工作,不存在登录后加载的数百个操作系统文件。

在安全启动中,我把它留在登录屏幕上大约 10 分钟。我发现工作正在进行中当我注意到我的外部驱动器的活动指示器显示大量磁盘活动时,您登录了。

驱动指示灯在 10 分钟或更短时间后停止。

然后我登录。并且然后,我什么都没碰(甚至连键盘或鼠标都没碰),因为那个有用的好东西在登录后要运行几分钟,我不想启动程序,甚至不想使用键盘或鼠标。我希望安全启动能够不受干扰地执行其任务。

我去喝杯咖啡或在我的 iPad 上启动 App Store 来检查我的应用程序是否有更新(我这样做的频率甚至比我在 Mac 上检查 macupdate.com 上每隔 15 分钟左右出现在每日列表顶部的新共享软件的频率还要高!),并且我在登录大约十分钟后就开始实际使用 Mac。

我通常会运行一些程序,这些程序会以某种方式更改 Mac OS X 中的某些文件。我启动“系统偏好设置”,临时更改“节能器”设置;我断开与互联网的连接,然后重新连接;我单击“续订 DHCP 租约”;我启动“文本编辑”,输入一些乱码,等待“自动保存”自动保存,然后自己保存;我启动 Safari 并可能为某些内容添加书签;我启动“目录实用程序”,然后退出;我启动“网络实用程序”,等等。

然后我关闭我的 Mac 比重启更安全,因为关机会更新一些缓存文件、启动缓存播放列表,并执行重启不会执行的其他操作。如果旋转器出现并需要一段时间才能最终关闭我的 Mac,那是一件好事!我不知道,但它可能会用新的、干净的文件等覆盖损坏的首选项文件。

您始终可以进入系统–>库中的缓存文件夹并删除一些缓存文件(最近的文件 - 日期较旧的文件可能应该保留)。它只会为这些已删除的缓存文件创建新、干净且最新的替换文件。您可以对主文件夹中库–>缓存中日期较近的缓存文件执行相同操作。同样,它只会写入新文件。

即使我的 Mac 运行正常,我也会每两周左右启动一次安全模式。

另外,您可以随时按住 Command-s 并按下 Mac 的电源按钮。在看到老式的 DOS 界面之前,不要松开 Command-s。此时松开按键。此时只加载了 Mac OS X 的内核,以及一些非常少的 BSD Unix 资源。但此时“Mac OS X”几乎没有加载。GUI 甚至还没有加载。

进入此模式时,它将打印一些简短的启动过程信息,然后让您处于带有闪烁光标的命令行提示符下。

输入“/sbin/fsck[space]-fy[Return]”。按回车键之前,它应该看起来像 /sbin/fsck -fy。它将像磁盘实用程序一样进行验证/修复,但您的引导体积。

如果它完成并显示一切正常,但最后打印“#FILE SYSTEM HAS BEEN MODIFIED”,请再次运行相同的命令,必要时重复运行,直到它不再打印“#FILE SYSTEM HAS BEEN MODIFIED”消息。然后您可以在命令行输入“exit”以继续启动,或者输入“shutdown”(如果您希望关闭并启动)。

有一个很棒的实用程序叫 AppleJackhttp://www.macupdate.com/app/mac/15667/applejack这是一个 Unix 命令行实用程序应用程序,仅在文本单用户模式下运行(没有 GUI)。

阅读 AppleJack 的文档,尤其是如何谨慎使用(全大写的)“AUTO”。

关于修复权限也存在很多争议。有人说这是好事,有人说不是,应用程序一直在更改原始文件权限设置,这并不一定是坏事或不正常。

最后,我的实用程序“工具箱”中不可或缺的工具包括免费共享软件“Onyx”实用程序http://www.macupdate.com/app/mac/11582/onyx、TechTool Pro 6、Drive Genius 3、备受推崇的 DiskWarrior 4 和 Data Rescue 3(如果您通过 Bootcamp 在 Mac 上安装了 Windows,那么可能还有 Data Rescue PC)。

TechTool 的众多功能中,只有两个功能是能够在启动驱动器(或任何驱动器)上创建一个小分区,从而创建一个紧急磁盘,以便在启动驱动器需要修复时启动。(大多数实用程序不会或无法修复启动驱动器。TechTool 的紧急磁盘分区解决了这个问题。)

其次,TechTool 允许您选择安装一个首选项窗格,该窗格会定期执行驱动器 SMART 检查,备份您宝贵的​​磁盘目录(在任何驱动器上)。如果磁盘目录被删除或损坏严重,DiskWarrior 无法修复,您就完蛋了——除非 Mac OS X“存档和安装”。

磁盘目录是一个 HUUUUUUUUGE 文件,因此备份它需要大量的时间和空间。我已将其设置为将所有驱动器的目录备份存储在用于长期数据存储(存档照片、我需要保留的旧文档、我需要保留 7 年的旧税务文档等)的驱动器上的单独文件夹中。我还将其设置为在睡觉后进行此备份。

幸运的是,TechTool 的偏好设置面板可以针对其执行的每项任务进行完全自定义。您可以每周或每小时执行一次目录备份,也可以将其设置为每天或每小时执行一次 SMART 检查。您可以让它在 SMART 检查失败时提醒您和/或向您发送电子邮件。

最有用的(对我来说)是,您可以设置硬盘上想要保留多少空间的阈值(出于上述原因),例如 15%、20%,并且当您接近您自定义的阈值时,TechTool 会提醒您。

然后是时候存档一些您需要保留但不经常访问的文件,并将它们从主驱动器中转移出去。

PS 使用自动备份实用程序,并确保日志功能已打开适用于所有驱动器。(您可以在“磁盘工具”中检查并为每个驱动器启用此功能。)

答案2

在“活动监视器”应用中检查内存使用情况(通常在“应用”的“实用程序”子文件夹中)。有 4 行内存使用情况,最下面的一行会告诉您有关“已使用交换空间”的信息。即使“已使用内存”量小于“物理内存”,如果“已使用交换空间”值大于零,并且您有一个普通硬盘(旋转磁盘而不是 SSD),那么在应用之间切换时,这将成为问题的一部分。对此有两种解决方案:

  1. 用 SSD 驱动器替换标准 HDD
  2. 如果可以的话,请添加更多 RAM,最好按大小匹配 RAM 模块(2 X 4GB 或 2 X 8GB)

如上述答案所述,这可能是硬盘故障,HDD 子系统无法可靠地从驱动器读取数据。这不会在“活动监视器”的“磁盘”选项卡下显示为高 I/O,唯一的检查方法是如上述答案所述,使用单用户鼠标和表面扫描实用程序。

答案3

如果聚光灯正在索引文件,您会在活动监视器中看到它,因为 mds 使用了大量的资源。

我还会尝试卸载 Flash 或使用 Flash 阻止程序。

答案4

为什么你有 5GB 的 RAM?这个数字很奇怪... 你有 4GB 芯片和 1GB 芯片吗?

移除 1GB 芯片可能会让您的系统运行得更快……或者更好的是,有两个 2GB 芯片(或两个 4GB 芯片)。这仅适用于某些主板/CPU 组合。我曾经拥有一台 Mac,如果没有完美配对的芯片,它根本无法启动,但许多现代 CPU 都针对均匀配对的设置进行了优化。通常,苹果不会向您出售任何配置(除了完美配对的 RAM)的 Mac,这是因为 CPU 只有在这种设置下才能全速运行。

我不知道这个建议是否适用于你的 Mac,如果它导致你所看到的那种减速,我会感到惊讶,但它值得一试。

说实话,我怀疑你可能遇到了硬件问题。我想知道你的硬盘是否开始出现故障?我会擦除硬盘并将整个硬盘写入零(可能写入两次零...或使用安全擦除功能,该功能将写入随机数据 3 次)。

将数据写入每一个部门在硬盘上将强制驱动器在每个扇区上应用其内部容错算法。这些检查非常复杂,而且速度非常慢。为了保持性能,它们在正常驱动器使用下无法正常运行。现代硬盘上通常有数百万个单独的位是坏的,通常驱动器的内部机制会将这些位标记为坏的,并悄悄地将数据移到其他地方(500GB 驱动器通常有许多 GB 的额外未使用扇区,可以激活以替换其他坏扇区)。

多次覆盖磁盘将会清理磁盘并为您提供比全新磁盘更好的磁盘(购买磁盘后最好在整个驱动器上写入数据)。

如果硬盘状况真的很糟糕,它会在将数据写入磁盘的过程中出现故障,只有购买新硬盘才能解决这个问题。

此建议适用于旋转硬盘,不适用于固态硬盘。我不太了解 SSD 的工作原理,但我听说在整个 SSD 上写入数据可能会永久降低驱动器的性能。

相关内容