Пожалуйста, скажите мне разницу между ramdisk и ramfs.
3 ответа
"RAM диск" - это драйвер устройства, который просто создает блочные устройства, которые хранят свои данные в памяти (фиксированный максимальный размер, постепенно распределяется по мере необходимости), который вы можете использовать для любых целей, например, для создания на нем файловой системы ext2, а затем для монтирования в каком-либо месте. в файловой системе. Многие дистрибутивы Linux по умолчанию настроены на автоматическое создание и представление этих устройств в виде /dev /ram0, /dev /ram1, ...
"ramfs" является драйвером файловой системы. Чтобы использовать его, вы используете команду "mount", просто укажите тип файловой системы (ramfs) и целевой каталог; устройство не требуется (например, "none" может использоваться): mount -t ramfs none /path /to /location
Что касается использования, то основное различие между ними состоит в том, что ramfs повторно использует существующие механизмы кэширования ядра для хранения своих данных. Другими словами, когда вы записываете на «ram-диск», ваши данные сохраняются в памяти, выделенной этим ram-диском, плюс эти данные сохраняются в ОЗУ с помощью механизма кэширования ядра, поэтому мы получаем дублирование здесь. При использовании ramfs дублирование не происходит, поскольку ramfs напрямую использует эти механизмы кэширования как свою собственную реализацию (ramfs).
Смотрите также:https://www.kernel.org/doc/Documentation/blockdev/ramdisk.txt https://www.kernel.org/doc/Documentation/filesystems/ramfs-rootfs-initramfs.txt
RAM-диск реализует виртуальный диск в энергозависимой памяти. Файловая система RAM реализует виртуальную файловую систему в энергозависимой памяти.
Другими словами: разница между RAM-диском и файловой системой RAM - это разница между диском и файловой системой.
RAM-диск - это диск фиксированного размера в памяти. RamFS - это файловая система в памяти, которая может использовать всю память и вызывать сбой системы. Кроме этого производительность 2 очень похожа.