Chinaunix首页 | 论坛 | 博客
  • 博客访问: 76493
  • 博文数量: 20
  • 博客积分: 257
  • 博客等级: 二等列兵
  • 技术积分: 150
  • 用 户 组: 普通用户
  • 注册时间: 2010-11-22 17:29
个人简介

文章分类

全部博文(20)

分类: LINUX

2012-05-08 15:20:00

 Tmpfs 是一个虚拟内存文件系统,它不同于传统的用块设备形式来实现的ramdisk,也不同于针对物理内存的Ramfs。Tmpfs可以使用物理内存,也可以使 用交换分区。在Linux内核中,虚拟内存资源由物理内存(RAM)和交换分区组成,这些资源是由内核中的虚拟内存子系统来负责分配和管理。Tmpfs就 是和虚拟内存子系统来”打交道”的,它向虚拟内存子系统请求页来存储文件,它同Linux的其它请求页的部分一样,不知道分配给自己的页是在内存中还是在 交换分区中。Tmpfs同Ramfs一样,其大小也不是固定的,而是随着所需要的空间而动态的增减。使用tmpfs,首先你编译内核时得选择”虚拟内存文 件系统支持(Virtual memory filesystem support)” ,然后就可以加载tmpfs文件系统了。

  1. # mkdir -p /mnt/tmpfs
  2. # mount tmpfs /mnt/tmpfs -t tmpfs


为了防止tmpfs使用过多的内存资源而造成系统的性能下降或死机,可以在加载时指定tmpfs文件系统大小的最大限制。


  1. # mount tmpfs /mnt/tmpfs -t tmpfs -o size=512M


以上创建的tmpfs文件系统就规定了其最大的大小为512M。 必须明白的是,一旦系统重启,它们中的内容将会丢失。所以那些东西可以放在内存文件系统中得根据系统的具体情况而定。

补充:ramfs只会在物理内存中被创建,而tmpfs可能在物理内存中创建,也可能在交换分区中被创建。对于想利用内存的高速IO来提高效能的应用,最好是使用ramfs。对于只是想存放临时缓存的应用,最好是用tmpfs,以提前内存的利用率。
阅读(1668) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~