Linux Disk in Ram: ramdisk / ramfs / tmpfs

风行水上 @ 2014-11-15 16:59:40
标签:

    读写文件是最常见不过的操作。通过我们说文件,是指存储在磁盘上的文件。

    显然这里会产生一个性能上考虑:把文件系统放在内容中以增加读写速度。

    RamDisk

    传统意义上的RamDisk,即在内在中开辟一块空间,格式化为文件系统。

    ls /dev/ram*
    

    这种方式创建的RamDisk大小固定。

    ramfs

    ramfs从内核2.4开始支持。

    ramfs处于虚拟文件系统(VFS)层,使用时无需格式化。空间大小不是固定的,而只是有一个上限。

    tmpfs

    上面两种类型的"ramdisk"使用的都是物理内存。

    tmpfs可以使用物理内存,也可以使用交换分区。换句话说,就时tmpfs使用的是内存还是交换分区,tmpfs本身是不知道的。

    在Linux内核中,虚拟内存资源由物理内存(RAM)和交换分区组成,这些资源是由内核中的虚拟内存子系统来负责分配和管理。Tmpfs向虚拟内存子系统请求页来存储文件,它同Linux的其它请求页的部分一样,不知道分配给自己的页是在内存中还是在交换分区中。

    参考资源

    标签:

      分享到:
      comments powered by Disqus

      23/25ms