OS X 开启 RamDisk 来为 Safari 和 Xcode 加速

随着 Xcode 的版本升级,速度越来越慢,尤其一言不合就“白板”的问题相信大家都会有遇到。

Xcode 经常性丢失代码高亮,俗称“白板”

这是非常影响开发效率的事情。如果有可能,那么我们将 Xcode 的缓存文件放到内存,速度应该快很多。(虽然现在 rmbp 的 ssd 已经十分的快速了,但比起内存,还是差的很远——对于机械硬盘的老机器来说,提速就会更加明显了。

——还记得 Windows 的那个 RamDisk 吗?其实 Linux 也有,而且不需要第三方的软件,一条自带的命令就可以完成了!

我们的目标就是从内存里划出一部分空间,把它格式化为硬盘挂载的系统当中,专门用来放缓存!

要注意的地方

既然是内存,那么关机内容是肯定会丢失的,所以我们仅仅用它来存放可以再生成的缓存,可以再下载的内容也不应该放在里边。比如 OS X 里的 helpd 下载的帮助文件,就不应该放在里边

你的内存总空间是多少,分配的内存硬盘体积就应该相应地改变大小,毕竟将内存划走了固定的一块,比如我这里用的是1GB,那么我原本的8GB内存就变成了7GB大小。

动手做

打开 OS X 自带的脚本编辑器 ,新建一个文档,其它默认,然后在里边写入:

  • 2048  1MB
  • 2097152 1GB
  • 4194304 2GB
  • 8388608 4GB

然后把它保存成  .app格式:

把脚本保存成一个应用

双击执行就可以自动挂载一个叫做“RamDisk”的硬盘了,这个硬盘里的内容会在电脑重启后清空,大小是1GB,如果你把它推出了,那么里边的东西也会丢失,所以务必存放缓存文件。

生成之后,我们就来把其它应用的缓存替换过来,对于 Xcode 来说,你可以在应用里直接设置,不过我们这里统一使用目录替换的方式,好处是一些不支持配置的比如 Safari ,我们也能手动把它的缓存目录替换到内存中,对应用透明。

这里我们替换三个应用,首先退出它们:Safari Chrome Xcode

然后删除这些应用的缓存目录:

这些目录里的文件都是可以随时删除的,你重新打开就会自动建立,你的数据都不会丢失。

然后根据我们在内存硬盘中建立好的目录来创建目录链接,就像是 Windows 里的快捷方式,但比那个好用多了:

这个目录替换是一次设置永久生效的,所以,我们也应该让这块内存硬盘在开机的时候自动挂载,那么只需要在“系统偏好设置”当中-“用户与群组”-“登陆选项”里加入之前创建的app文件即可。

删除与恢复

如果要删除整个方案,那么只需要先去下面的目录把创建的链接文件删除,再去掉那个脚本的启动项就好了:

性能与效果

如果你仅仅做一般的 Xcode 开发,那么 1GB 的空间应该是足够使用的了,这样一来 Xcode 的速度会快很多,不再那么容易就白板了。另外,对于 Chrome 和 Safari 的效果十分的明显。

如果你像我一样经常用 Xcode 来回切换多个开发项目并编译,那么可能会遇到空间塞满的情况,这时候你要注意这个“内存硬盘”不会自己释放空间,所以要手动进去删除一下 Xcode 生成的缓存文件,然后再编译。

往好的方面想,即使重新生成缓存文件,速度也还是比固态要快的,还不会降低硬盘的读写寿命。

 

延伸阅读

如何让 Xcode 在读写上提速100倍?

Mac OS X 开启原生自带虚拟内存盘(Ramdisk)

本文由 落格博客 原创撰写:落格博客 » OS X 开启 RamDisk 来为 Safari 和 Xcode 加速

转载请保留出处和原文链接:https://www.logcg.com/archives/2725.html

About the Author

R0uter

如非声明,本人所著文章均为原创手打,转载请注明本页面链接和我的名字。

Comments

    1. 請問一下, 照著做可以產生ramdisk及瀏覽器用的快取資料夾, 雖然刪除了硬盤中的快取資料夾, 但是實際開啟瀏覽器後, 卻是硬盤與Ramdisk 都同時寫入一樣的資料, 硬盤等於還是被當做快取寫入, 為何不是僅ramdisk 有資料才對?

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注