最近需要使用到 ramfs 和 tmpfs 做内存文件系统,下面对这两个文件系统相关的信息,做一下总结:

参考链接:

https://www.thegeekstuff.com/2008/11/overview-of-ramfs-and-tmpfs-on-linux/

https://www.cnblogs.com/dosrun/p/4057112.html

https://www.cnblogs.com/zlhff/p/5436092.html

http://blog.chinaunix.net/uid-375398-id-4096820.html (ramdisk 于 ramfs )

ramfs, tmpfs, rootfs, initramfs的区别

ramfs 和 tmpfs 对比:

Experimentation Tmpfs Ramfs
Fill maximum space and continue writing Will display error Will continue writing
Fixed Size Yes No
Uses Swap Yes No
Volatile Storage Yes Yes

结论:

  • ramfs 因为追求高效和简单,去掉了容量计数;所以当使用的值超过分配的值的时候,将会继续使用;
  • tmpfs 使用了虚拟内存,其会使用swap和内存, 其会将一些不必要的文件内容写入到swap当中;并且会使用计数,来统计当前使用的容量,并进行容量限制;使用df -h 操作可以显示其具体使用的容量和可用容量信息;现在系统中,大多使用 tmpfs 作为内存文件系统;
  • ramdisk 是快设备,ramfs 是文件系统;ramdisk的内存空间大小是固定的,一经设定就不能改变大小了;
  • tmpfs 带来了一定的管理机制,但是也是意味着 相对于 ramfs,tmpfs 性能较差一点;不过使用方式上基本相同;

Linux 社区文档:

https://www.kernel.org/doc/Documentation/filesystems/tmpfs.txt

https://www.kernel.org/doc/Documentation/filesystems/ramfs-rootfs-initramfs.txt

https://en.wikipedia.org/wiki/Tmpfs (/dev/shm)

ramfs 与 tmpfs 的使用和测试(没想到之前也写过类似的博客,竟然忘记了):

https://www.cnblogs.com/xuyaowen/p/ramfs-tmpfs-test.html

ramfs 和 tmpfs 以及 ramdisk相关调研的更多相关文章

  1. ramfs和tmpfs的区别

    简介 ramfs和tmpfs是在内存上建立的文件系统(Filesystem).其优点是读写速度很快,但存在掉电丢失的风险.如果一个进程的性能瓶颈是硬盘的读写,那么可以考虑在ramfs或tmpfs上进行 ...

  2. Linux 内存文件系统-ramfs and tmpfs

    Linux内存文件系统:可满足高IO的要求 ramdisk: 基于虚拟在内存中的其他文件系统(ex2fs). 挂载方式:mount /dev/ram /mnt/ramdisk ramfs: 物理内存文 ...

  3. GNN 相关资料记录;GCN 与 graph embedding 相关调研

    最近做了一些和gnn相关的工作,经常听到GCN 和 embedding 相关技术,感觉很是困惑,所以写下此博客,对相关知识进行索引和记录: 参考链接: https://www.toutiao.com/ ...

  4. GNN 相关资料记录;GCN 与 graph embedding 相关调研;社区发现算法相关;异构信息网络相关;

    最近做了一些和gnn相关的工作,经常听到GCN 和 embedding 相关技术,感觉很是困惑,所以写下此博客,对相关知识进行索引和记录: 参考链接: https://www.toutiao.com/ ...

  5. 资深小白带你走进OS Memory

    图片来源:http://www.tomshardware.com/ 序言: Memory(内存)是一台计算机组成的重要部分,也是最基础的一部分.其它基础组件有主板.CPU.磁盘.显卡(可独立可集成)等 ...

  6. Linux下tmpfs与ramfs的区别

      ramfs是Linux下一种基于RAM做存储的文件系统.在使用过程中你就可以把ramfs理解为在普通的HDD上建立了一个文件系统,而现在HDD被替换成了RAM,因为是RAM做存储所以会有很高的存储 ...

  7. Linux的tmpfs和ramfs

    tmpfs tmpfs是一种虚拟内存文件系统, 它的存储空间在VM里面,现在大多数操作系统都采用了虚拟内存管理机制, VM(Virtual Memory) 是由Linux内核里面的VM子系统管理. V ...

  8. ramdisk配置、解压、创建rootfs、启动简单分析

    关键词:ramdisk.rdint..init.ramfs.__initramfs_start.__initramfs_size.rootfs.ramfs.populate_rootfs().gzip ...

  9. linux里tmpfs文件系统

    linux里tmpfs文件系统 是一个虚拟内存文件系统,它不同于传统的用块设备形式来实现的Ramdisk,也不同于针对物理内存的Ramfs.Tmpfs可以使用物理内存,也可以使用交换分区. umoun ...

随机推荐

  1. Android组件体系之视图绘制

    一.View组件View组件有几个重要的方法需要关注,也是自定义View经常需要重写的方法. 1.measure作用是测量View组件的尺寸.对应的方法是onMeasure,测量View的宽和高.Vi ...

  2. 原生js的2048的制作过程

    1.首先我们来看一下效果图 开始: 结束: 接下来我们来实现代码部分: HTML部分: 2048大家应该都玩过,首先我们要准备16个盒子让它4*4排列,这里的css我就不说了,这应该使我们都会的,在这 ...

  3. IT兄弟连 HTML5教程 CSS3属性特效 2D变换1

    通过CSS3转换,能够对元素进行移动.缩放.转动.拉长或拉伸.它如何工作?转换是使元素改变形状.尺寸和位置的一种效果.CSS3转换包括2D转换和3D转换,本小结我们来了解2D变换的转换方法. 转换属性 ...

  4. js-07-事件

    一.js事件绑定在对象上的三种方法 a:将事件绑定在元素标签的属性上 <h3 onclick="console.log('奥特曼打怪兽')">海绵宝宝历险记</h ...

  5. ES6-map数据结构,增加、删除、查找 方法(set get has delete clear ) 属性:size

    map数据结构: 本质上是键值对的集合,类似集合: 可以遍历,方法很多,可以跟各种数据格式转换. let json = { name:'ananiah', age:'18' } //效率低 需要遍历j ...

  6. [转]Python十个高大上的语法

    Python 是一种代表简单思想的语言,其语法相对简单,很容易上手.不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了.本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并 ...

  7. ReactCocoa 关键字

    ReactCocoa关键字 RACSiganl RACSubject和RACReplaySubject RACTuple元组 RACSequence RAC中的集合类,用于代替NSArray,NSDi ...

  8. 【好书推荐】《剑指Offer》之硬技能(编程题12~16)

    本文例子完整源码地址:https://github.com/yu-linfeng/BlogRepositories/tree/master/repositories/sword <[好书推荐]& ...

  9. 1、netty入门说明

    netty中的例子,基本模式都是:server -> Initializer -> Handler . 在server中去启动线程,打开端口,设置initializer,和一些启动的参数配 ...

  10. 检测值是否存在(??)(Freemarker的null值处理)

    使用形式: unsafe_expr?? 或 (unsafe_expr)?? 这个操作符告诉我们一个值是否存在.基于这种情况, 结果是 true 或 false. 访问非顶层变量的使用规则和默认值操作符 ...