一、Ramfs:顾名思义是内存文件系统,它处于虚拟文件系统(VFS)层,不像ramdisk那样基于虚拟在内存中的其他文件系统(ex2fs)。因而,它无需格式化,可以创建多个,只要内存足够,在创建时可以指定其最大能使用的内存大小。
如果你的Linux已经将Ramfs编译进内核,你就可以很容易地使用Ramfs了。创建一个目录,加载Ramfs到该目录即可。缺省情况下,Ramfs被限制最多可使用内存大小的一半。可以通过maxsize (以kbyte为单位)选项来改变。不能进行swap、只有root用户才可以被允许访问ramfs.
# mount -t ramfs none /testRAM -o maxsize=2000 (创建了一个限定最大使用内存为2M的ramdisk)
二、tmpfs:也是Linux下的一个文件系统,它将所有的文件都保存在虚拟内存中,umount tmpfs后所有的数据也会丢失,tmpfs就是ramfs的衍生品。tmpfs使用了虚拟内存的机制,可以进行swap,一般用户也可以访问tmpfs.
#mkdir -p /mnt/tmp
#mount -t tmpfs -o size=20m tmpfs /mnt/tmp/
三、ramdisk:比较老的ramdisk在内存区外分配一个综合的块,用它作为文件系统的回写堆。这个块的是固定大小的,所以挂载的文件系统也是固定的。而且额外的开销也很大。
和ramfs对比,ramdisk浪费了空间,让cpu做了不必要的工作,弄脏了cpu的缓存。总之,ramfs 相对来说比较简单。
ramfs,tmpfs和ramdisk
最新推荐文章于 2023-12-15 20:28:11 发布