请告诉我 ramdisk 和 ramfs 之间的区别。
答案1
“RAM 磁盘”是一种设备驱动程序,它仅创建块设备,将数据存储在内存中(固定最大大小,根据需要逐渐分配),您可以将其用于任何目的,例如在其上创建 ext2 文件系统,然后将其挂载到文件系统中的某个位置。许多 Linux 发行版默认配置为自动创建这些设备并将其显示为 /dev/ram0、/dev/ram1、...
“ramfs” 是一个文件系统驱动程序。要使用它,您可以使用“mount”命令,只需指定文件系统类型 (ramfs) 和目标目录;不需要设备(例如可以使用“none”):mount -t ramfs none /path/to/location
关于使用,两者之间的主要区别在于“ramfs”重用了现有的内核缓存机制来存储其数据。换句话说,当您写入“ram disk”时,您的数据将保存到该 ram disk 分配的内存中,加这些数据通过内核缓存机制保存在 RAM 中,因此这里会出现重复。使用 ramfs 时不会出现重复,因为 ramfs 直接使用这些缓存机制作为其自身 (ramfs) 实现。
也可以看看: https://www.kernel.org/doc/Documentation/blockdev/ramdisk.txt https://www.kernel.org/doc/Documentation/filesystems/ramfs-rootfs-initramfs.txt
答案2
RAM 磁盘在易失性存储器中实现虚拟磁盘。RAM 文件系统在易失性存储器中实现虚拟文件系统。
换句话说:RAM 磁盘和 RAM 文件系统之间的区别就是磁盘和文件系统之间的区别。
答案3
Ram 磁盘是内存中的固定大小磁盘。RamFS 是内存中的文件系统,可能会用尽所有内存并导致系统崩溃。除此之外,两者的性能非常相似。