Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103717880
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: LINUX

2008-04-26 23:32:11

 By

最近把笔记本的内存从512MB一举升级至2GB,使用时的畅快感是无法形容的。

之前的使用习惯完全被打破,现在是毫不吝啬地把要用到的软件能开多少就开多少,配合Linux系统优秀的缓存技术,电脑使用时几乎是越用越快,丝毫不想重启。

爽快之余,我又想,如果只是这样“填鸭”式的利用2GB内存似乎也太落后了,我得利用Linux构架的先进之处,来充分使用内存。于是,我想到了Ramdisk!

Ramdisk,即将内存作为磁盘用。内存的速度之快,是电脑存储设备中仅次于CPU缓存和显示卡显存的,而电脑中硬盘之慢,是有目共睹的。

将内存容量的一部分作为虚拟磁盘, 把经常需要读取和交换的数据放置其中,这才是对内存的最好利用。

废话不多说,让我们一步步来设置Ramdisk。

Linux 2.6内核一般默认支持16个Ramdisk设备,你可以使用以下命令看看你的Linux有多少个可供使用的Ramdisk:

ls /dev/ram*

一般情况下,我们不会把16个都用完,这里我们只用一个就够了。

跟使用任何空的设备一样,我们先要把“磁盘”格式化成我们想要的格式,这里还是用最普遍的ext3吧:

sudo mkfs.ext3 /dev/ram0

格式化成ext3几乎是瞬间完成的,因为是格式化内存嘛。我们会问,那这个磁盘的容量是多少?从输出的信息可以看到,比如我的是: blocks=67108864,大约是64MB。因此我可以创建共16×64=1024MB的虚拟内存。

格式化好了,现在要把它挂载起来使用。

在任意你想要的位置建立一个文件夹,比如我的:/hom/tualatrix/ramdisk,然后执行命令挂载:
sudo mount /dev/ram0 ~/ramdisk/

挂载好了~别急,还不能用呢。因为ramdisk的所有权是root的,我们要把它变成自己的:

sudo chown tualatrix:tualatrix ~/ramdisk

终于弄好了这个Ramdisk,现在可以随心所欲的像对待普通文件夹一样对其操作了。

但是,这个才64MB的虚拟磁盘能干什么呢?能不能把它的容量放大点?

抱歉,除了使用格式化多个/dev/ram进行子目录挂载以外,我暂时没有找到把Ramdisk单个分区容量变大的方法。

不过,这个Ramdisk真的很强!如果你把它利用好的话,它一定能帮上你的忙,因为它的速度非常快!

我对其用hdparm进行性能测试( sudo hdparm -tT /dev/ram0),buffered disk reads的速度达到了842MB/s,而我的硬盘只有32MB/s,快到30倍的差距了……

具体想怎么利用它,就要靠大家发挥了~比如将/tmp目录挂载至Ramdisk也是个不错的主意!

不过别忘了,关机时内存的数据可要消失了。如果你需要保存数据,这时可以写个转储数据的脚本,放入/etc/init.d/,再链接至/etc/rc0.d(Ubuntu系统时关机调用此目录脚本),再写个脚本自动格式化并挂载Ramdisk和调用数据,同样放入/etc/init.d/,再链接至/etc/rc2.d(Ubuntu系统开机默认调用),这样就可以方便实现自动挂载和自动转储了。

具体的就要靠大家灵活应用了~

大内存的朋友还不赶快行动!

转载请注明:转自

阅读(256) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~