ramfs 和 tmpfs文件系统
在linux中可以把内存区域挂载到文件系统中来加速度文件的存取速度,同时也可以减少磁盘的I/O操作
如果我必须一下子说清楚 tmpfs,我会说 tmpfs 就象虚拟磁盘(ramdisk),但不一样。象虚拟磁盘一样,tmpfs 可 以使用您的 RAM,但它也可以使用您的交换分区来存储。而且传统的虚拟磁盘是个块设备,并需要一个
mkfs 之类的命令才能真正地使用它,tmpfs 是一个文件系统,而不是块设备;您只是安装它,它就可以使用了。总而言之,这让 tmpfs 成为我有机会遇到的最好的基于 RAM 的文件系统。让我们来看看 tmpfs 更有趣的一些特性吧。正如我前面提到的一样,tmpfs 既可以使用 RAM, 也可以使用交换 分区。刚开始这看起来可能有点武断,但请记住 tmpfs 也是我们知道的“虚拟内存文件系统”。而且,您可能也知道,Linux 内核的虚拟内存资源同时来源于您的 RAM 和交换分区。内核中的 VM 子系统将这些资源分配到系统中的其它部分,并负责在后台管理这些资源,通常是透明地将 RAM 页移动到交换分区或从交换分区到 RAM 页。
tmpfs 文件系统需要 VM 子系统的页面来存储文件。tmpfs 自己并不知道这些页面是在交换分区还是在 RAM 中;做这种决定是 VM 子系统的工作。tmpfs 文件系统所知道的就是它正在使用某种形式的虚拟内存。
这里是 tmpfs 文件系统另一个有趣的特性。不同于大多数“标准的”文件系统,如 ext3、ext2、XFS、JFS、ReiserFS 和其它一些系统,tmpfs 并不是存在于一个底层块设备上面。因为 tmpfs 是直接建立在 VM 之上的,您用一个简单的 mount 命令就可以创建 tmpfs 文件系统了。
|
执行这个命令之后,一个新的 tmpfs 文件系统就安装在 /mnt/tmpfs,随时可以使用。注意,不需运行
mkfs.tmpfs ;事实上,那是不可能的,因为没有这样的命令存在。在 mount 命令执行之后,文件系统立即就被安装并且可以使用了,类型是 tmpfs 。这和 Linux 虚拟磁盘如何使用大相径庭;标准的 Linux 虚拟磁盘是 块设备,所以在使用它们之前必须用您选择的文件系统将其格式化。相 反,tmpfs 是一个文件系统。所以,您可以简单地安装它就可以使用了。» 阅读全文

