活动监视器的“磁盘”页通过读写吞吐量与频次定位高i/o进程,再用lsof和fs_usage查具体文件及实时操作;程序坞波形图与能耗页可日常感知异常磁盘活动。
活动监视器本身不能告诉你“哪个文件”正在被读写,但它能快速指出“哪个进程”在大量占用磁盘资源——这是分析磁盘使用和启动深度监测的第一步。
看懂“磁盘”页的关键列
打开活动监视器 → 切换到“磁盘”标签页,重点关注四列:
- 读取字节/秒 和 写入字节/秒:反映吞吐量,数值高说明在搬运大块数据(如视频转码、备份)
- 读取次数/秒 和 写入次数/秒:反映操作频次,数值远高于吞吐量(例如 >1000 次但仅几百 KB/s),大概率是海量小文件操作(如 Spotlight 索引、npm install、编译缓存扫描)
- 右键表头 → “列” → 勾选“% CPU”或“能耗”,可同步观察是否伴随高 CPU 占用或“高”能效影响
定位高 I/O 进程后查它在访问哪些文件
活动监视器只显示进程名和 PID,不显示路径。要看到具体文件,需配合终端命令:
- 在“磁盘”页记下目标进程的 PID(如 mdworker 的 PID 是 1234)
- 打开终端,运行:lsof -p 1234 | grep REG,筛选出常规文件句柄
- 重点看 SIZE 或 OFFSET 持续变化的行,尤其是路径含 ~/Library/Caches、Containers、node_modules、.git/objects 的条目
用 fs_usage 实时捕获每一次文件操作
当需要确认某进程是否正对特定文件执行 read/write、耗时多少、是否卡顿,必须用系统内置工具 fs_usage:
- 终端中执行:sudo fs_usage -f filesys -w -t 0.1 -p 1234(替换 1234 为实际 PID)
- 输出中每行包含时间戳、进程名、系统调用(如 read_nocancel)、文件路径、字节数、耗时(单位:微秒)
- 加 -e fs_usage 可排除自身日志干扰;加 | grep write 可快速过滤写操作
结合程序坞图标与能耗页做日常感知
不用一直开着窗口,也能及时发现异常:
- 活动监视器 → “显示” → “程序坞图标” → 勾选“显示硬盘活动”,程序坞出现动态波形图:持续剧烈跳动 = 高强度磁盘活动
- 同时切换到“能耗”页,若同一进程显示“高”能耗影响 + “唤醒频率” >1000/min,基本可判定它是能效瓶颈源头
- 这种组合特别适合识别后台更新、云同步、杀毒扫描等“安静但耗电”的磁盘密集型任务











