在 Mac OS X 中创建和使用内存盘
在 Mac OS X 中创建和使用内存盘
在 Windows 系统上一直使用 ImDisk 创建内存盘作为缓存, 将系统临时目录、 浏览器缓存等设置到内存盘, 这样做的好处是很明显的:
1、 内存盘不用定时清理, 系统重启就自动清空 2、 读写内存的速度是非常快的, 程序运行速度也会加快很多
现在转到 Mac OS X 平台, 当然也要使用内存盘了, 在 OS X 系统上, 创建和使用内存盘比较容易的, 而且不需要借助第三方软件, 只是设置稍微繁琐一些, 在 OS X 系统上创建和使用内存盘的步骤如下:
1、 打开 AppleScript Editor(找不到的可以直接用 Spotlight 搜索);
2、 输入下面的脚本:
do shell script "
if ! test -e /Volumes/"Ramdisk" ; then
diskutil erasevolume HFS+ "RamDisk" `hdiutil attach -nomount ram://1048576`
fi
"
注意: ram://1048576 表示内存盘大小, 对应 512M (1024 * 2 * 512) 的内存盘, 如果需要自定义大小, 根据这个公式计算。 1G 就要 1024 * 2 * 1024 , 2G 依次类推。 内存盘不是越大越好, 也不是越小越好, 要根据自己的内存容量选择合适的大小。 我的 MBP 4G 内存, 创建 512M 内存盘。
3、 将这个脚本保存为应用程序, 如下图所示:
保存好之后, 可以先执行一下, 看有没有挂载一个名称为 RamDisk 的内存盘, 加载好了如下图所示:
4、 接下来需要把缓存目录设置到内存盘, 打开一个命令行窗口, 在命令行窗口输入下面的命令:
sudo rm -rf ~/Library/Caches
ln -s /Volumes/RamDisk/ ~/Library/Caches
先删除自己用户目录下的缓存目录,再将 ~/Library/Caches 链接到 /Volumes/RamDisk/ , 完成之后测试一下, 随便打开一个程序, 看看 RamDisk 下面有没有生成对应的临时目录, 如果有, 就表示成功了, 如果没有, 就要再自己检查一下步骤了。
5、 将 RamDisk 设置为启动项, 打开 System Preference/Users & Groups , 选择自己的用户名, 点击 Login Items , 添加第 2 步保存的应用即可。
注意问题
1、 系统运行中不要 unmount ramdisk , 否则可能会出现不可预料的后果; 2、 如果用的是 SSD 硬盘, 就不要再设置内存盘了, SSD 的速度已经很快了;
- C#CreateGraphics方法的三种实现方式
- 一斤代码深入理解系列(四):微信小程序和服务器通信-WebSocket
- linux学习第十四篇:查看磁盘,文件大小命令:df,du;磁盘分区
- 二叉树的性质和常用操作代码集合
- linux学习第十五篇:磁盘格式化,磁盘挂载,手动增加swap空间
- 《Java程序设计基础》 第8章手记Part 2
- 备忘录模式
- 《Java程序设计基础》 第8章手记Part 1
- 你很有想法,跟我学做菜吧No.3
- 《数据结构》 定长顺序串常用操作代码集合
- 一斤代码深入理解系列(七):微信小程序中使用微信风格样式库-WeUI
- 餐厅老板要累疯了No.2
- linux学习第十九篇:压缩介绍,gzip,bzip2,xz压缩工具
- 区块链?黑人问号?NO.1
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 详解 mysql int 类型的长度值问题
- 常见排序算法及golang 实现
- CentOS 8 安装Git及基本配置
- 创建远程仓库,如何将本地项目上传到GitLab
- mysql索引原理,看这篇就够啦
- TypeScript 设计模式之抽象工厂
- vim插件的安装(NERDTree)
- php7的zval相关介绍
- Zend_string与写时复制
- php的引用类型底层解析
- Roslyn 解决 dotnet core 应用进程间引用找不到 runtimeconfig 依赖文件
- dotnet 在 UOS 国产系统上安装 dotnet sdk 的方法
- 清空Redis集群所有节点的数据工具
- php数组hashtable的巧妙设计
- php运行生命周期--模块初始化php_module_startup