A-A+

Tmpfs

2019年08月06日 百科 暂无评论
摘要:

Tmpfs\n\ntmpfs是类Unix系统上暂存档储存空间的常见名称,通常以挂载档案系统方式实现,并将资料储存在挥发性记忆体而非永久储存装置中。和RAMdisk的概念近似,但后者会呈现出具有完整档案系统的虚拟磁碟

Tmpfs\n\ntmpfs是类Unix系统上暂存档储存空间的常见名称,通常以挂载档案系统方式实现,并将资料储存在挥发性记忆体而非永久储存装置中。和RAM disk的概念近似,但后者会呈现出具有完整档案系统的虚拟磁碟。\n\n所有在tmpfs上储存的资料在理论上都是暂时借放的,那也表示说,档案不会建立在硬碟上面。一旦重新开机,所有在tmpfs里面的资料都会消失不见。理论上,记忆体使用量会随著tmpfs的使用而时有增长或消减。目前有许多Unix的发行版都有启用tmpfs,预设是把它以共享记忆体的方式用在系统的/tmp目录底下。这个特征在 Unix 上面会表现像是:\n\nSunOS是Solaris上一世代的作业系统,里头实作了tmpfs的部份功能最初在SunOS 4.1上实作,在1990三月释出。 1994年十一月,Solaris 2.1里头/tmp采用tmpfs的应用,并被纳入预设的档案系统之一。\n\ntmpfs在Linux kernel从2.4之后的版本都有支援。 \ntmpfs(之前比较为人所知的名称是\"shmfs\")和Linux的ramdisk装置定位有所不同。Ramdisk是固定划分一块记忆体出来使用,且允许比较不常用的页面可以移动到置换空间去。\n\nRAMFS相较之下,不会利用虚拟记忆体的部份(这个特点有利也有弊)。另外,在MFS还有其它ramfs的旧版本,都不会动态的调整大小,只能一直占用一个固定的大小。\n\ntmpfs的用法,举例来说是像:\"mount -t tmpfs -o size=1G,nr_inodes=10k,mode=0700 tmpfs /space\" \n这样就会使用1 GiB的置换空间,里头有10240 inodes且规定是在/space目录底下存取。这个档案系统的大小是可以随时调整的,像是再追加一个指令如:mount -o remount,size=2G /space\"。\n\n要注记一点,如果/tmp有安全上的顾虑的话,最好追加sticky bit上来。,就是权限应该被设作\"mode=1777\",而不是\"mode=0777或\"mode=777\"\n\n如果要是开机启用tmpfs那就是在fstab里面加个参数:\n其中2G是固定大小。\n\n从2005年九月10号之后tmpfs也正式被收录到NetBSD的原始码里头,同时在4.0之后的版本启用了这个功能。\nFreeBSD也已经收录了NetBSD的这项功能,在7.0之后的版本也跟著启用。\n\n视窗作业系统也有一个类似tmpfs的方式来处理,就是\"temporary files\"。在系统的低记忆体底下,档案会以FILE_ATTRIBUTE_TEMPORARY和FILE_FLAG_DELETE_ON_CLOSE(「暂存档案」与「关闭时删除该档」的旗标)标记在记忆体里面。这种方式的处理相当类似tmpfs,除了这些档案会被写入到特定的低记忆体位置而不是置换空间去。这个技术也常用在伺服器传送档案的时候,把档案传送到客户端之前先丢到一个缓冲的暂存上面。\n\n"}

标签:

给我留言

网站地图 Copyright © 2019 百科知识  

用户登录