dd读u盘数据时读取速度快于200M/s

1924阅读 0评论2013-01-04 flightbird
分类:LINUX

用dd读u盘时,发现有时速度很快,大于200M/s,而从bushound上看不出读动作,说明是从缓存里读的数据。

在读之前执行下 echo 1 > /proc/sys/vm/drop_caches 就正常了。

关于drop_caches 的解释:

Kernels 2.6.16 and newer provide a mechanism to have the kernel drop the page cache and/or inode and dentry caches on command, which can help free up a lot of memory. Now you can throw away that script that allocated a ton of memory just to get rid of the cache...

To use /proc/sys/vm/drop_caches , just echo a number to it.

To free pagecache:

# echo 1 > /proc/sys/vm/drop_caches

To free dentries and inodes:

# echo 2 > /proc/sys/vm/drop_caches

To free pagecache, dentries and inodes:

echo 3 > /proc/sys/vm/drop_caches

This is a non-destructive operation and will only free things that are completely unused. Dirty objects will continue to be in use until written out to disk and are not freeable. If you run "sync" first to flush them out to disk, these drop operations will tend to free more memory.

上一篇:把所有屏幕输出重定向到文件,并且保持屏幕输出的方法
下一篇:linux下限制目录大小