资源介绍
--------------------------------------------------------------------------------------
最新更新情况:
0.260 新内核的正式版,也是UDA的第三个正式版.对新内核进行了极大的优化,使压缩率/时间比
比上一个正式版有了质的飞跃,默认压缩模式0的压缩率已经完全战胜UHARC,速度比原来
的模式3仅慢了不到10%.并大大减轻高模式的内存占用过多耗时过多的问题.
比较上一版本(0.250),速度有了10%的提升,程序又减少了1KB!压缩率变化轻微.
[此版本的压缩包与以前任何版本都不兼容]
0.250 在上一版本的基础上更新了内核,重新设置并精简了压缩模式,使得速度和内存占用比
以前的各个模式都有了很大的改善,此版本的默认模式0的压缩率和压缩时间相当于上
一版本的模式3和4之间,但内存占用与上一版本模式3相当,以解决以前版本资源占用过
多的问题.[此版本的压缩包与以前任何版本都不兼容]
0.242 此版本彻底解决了所有的命令行(包括自解压)长文件/目录名问题,包括汉字和空格的
支持,其中含空格时需要用双引号把整个文件名括起来.
[0.24x版的压缩包(包括自解压)之间相互兼容.但与以前版本均不兼容.]
0.241 此版本在0.240的基础上修正了命令中不能含有汉字的bug.加入了不存在解压路径时显
示错误信息.readme.txt中增添一些遗漏的说明.
0.240 UDA的第二个正式版,比上一个正式版(0.230)有以下提高:(1)在功能不减并加入解压时
可自定解压缩路径和使用示例的前提下,把自身体积减小到16K!(2)大力度优化了内核,
速度比0.230版提高了10%左右.(3)改善了内存的分配,节约内存占用5%-15%.(4)增强了
异常错误处理以及改善很多细节设定.(5)经过了大量测试,保证了压缩/解压的稳定性.
0.231 加入了解压时自定解压缩文件的路径.出现错误时立即停止程序而不继续压缩/解压.
优化内核程序使压缩/解压速度提高了4%.增加了使用示例.修正了几个不重要的小bug.
0.230l 由0.230完整版修改而成.
0.230 UDA的第一个非测试版.改善了界面,加入了制作自解压的功能.
(取消简化版开发,压缩文件扩展名仍然使用uda.)
--------------------------------------------------------------------------------------
名称:UDA高压缩率文件压缩器
版本:0.260 Final
类型:免费软件(free software)
日期:2004.4.2
大小:15KB
要求:内存最低32M,建议64M以上,推荐256M以上
CPU最低486DX,建议PentiumII以上,推荐1G以上
平台:Windows95OSR2/98/ME/2000/XP,推荐Windows2000/XP
(命令行窗口,但不支持纯DOS)
作者:Dwing
联系:dwing@163.com
主页:http://dwing.51.net
http://dwing.go.nease.net(镜象站)
--------------------------------------------------------------------------------------
特性:1.极高的无损压缩率,但比其他常用工具较慢.
2.软件极小,只有15K.
3.支持长文件名.
4.支持通配符.
5.支持固实压缩技术.
6.支持制作自解压功能,并能在两种格式之间相互转换.
--------------------------------------------------------------------------------------
描述:本压缩工具不像其他的压缩工具使用常见的zip,rar等格式,而是使用专用的UDA格式.
最大的特点是使用了以最新的ContextModelMixing为基础的算术编码压缩技术和固实
压缩技术,因此压缩率极高,几乎可以排到世界第一位,尤其是多文件压缩!唯一的缺点
是压缩速度比其他格式较慢.后面给出各个常用的压缩工具压缩单文件和多文件的结果.
--------------------------------------------------------------------------------------
说明:1.程序文件名为uda.exe,压缩包默认扩展名为UDA.
2.建议使用各个版本压缩时都尽量制作自解压的压缩包(此版本自解压包比普通压缩包多15K).
3.由于用本压缩工具压缩的压缩包数据非常紧密,所以不支持压缩包内文件的增添,删除,
修改文件等功能,只有解压缩并整理后再重新压缩.
4.当给出解压目录时,此目录必须已经存在,否则将显示错误.
5.用"l"命令列出压缩包内文件列表时左边显示的十六进制数据是时间戳,以供解压时还原.
(Windows9x环境下解压含目录的压缩包时可能不会还原目录的时间)
6.当压缩或解压显示以下错误时,只有三个按键可选择:Y--是,N--否,Q--放弃退出.
(有时不能选择"否"(N);一般需要一定的处理才能选"是"(Y),如增加磁盘剩余空间)
"Error Open: Retry?[Y/Q]"---压缩时无法打开待压缩的文件,确认是否重试
"Error Read: Retry?[Y/Q]"---压缩时无法读取待压缩的文件,确认是否重试
"Err:Retry?"---解压时无法建立压缩包中的文件或目录,确认是否重试
"Overwrite?"---解压时出现了同名文件,确认是否覆盖
"ErW:Retry?"---解压时无法写入解压缩的文件,确认是否重试
以上错误的原因可能为以下几个情况:
(1)剩余空间不足(2)有同名目录或文件(3)磁盘写保护(4)向光盘写数据
(5)欲覆盖的文件是只读属性(6)磁盘损坏无法读取或写入数据
其他严重的错误会直接退出,而且提示比较详细,不再赘述.
7.压缩模式与内存具体需求关系见下表(非常重要!必读!):
--------------------------------------------------------------------------------------
模式(默认:3): 0 1 2 3 (PS:压缩和解压的时间和内存需求相同,内存不足会导致所)
最小内存需求: 32M 64M 128M 256M ( 用时间因使用虚拟内存而急剧增加,使用时一定注意!!)
注:以上是在前台运行的最小内存需求,有其他大程序运行时还需要更多内存.所以压缩或解压时尽量
不要运行其他程序特别是大程序,否则应选择内存要求较低的模式.
--------------------------------------------------------------------------------------
用法(与RAR命令行版类似,自解压压缩包也可以进行同样的操作):
(1)使用方法为:uda 命令 选项(可选) 压缩包文件名 待压缩的文件名/解压缩目录名(可选)
(2)命令:a表示压缩,x表示解压,l表示列出压缩包中文件,c表示转换压缩包格式):
(3)选项:-n(n是一个数字)表示选择压缩模式,-r表示压缩文件包含子目录中的匹配文件,
-s表示制作自解压压缩包
注:在命令行中输入的文件名含有空格时需要把文件名用双引号括起来,如uda a "x y z1" *.*
--------------------------------------------------------------------------------------
示例:
(1)把文件abc.txt压缩成backup.uda(".uda"可省略输入): uda a backup.uda abc.txt
(2)把c:\win目录中的文件及目录最快速压缩成winbak.uda: uda a -0 -r winbak c:\win\*.*
(3)把当前目录中所有*.c文件压缩成自解压文件cbak.exe: uda a -s cbak *.c
(4)把已压缩的文件my program.uda解压缩: uda x "my program.uda"
(5)把已压缩的文件myfiles.uda解压缩到c:\windows中: uda x myfiles c:\windows
(6)列出已压缩的文件my backup.uda中包含的文件: uda l "my backup"
(7)把已压缩的文件mybak.uda转化成自解压文件mybak.exe: uda c mybak.uda mybak.exe
(8)把自解压文件mybak.exe还原成压缩文件mybak.uda: uda c mybak.exe mybak.uda
(9)把自解压文件mybak.exe解压到当前目录中: mybak
(10)把自解压文件mybak.exe解压到d:\my中(已存在此目录):mybak x mybak.exe d:\my
(11)列出自解压文件mybak.exe中文件: mybak l mybak.exe
--------------------------------------------------------------------------------------
PS:由于软件算法复杂,制作时间紧张.如果发现BUG、问题、新的测试结果、更强悍的压缩工具
以及建议,欢迎给我发邮件(dwing@163.com,由于最近的垃圾邮件过多,所以邮件主题请尽量
用汉字,并尽量不用附件)或在我的网站上留言!
另外可直接访问http://dwing.go.nease.net/download/查看和下载网站资源.
--------------------------------------------------------------------------------------
以前更新历史(目前不再支持这些版本):
0.10 第一个版本(只有压缩和解压一个文件的功能).
0.11 加入时间累积功能,设置文件缓冲,使压缩和解压速度提高5%.
0.12 修正一些BUG(WIN9x运行不正常,包含路径的压缩文件名等BUG),并精简了源程序.
0.20 增加多文件固实压缩成一个压缩文件的功能,支持通配符,增加列出文件功能以及8种
压缩方案,能以百分比显示压缩进度,文件时间和属性的还原仍有bug(不影响主要功能).
0.21 采用了更新的内核,大多数情况会使0-3模式时间更少(-20%),压缩率更高,
4-6模式时间较长20%,压缩率更高,需内存多20%.另外修正非默认模式的文件列表错误.
0.211 修正了文件属性和时间的还原及目录属性的还原,目录时间的还原还没有解决.
0.212 加入了一些细节问题,如文件数,压缩率,压缩速度,文件列表的现实方式等.
0.213 修正了目录时间的还原.使默认扩展名为uda.
0.214 修正了一些小bug.
0.215 解压时加入已存在文件的选项.
0.220 重新整理了外壳程序,并暂时停止开发,转向简化版的开发.
0.220l 0.220版的简化版,只支持0-3模式,并除去exe模型,与以前版本不兼容,默认扩展名为udz.
0.220lx 0.220l版的专用解压工具.
--------------------------------------------------------------------------------------
常见问题解答:
1.问:使用UDA的哪个模式来压缩最好?
答:此版本UDA一共有4个压缩模式,编号为0-3,数字越大,压缩率越高,速度越慢.建议使用默认
的模式0,它的压缩率比UHARC的最高压缩率还高(速度约是UHARC的1/3~1/4).压缩时以内存
大小决定,千万不要在内存不足的情况下使用较高的模式压缩或解压,否则会出现内存不足
的错误或者速度会大大降低以至无法忍受.
2.问:用UDA压缩或解压时为什么很慢?
答:UDA使用的压缩技术比较复杂,为增大压缩率而需要很多的运算,我已经为此尽可能地优化
源程序.实际上,内存读写速度的提高要比CPU提速还有用,所以较大的Cache对压缩/解压的
速度提高很有利.据我测试,AthlonXP 1700+的压缩/解压速度比Pentium4 1.7G快不少.UDA
的浮点运算比例仅占约0.1%,所以浮点运算能力对UDA无影响.另外,解压的速度比压缩只快
了不到10%,内存需求相同,压缩时要考虑解压时的内存是否充足.
3.问:UDA有那些局限性?
答:UDA最多可以一次压缩所有文件的信息(包括相对目录名,文件名,大小,时间,属性)总和为
1MB的文件量(约几万个文件),因此不要一次压缩太多文件,遇到这种情况可以分成几部分
各个压缩.解压时文件和目录的属性和时间都会被还原(Windows9x可能不能还原目录时间).
4.问:UDA能否使用窗口界面?
答:由于UDA的压缩解压速度原因,使得它现在不可能在实际应用中常被使用.所以可以说它目前
只是实验性质的工具.现在的开发重点不是界面,而是它的压缩内核,况且被人称作压缩率之
王的UHARC现在仍然使用命令行模式.未来CPU和内存有了较大发展后,UDA才有可能象今天
WINRAR一样实用,那时我会对它的界面进行重点开发.
5.问:为什么文件可以被压缩?
答:文件一般是有很多冗余数据的,即使不能很容易察觉.有的文件冗余数据多(如BMP图象),有的
文件很少(如JPG图象,压缩电影等),所以不同种类的文件压缩率是有很大不同的.不能说一个
压缩软件能把一个10M的文件压缩成1M就说这个压缩软件压缩率高.只能用各种不同的压缩工
具压缩同样的文件并对比才能说明压缩率高还是低.一般来说,象JPG,压缩电影(RM,AVI等格
式)这些已经经过高度有损压缩的文件再进行压缩已经没什么意义了(压缩率极低),所以用一
些压缩率较高的文件(如BMP,TXT,DOC等大多数格式文件)测试比较有意义.
6.问:目前各压缩软件的压缩性能如何?
答:每种压缩软件都使用至少1种压缩格式,有的压缩软件有自主的格式,如WINRAR,WINZIP,WINACE
等等(格式各为RAR,ZIP,ACE).而有的压缩软件只提供一些常见格式的压缩/解压缩.因为WINRAR
压缩的ZIP格式文件和WINZIP压缩的ZIP格式文件相同,所以压缩性能(压缩率与压缩时间)的比较
只能以各种格式来比较,而不是压缩软件的比较.
下面简单谈谈各种压缩格式的比较:
ZIP:从DOS时代到现在一直保持兼容路线,所以压缩率很低,速度极快.
ARJ,LZH等:也是DOS时代的格式,与ZIP压缩率相当,又由于使用不如ZIP广泛,现在已淘汰.
RAR:DOS时代就有RAR压缩工具了,而且压缩率比DOS时代的ZIP等格式高,并且支持固实压缩技术,
到WIN9X时代WINRAR(2.9以上版本)有了新的算法,使用较多的内存来压缩,因此ZIP格式与新的
RAR格式的差距有加大了很多.
ACE,CAB,JAR,PAR,IMP,ARJ32等:WIN9X时代的一些压缩格式,同RAR类似使用了大量内存和固实压缩,
压缩率与新RAR略低或相同,但速度没有能和WINRAR相比的.
7ZIP,UHARC:WIN9X时代的少数几个有实力的压缩格式,压缩率均比WINRAR高,其中7ZIP速度比WINRAR
慢一半,但要高压缩率时内存要求很高,UHARC内存要求低,但速度比7ZIP慢很多,综合压缩比
UHARC比7ZIP高一点.
以上都是实用的压缩格式.近两年出现了新的算法(现在仍在实验当中,包括UDA),使得压缩率又有了
很大提高,如SLIM,DURILCA,WINRK等,但大多需要极大的内存,而且速度极慢,不适合实际应用,几年后
较优秀的算法也许会出现在实际应用当中.
以上的说法比较客观,如果有任何意见可以与我交流.
--------------------------------------------------------------------------------------