第一百八十五章 中转服务器、压缩(2 / 2)
雏鹰:没错,这个方法更具有可行性。
其他几位成员对林鸿的这个想法都表示了赞同,他们都说果然不愧是“hellc”,想事情果然比他们要更加细致。
在sam原先的三人组当中,林鸿是最受大家敬服的一位,毕竟正是他亲手破解的计算器,并且开发了性能高效的红外无线传输协议。
第一点是sam协会成立的根本原因,而第二点则是破解程序能够迅速传播起来,并且和其他社团竞争能够优势领先的重要推动因素。
而在此之前,他们的软件或者数据文件以原始的大小存储在计算器中的,没有经过任何加工,原来多大,存储到计算器中也就多大。
接着,他们开始讨论该如何实现数据的压缩。
由于早期计算机存储空间的不足,计算机中的数据压缩需求从一开始就存在,早在四五十年代,美国著名数学家,信息论的创始人,天才级人物克劳德*香农就发表过这方面的基础性论文,为数据压缩奠定了理论基础。
之前美国各bs上比较流行的压缩软件主要是sea公司开发的arc,这是一种商业压缩软件,如果使用,必须花钱购买。
后来,有一个叫做菲利普*卡茨的毛头小伙,他也是bbs的狂热爱好者,但是囊中羞涩,他见连压缩个文件都要付费,于是便动手自己开发了一个同类软件,免费开放给大家使用。
菲利普刚开始开发的软件名称叫做“pkarc”,前面两个字母是自己的名和姓缩写,后面的arc自然是指商业软件arc,因为当时sea公司发行的软件里面,还包括一部分c语言的源代码,他根据其中的内容,就编写了一个同类软件,可以完全兼容arc。
这样一来,大家都立刻成为了pkarc的忠实用户,sea公司见到这种情况,立刻将菲利普告上了法庭,于是法院判决菲利普禁止继续开发和传播pkarc。
但是这场官司并没有磨灭菲利普的斗志,他同绝大多数黑客们一样,推崇自由和免费,于是在官司结束几周之后,他另外开发了个软件,取名为“pkzip”。
“zip”在英语中有“快速”、“嗖嗖而飞过”的意思,通常形容子弹“zip”而过,菲利普取这个名字,意思就是说他要开发的软件,将要比arc更加快速,功能更加强大。
很显然,他成功了。短短几周之内,他开发出来的pkzip软件,可以将一个或多个文件压缩到一个后缀为“.zip”的文件中,无论从压缩比、压缩速度方面都超过了商业软件arc。
更重要的是,他这个软件再也没有参考arc的算法,而是使用了全新的压缩机制,并且他宣布不再兼容arc格式。
就这样,菲利普将pkzip作为自由软件免费发布之后,就立刻受到了全美各bs的站长们的欢迎,犹如星星之火,以燎原之势迅速在全美各bs上蔓延开来。站长们纷纷开始将原来使用的arc格式压缩文件转换为zip格式。
sea公司很快就因此而彻底从大家的眼前而消逝了,zip格式成为了互联网时代压缩软件的标准格式。
sam协会想要将数据进行压缩,zip是最理想的选择,虽然市场上还存在着一些其他的数据格式,例如arj、lha、cab……等等,但是这些压缩格式要么就是属于专利产品,要进行付费,要么没有公布压缩技术细节,只有zip的作者菲利普,在两年前的时候,公布了zip压缩的所有技术资料。
所以,sam协会最终选择zip作为自己的压缩格式。
但是还存在一个问题,那就是压缩文件传输到计算器中了,该如何读取里面的数据?
很显然不能使用pkzip来直接读取,计算器中只有那么点地方,根本无法移植pkzip,只能另外编写相应的解码程序。
要想编写解码程序,就必须了解zip格式使用的压缩算法,即”lzr算法”,这是一种无损数据压缩算法。也就是说原来是怎么样的,压缩并还原之后还得怎么样,一个字节都不能少。
这其中的原理其实很简单,因为计算机中数据都是用二进制表示的,只有“0”和“1”,有时候连续十个数字都可能是“1”,那么则直接可以标记为“这里有10个1”,而不用真的用十个“1”去填充。
通过这样的方式,就可以实现压缩。
当然,说起来简单,但做起来就相当复杂了。
sam协会成员当中,所有人都没有接触过压缩这一块,大家都必须从头开始学习。
于是,大家开始分工合作,林鸿负责新的破解程序开发,不但要将广告系统集成到里面,还得留出解码程序的位置,等亚瑟和原子将解码程序编写出来之后,再集成进去。另外,根据能者多劳的原则,林鸿还得和火炬、左手一起,着手对计算器进行升级改造。
……