Mac 为什么变慢?如何查看是什么在占用内存和处理器
Mac 感觉变慢时,问题很少出在 Mac 本身。通常是某个应用很忙,或者你打开的应用需要的内存比 Mac 拥有的更多,于是 macOS 不停地在内存和磁盘之间来回搬运数据。
一句话:打开“活动监视器”(“应用程序”›“实用工具”)。在“内存”标签页中,查看内存压力图表和已使用的交换。在“CPU”标签页中,按“% CPU”排序。如果用不到占用最多的那个,就退出它。单是“已使用的内存”数值很高,是正常的。
内存压力是什么意思?
它表示应用能否得到所需的内存。绿色表示正常。黄色表示 macOS 正在压缩内存来腾出空间。红色表示它正在把内存写入磁盘(称为交换),Mac 会变慢。如果经常是黄色或红色,请退出不需要的应用或浏览器标签页,或者重新启动。
Mac 内存占用高是坏事吗?
不是。macOS 会有意用最近使用的文件填满空闲内存,让它们打开得更快,并在应用需要时立即归还这部分内存。几乎每台 Mac 的“已使用的内存”都很高。真正说明有问题的是内存压力和交换。
为什么一个应用的 CPU 占用会超过 100%?
100% 表示一个处理器核心始终满载。同时用到多个核心的应用,比如正在构建的 Xcode 或正在导出的视频,可能显示 400% 甚至更高。它在工作时这很正常;如果一个应用空闲时仍居高不下,不妨退出后重新打开。
内存清理工具能让 Mac 变快吗?
不能。强行清空内存(sudo purge 和大多数“内存清理”应用就是这么做的)只会丢弃缓存的文件,之后 macOS 还得从磁盘重新读取。清理之后 Mac 反而更慢,而不是更快。
哪些终端命令能看到同样的信息?
memory_pressure | tail -1
sysctl vm.swapusage
top -o cpu -n 10 -l 1
有两条维护命令在少数情况下有用:sudo mdutil -E / 会在搜索找不到文件时重建聚焦索引(需要数小时),sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder 会在网站无法再通过名称打开时清除 DNS 缓存。大多数 Mac 都用不到。
磁盘满了会让 Mac 变慢吗?
会。macOS 需要空闲空间用于交换、缓存和更新。如果只剩几 GB 空闲,一切都会变慢,更新也可能装不上。保持 10% 到 20% 的磁盘空闲,是个不错的原则。