Matrix 精选
Matrix 是少数派的写作社区,我们主张分享真实的产品体验,有实用价值的经验与思考。我们会不定期挑选 Matrix 最优质的文章,展示来自用户的最真实的体验和观点。
文章代表作者个人观点,少数派仅对标题和排版略作修改。
Power Manager Setting (pmset) 是macOS 的系统级电池管理工具,通过调整 macOS 的睡眠计划,可以让Mac睡得更「好」,达到 「插电响应快,断电用得久」 的理想目标。
Mac 是怎么睡觉的?
Mac 的睡觉分成两种,「休眠」 (sleep)和「睡眠」 (hibernate)。简单点说,休眠和睡眠就好比人的小憩和睡大觉,小憩醒得快,睡大觉就醒得慢。
当你长时间不操作 Mac 或把 MacBook 的盖子合上或点击 Apple Logo 菜单下的 Sleep 选项,系统会进入「休眠」状态,由于数据仍存储在内存中,此时系统可以被快速唤醒,快速恢复到休眠前的状态。
在「休眠」一段时间后,Mac 会根据你的设定进入更深一层的「睡眠」状态,此时 Mac 会考虑将内存中的数据作为一个镜像写入到硬盘中(GB 级别大小),然后放弃内存供电,达到更加省电的目的。此时唤醒系统,数据需要从硬盘重新装载至内存,耗时长,速度慢。
总结一下,「休眠」和「睡眠」的主要区别:
唤醒速度快慢是否向内存供电是否向硬盘写入内存镜像
当然,Mac 到底要怎么「睡」,我们是可以通过pmset调整的。
macOS 系统睡眠流程
macOS 睡眠流程图
如图所示,当我们不使用 Mac 时,一段时候后,系统先进入sleep状态,然后根据hibernatemode的模式,决定将镜像数据写入内存还是硬盘。
standby和autopoweroff相当于两个并行的模式计时器,Mac 会根据当前供电条件作出模式的选择,在计时器阶段内,当时间条件满足,Mac 就会将镜像写入硬盘并睡眠。
pmset 用法
sudo pmset [-选项]
例子:
pmset -g custom:查看当前所有睡眠计划pmset -g cap:查看当前供电条件下可以调节的参数sudo pmset restoredefaults:还原全部设置
常用选项
pm