其实是一个大缓存的文件复制工具。
使用Windows系统的复制/移动文件功能时,由于操作系统在底层进行时间片分割,因此文件读写操作非常频繁。
底层时间片分割本来是一件好事,可以避免某一个程序被随机的无期限阻塞。
但是,如果是在同一块物理硬盘上复制/移动文件(不通分区间),就会造成磁头快速的在读写柱面之间来回寻道,导致两大问题:
1. 噪音增加,对盘体的摩擦增加,发热增加,影响硬盘寿命。
2. 读写效率大大的降低,延长了操作时间。
针对这两个问题,我写了这个"高性能缓存复制程序",利用现在机器越配越大的内存,降低读写操作切换的频度,以求提高文件复制效率。
根据测试,在同一个硬盘的两个分区间复制文件,Windows 复制一个220MB文件用了大约50秒,本程序复制一个260MB的文件只用了40秒!
*** 升级版本提高了在同一物理硬盘的操作速度 10%
*** 升级版本提供了在不同物理硬盘的增强操作模式,提高性能一倍!
=== 第二升级版本增加了有用的快捷按钮!
=== 第二升级版本增加磁盘空间和文件大小预览!
(以下广告词)
本程序界面美观,操作方便,稳定可靠,是拥有大量的大文件收集者的居家旅行,杀人越货必备工具!
<<<<< 附送品介绍 >>>>>
64位文件切割器
由于历史原因,目前的绝大多数程序对文件的操作都限制在32位以内,由于超过4GB大文件的日益增多,导致了种种稀奇古怪的问题...
导致我做这个程序的起因是,很久以前下了一个Zip包,是一个某动画的1-26话全集,不过有个问题,这个文件超过了4G (5.8G),于是在WinRAR下打开,认为文件大小只有1.8G,导致只能解出前8话... XD
然后我又查找了N多号称支持64位Zip的程序(WinZip9, ZipForge64 ......) 但是没一个程序能够识别...估计目前64位程序还处于"战国"阶段,每家人开发一个自己的64位扩展Zip格式,也就只能解出自己的.... 但是我手头的Zip包里面没有任何特殊的标志可以识别出到底使用什么软件压缩的,只有一个标准的PK签名....
最后一个绝妙的主意出现了 - 把这个大文件分割成几个小块,这样保证WinRAR可以完整地看到整个小节的内容,然后使用修复模式把文件一部分一部分的提取出来...
但是想到了这个主意后我却Prz了....因为居然找不到一个能够支持分割大于4GB的文件的程序....于是这个程序就诞生了... XD
相信在目前情况下使用的机会不多,但是建议大家收集备用,因为一旦有需要用的时候,花上几个小时去找遍Google是比较划不来的... XD (貌似我经常做这样的事)
[Payview=32]
操作说明:
* 左边的为文件源
* 右边的为目标目录
* 中间的小鱼就是复制按钮
* 下面的托杆控制使用的缓存大小,默认16MB内存
-> 拖拉设定缓存大小
-> 在左边的文件框中选定需要复制的文件或者目录(可以Ctrl或者Shift多选) (选定的目录以及子目录下的所有文件都会被复制,包括空目录和0字节文件)
-> 在右面选定目标目录
-> 按下小鱼,自动开始复制,下方显示每一个文件的复制进度。
-> 如果任何时候希望停止操作,再按一下小鱼即可
++ 默认情况下,遇到操作错误(不能读/写文件/文件夹),或者遇到问题(覆盖文件?),程序会弹出提示框询问接下来的操作。
++ 选择"No Prompt",则程序不会弹出提示框,而是自动选择默认操作:
+ 如果不能建立目标目录,则跳过问题目录,继续复制其他文件/目录
+ 如果不能读原文件/写目标文件,则跳过问题文件,继续复制其他文件/目录
+ 如果目标文件已经存在,则跳过重名文件,继续复制其他文件/目录
+ 如果文件复制被打断(错误或者人工取消),则删除没有完成的副本
[URL=upload/KFCFile8272_CacheCopier.rar]最初版本[/URL]
[URL=upload/KFCFile8297_CacheCopier.rar]可调窗口版本+取消确认[/URL]
++++++ 升级版本 ++++++
* 首先修正了缓存写入结束时的同步磁盘操作,以前存在的问题对操作性能有影响。
所以新的版本在
同一个物理硬盘上复制文件时,性能平均比前一个版本提高10%左右。
但是,如果在
不同的物理硬盘上复制文件时,性能有所下降,这是正常现象,因为不同的情况下要使用的不同的模式才能获得最好的效果,请继续往下阅读...
* 原来窗口上不能选择的"Different HDD"现在可选!
使用"Different HDD"模式,顾名思义,要求源文件和目标位置在不同的物理硬盘上。
在这个模式下,指定的缓存将会被程序分成四块,当每一块被填满时,程序将会立刻开始向目标磁盘写数据,同时,读取源文件的过程将不会暂停,因此可以充分利用独立的硬件作并行操作。
在
不同的物理硬盘上复制文件时使用这个选项,将获得比前一个版本高大约一倍的性能!
注意:程序不会对"不同的物理硬盘"这个条件做强行的要求,但是如果是往同一个硬盘上复制文件时选择该模式,那动作就和Windows本身的复制差不多了... -_-
[URL=upload/KFCFile8299_CacheCopier.rar]升级版本[/URL]
++++++ 本日第二次升级! ++++++
这一次增加了几个有用的按钮:
* 返回上层目录 (其实一直可以用快捷键BackSpace的,如果不知道的人就比较麻烦,还是加入好了) * 刷新列表 (及时看到外部的改变) * 删除 (可以直接把文件扔到回收站)
然后应要求增加了磁盘容量显示和文件大小预览:
-- Source部分 -- * 选定一个驱动器,窗口底端就会出现该分区的大小和剩余空间; * 如果选定一个文件,则会出现这个文件的大小;
-- Destination部分 -- * 选定一个目录,这个目录所在的驱动器的大小和剩余空间就会以Hint(提示)的方式显示出来。
[URL=upload/KFCFile8322_CacheCopier.rar]第二次升级版本[/URL]
|
<<<<< 赠品 >>>>>
命令行程序...因为用到的机会少,也就没有做图形界面...XD
操作方法如下,有两种切割方法:
1> FXSplit <输入文件> <输出文件> <开始切割位置> <切割长度>
2> FXSplit <输入文件> <输出文件> <开始切割位置> - <结束切割位置>
(注意 第二种 开始和结束之间有一个减号)
[URL]upload/KFCFile8274_FXSplit.rar[/URL]
比如你有一个 6G 的文件: C:\test.bin
如果你想从第 4.5G 的地方提取出1G的东西,目前的能找到切割软件是基本没有办法的(至少我没有找到过)。
使用赠品,有两种方法:
1. 从第 4.5G 的地方开始,提取出1G: > FxSplit C:\test.bin Z:\test.parts.bin 4831838208 1073741824
解释: 源文件 - C:\test.bin 目标文件 - Z:\test.parts.bin 开始位置 - 4831838208 (4.5G) 截取长度 - 1073741824 (1G)
(注意,强烈推荐将目标文件放在和源文件不在同一个物理硬盘的分区上,原因就不用解释了吧) |
2. 从第 4.5G 的地方开始提取,直到5.5G的地方: > FxSplit C:\test.bin Z:\test.parts.bin 4831838208 - 5905580032
解释: 源文件 - C:\test.bin 目标文件 - Z:\test.parts.bin 开始位置 - 4831838208 (4.5G) 模式标志 - - 结束位置 - 5905580032 (5.5G)
(注意,强烈推荐将目标文件放在和源文件不在同一个物理硬盘的分区上,原因就不用解释了吧) |
[/Payview]