最近有人告诉我有关 /dev/shm 的信息。你们都帮助我加深了对 /dev/shm 的理解哪个 dev 文件夹允许您告诉操作系统缓存某些内容?
告诉我 /dev/shm 的人说我可以用它比在常规文件系统中更快地解压缩大文件。我现在正尝试在 OS X 机器上执行此操作。我跑
sudo cp /Volumes/USB/rcv1rcv2aminigoutte.tar.bz2 /dev/shm
并得到
cp: /dev/shm: Operation not supported
如何将文件从常规文件系统加载到安装在 /dev/shm 的内存文件系统中
一如既往地感谢。通过在这个网站上提问,我学到了很多东西。
答案1
据我所知,/dev/shm
这是 Linux 特有的功能。我刚刚仔细检查了我的 OSX 10.9.4 系统,它绝对没有/dev/shm
.
现在考虑到 OSX 植根于 Unix,如果它没有类似的东西,我会感到非常惊讶,因此搜索等效内容使我找到了这个标题为的 SO Q&A:OS X 是否有与 /dev/shm 等效的文件?,这又将我引导到这个标题为:使用 OSX RamDisk 的极速 Firefox。
此页面显示了在 OSX 上创建 RamDisk 的脚本:
#!/bin/bash
# Run this script to enable the Ramdisk for Firefox profiles
VolumeName="Mozilla"
# Size in MB, make sure it is not too low or too high
SizeInMB=220
NumSectors=$((2*1024*SizeInMB))
DeviceName=`hdid -nomount ram://$NumSectors`
echo $DeviceName
diskutil eraseVolume HFS+ RAMDisk $DeviceName
# move the current profiles folder
mv Profiles Profiles_ &&
# make a symlink to the ramdisk
ln -s /Volumes/RAMDisk ./Profiles &&
# then copy it to the ramdisk
/bin/cp -r Profiles_/* Profiles
具体来说这一行:
diskutil eraseVolume HFS+ RAMDisk $DeviceName
现在我们已经知道这种类型的设备在 OSX 行话中被称为 RAM 磁盘(它们实际上在 Linux 和其他操作系统上也被称为 RAM 磁盘,但我只是向您展示如何自己分解这些类型的问题以供将来参考) )。
该页面有更多信息和 GUI 工具的链接,RAM磁盘创建器,您也可以使用它在 OSX 上构建您自己的 RAM 磁盘。
摘抄以下是有关如何构建自己的命令的示例命令。
$ diskutil erasevolume HFS+ 'RAM Disk' `hdiutil attach -nomount ram://8388608`
运行它时看起来像这样:
笔记:您可以使用此方法来计算值,ram://XXXXX
如下所示:
将 X 字符替换为代表 RAM 磁盘总容量的块大小的数字。通过将所需的磁盘大小(以兆字节为单位)乘以 2048 来计算该数字。在我们的示例中,我们将创建一个 4 GB RAM 磁盘,这需要数字 8388608 (4096 * 2048)。