1

Linux 中有一个 ramdisk 功能,这是通过挂载 tmpfs 的 shmfs 来实现的,例如:

# mount -t shm shmfs -o size=20g /dev/shm

或者

# mount –t tmpfs tmpfs /dev/shm

此外,一些 linux 具有ramfs,即“ramfs 类似于 shmfs,除了页面不可分页或可交换”

# mount -t ramfs ramfs /dev/shm

我想在 solaris 10 (sparc64) 上创建大尺寸(数十 GB)的 ramdisk。我怎样才能在solaris中做到这一点?如何在 solaris 中不仅创建 ramdisk,而且创建不可交换的 ramdisk?

然后我想使用 ramdisk 中的大文件将内存映射到 32 位进程,所以解决方案应该允许我将小部分文件从 ramdisk 映射到 32 位应用程序。

4

1 回答 1

4

对于基于虚拟内存的磁盘:

# mount -F tmpfs -o size=20000m swap /mountpoint

对于物理内存:

# a=$(ramdiskadm -a bigdisk 20g)
# newfs $a
# mount $a /mountpoint

顺便说一句,Solaris(更准确地说是 SunOS)是 1987 年左右第一个实现 tmpfs 的 Unix。

于 2011-11-11T21:21:13.937 回答