友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!
超脑黑客-第86部分
快捷操作: 按键盘上方向键 ← 或 → 可快速上下翻页 按键盘上的 Enter 键可回到本书目录页 按键盘上方向键 ↑ 可回到本页顶部! 如果本书没有阅读完,想下次继续接着阅读,可使用上方 "收藏到我的浏览器" 功能 和 "加入书签" 功能!
不过,除了这个想法,林鸿倒还想到了另外一个不错的构思。
【HELLC:我也有一个想法,虽然我们很难增加存储空间的大小,但是我们可以从另外一个角度来着手改进,那就是缩小软件和数据的体积。】
【MAX:我知道了!说得没错,我们可以对数据进行压缩,这样可以极大地节省存储空间!】
【雏鹰:没错,这个方法更具有可行性。】
其他几位成员对林鸿的这个想法都表示了赞同,他们都说果然不愧是“HELLC”,想事情果然比他们要更加细致。
在SAM原先的三人组当中,林鸿是最受大家敬服的一位,毕竟正是他亲手破解的计算器,并且开发了性能高效的红外无线传输协议。
第一点是SAM协会成立的根本原因,而第二点则是破解程序能够迅速传播起来,并且和其他社团竞争能够优势领先的重要推动因素。
而在此之前,他们的软件或者数据文件以原始的大小存储在计算器中的,没有经过任何加工,原来多大,存储到计算器中也就多大。
接着,他们开始讨论该如何实现数据的压缩。
由于早期计算机存储空间的不足,计算机中的数据压缩需求从一开始就存在,早在四五十年代,美国著名数学家,信息论的创始人,天才级人物克劳德·香农就发表过这方面的基础性论文,为数据压缩奠定了理论基础。
之前美国各大BBS上比较流行的压缩软件主要是SEA公司开发的ARC,这是一种商业压缩软件,如果使用,必须花钱购买。
后来,有一个叫做菲利普·卡茨的毛头小伙,他也是BBS的狂热爱好者,但是囊中羞涩,他见连压缩个文件都要付费,于是便动手自己开发了一个同类软件,免费开放给大家使用。
菲利普刚开始开发的软件名称叫做“PKARC”,前面两个字母是自己的名和姓缩写,后面的ARC自然是指商业软件ARC,因为当时SEA公司发行的软件里面,还包括一部分C语言的源代码,他根据其中的内容,就编写了一个同类软件,可以完全兼容ARC。
这样一来,大家都立刻成为了PKARC的忠实用户,SEA公司见到这种情况,立刻将菲利普告上了法庭,于是法院判决菲利普禁止继续开发和传播PKARC。
但是这场官司并没有磨灭菲利普的斗志,他同绝大多数黑客们一样,推崇自由和免费,于是在官司结束几周之后,他另外开发了个软件,取名为“PKZIP”。
“ZIP”在英语中有“快速”、“嗖嗖而飞过”的意思,通常形容子弹“ZIP”而过,菲利普取这个名字,意思就是说他要开发的软件,将要比ARC更加快速,功能更加强大。
很显然,他成功了。短短几周之内,他开发出来的PKZIP软件,可以将一个或多个文件压缩到一个后缀为“。ZIP”的文件中,无论从压缩比、压缩速度方面都超过了商业软件ARC。
更重要的是,他这个软件再也没有参考ARC的算法,而是使用了全新的压缩机制,并且他宣布不再兼容ARC格式。
就这样,菲利普将PKZIP作为自由软件免费发布之后,就立刻受到了全美各大BBS的站长们的欢迎,犹如星星之火,以燎原之势迅速在全美各大BBS上蔓延开来。站长们纷纷开始将原来使用的ARC格式压缩文件转换为ZIP格式。
SEA公司很快就因此而彻底从大家的眼前而消逝了,ZIP格式成为了互联网时代压缩软件的标准格式。
SAM协会想要将数据进行压缩,ZIP是最理想的选择,虽然市场上还存在着一些其他的数据格式,例如ARJ、LHA、CAB……等等,但是这些压缩格式要么就是属于专利产品,要进行付费,要么没有公布压缩技术细节,只有ZIP的作者菲利普,在两年前的时候,公布了ZIP压缩的所有技术资料。
所以,SAM协会最终选择ZIP作为自己的压缩格式。
但是还存在一个问题,那就是压缩文件传输到计算器中了,该如何读取里面的数据?
很显然不能使用PKZIP来直接读取,计算器中只有那么点地方,根本无法移植PKZIP,只能另外编写相应的解码程序。
要想编写解码程序,就必须了解ZIP格式使用的压缩算法,即“LZR算法”,这是一种无损数据压缩算法。也就是说原来是怎么样的,压缩并还原之后还得怎么样,一个字节都不能少。
这其中的原理其实很简单,因为计算机中数据都是用二进制表示的,只有“0”和“1”,有时候连续十个数字都可能是“1”,那么则直接可以标记为“这里有10个1”,而不用真的用十个“1”去填充。
通过这样的方式,就可以实现压缩。
当然,说起来简单,但做起来就相当复杂了。
SAM协会成员当中,所有人都没有接触过压缩这一块,大家都必须从头开始学习。
于是,大家开始分工合作,林鸿负责新的破解程序开发,不但要将广告系统集成到里面,还得留出解码程序的位置,等亚瑟和原子将解码程序编写出来之后,再集成进去。另外,根据能者多劳的原则,林鸿还得和火炬、左手一起,着手对计算器进行升级改造。
第一百八十七章 SSAS
这一次SAM七人组会议给SAM协会定下了下一步发展的重要计划,后来大家公认,这一次会议在SAM协会的发展史上具有非常重要的历史意义。
他们分为了软件组和硬件组,分别行动。
可口可乐和苹果公司的LOGO都比较简单,经过图片压缩工具经过处理之后,体积已经非常小,所以倒是不会占据多少存储空间。
但是要想将这些图片信息插入到其中去,却是不能像以前那样直接通过缓存区溢出进行修改了,必须将原始的ROM给DUMP出来,然后再放在“虚拟机”或者说“模拟器”中进行修改。
因为左手就在麻省理工学院,学校的实验室有着各种各样现成的设备,他很快就把TI…82的原版ROM给DUMP出来。但是用来进行模拟计算器的软件却是没有。
没办法,林鸿、左手以及火炬三人便开始着手编写一个这样的计算器模拟器。
模拟器的思想,是用软件去模拟硬件,所有硬件设备的特性都要模拟出来。
也就是说,程序运行在模拟器上,和运行在真实的硬件上基本是没有什么区别的。
说白了,就是在欺骗程序,让它以为自己是运行在真实的硬件上。很多游戏模拟器就是这样的道理,那些游戏本身只能运行在指定的设备,如街机、电视游戏机等设备,但是在计算机中,却可以让这些游戏ROM运行在模拟器中,实现使用计算机也可以玩游戏。
编写模拟器是一个非常富有挑战性的工作,必须具备汇编语言以及硬件基础知识。
这两点对于林鸿、左手以及火炬来说,都不成问题。
所以他们简单地分工了一下,便开始着手开始了模拟器的编写。
好在包括德州仪器公司在内的大部分图形计算器生产厂家使用的CPU都是Zilog的Z80,而这个芯片的应用却非常广泛,针对它的模拟器代码倒是有现成的,有人将其作为开源代码放在了网络上,这样就给他们三人节省了不少时间。
在三人齐心合力之下,三天之内就将一个可以运行TI…82系统的模拟器给编写出来了。
由于时间的关系,很多代码都没有进行整理,这个模拟器暂时只能运行TI…82的系统,以后有时间进行扩展完善之后,其他计算器中的ROM也是可以运行的。
有了模拟器的帮助,林鸿对计算器ROM的破解就更加彻底了。
计算器启动的时候,本身会显示德州仪器的LOGO,林鸿通过工具查看了一下,发现那个存储空间有足够大,足以将可口可乐和苹果公司的LOGO放进去。
原本还想保留德州仪器的LOGO,但是后来马修说那样广告效果可能不好,干脆建议将德州仪器的LOGO给去掉了。
这样一来,破解之后首先显示的会是苹果的LOGO,然后再是可口可乐的LOGO,在显示屏的右下角,会明确标明这是赞助商广告。
升级程序的前边部分工作林鸿很快就做好了,就等亚瑟和原子的解压缩程序出来,将其集成之后,再上传到官方FTP上去就行了。
接下来,林鸿便开始研究如何对计算器的进行升级改造。
首先是存储器,其中主要分为闪存和RAM。
闪存相当于是计算机的硬盘,可以存储数据,而RAM则是内存,对程序运行的运算速度有着很大的关联。
TI…82计算器标准配置为512KB闪存、32KB内存,同时上面运行的系统也只能识别这么大。
不过,现在市面上可以找到的能够与之配套的闪存和内存,分别为2MB和128KB,经过一番测试和改进,林鸿成功地将最新的闪存和内存移植到了自己的计算器上。
现在运行起诸如《俄罗斯方块》或者《超级玛丽奥》这样的程序来,非常流畅,有一种鸟枪换炮的感觉。
另外,他们从市场上找来了一种工业级的红外无线发射器,发射范围可以达到100平方米,并且可以成功与TI…82计算器配套。
一番改进下来,林鸿手中的这个计算器的功能已经相当强大了。
要不是由于计算器本身系统的限制,完全就是一台掌上计算机,并且还带无线传输功能,比市场上的笔记本都还要强大。
硬件组进展非常顺利,但是软件组却遇到了困难。
由于亚瑟和原子两人之前都没有接触过压缩与解压缩方面的知识,而这一块又涉及到了比较复杂的算法问题,他们两个在算法的原理理解和实现上面,都感觉比较吃力。
更关键的是,林鸿之前已经给他们下好了指标,规定了他们这个解码程序的代码不能超过多少行,否则集成到升级程序中就没有意义。
这样一来,几天时间过去,他们才刚刚实现了解压缩程序的PC端代码。体积非常大,超过了林鸿所给出指标的好几倍,经过多次精简之后,还是无法达到要求。
硬件这一块进展顺利,接下来他们开始动手做一个可以连接计算机的无线发射和接收装置,马修在征求了火炬和左手两人的意见之后,就让林鸿转到软件组,帮忙开发解压缩程序,让亚瑟和原子的压力大为减轻。
不知不觉中,林鸿成为了大家心中公认的软硬件高手,在他手中的事情,从来就没有不能完成的。
令亚瑟和原子感到艳羡和震惊的是,林鸿对算法似乎有一种天生的感觉,理解起来完全没有任何阻碍,在进行代码实现的时候,还可以举一反三,对其中的原理信手拈来,将他们之前编写的代码进行了大幅修改,很快,符合要求的解压缩代码便顺理出炉了,林鸿将其与其他代码集成之后,第二个版本的破解程序终于成功出台。
林鸿这一次研究压缩和解压缩算法,收获非常巨大,他之前也没接触过这方面的内容,对其中的原理也只是在心中有个模糊的概念,当他这一次真正深入研究之后,才发现这其中所蕴含的魅力非常巨大。
数据压缩的确是一件非常奇妙的事情,每当他想到,一串任意的数据能够根据一定的规则转换成只有原来五分之一甚至二分之一长度的数据,并且能够按照相应的规则还原到原来的样子,就有种不可思议的感觉。
计算机的本质就非常优美、非常简单,而数据压缩的设计却比其更简单,更优美。
这里所指的简单,并不是指难度方面,而是指在表现方面。
林鸿在研究数据压缩的时候,心中也逐渐形成了一种模糊的概念——事物越简单就越优美。
由于对数据压缩进行了比较系统的学习和研究,林鸿对他的破解程序进行了再一次优化,优化后的程序,大小只有之前的一半左右,可以说已经达到了极致。
当SAM协会其他成员从内部FTP下载到最新的破解程序的时候,简直怀疑自己是否下错了文件。
破解程序虽然已经出来,但是SAM协会并没有立刻将其发布出去,而是再次经过了多次讨论,从功能上进行优化。
因为考虑到赞助商可能会经常变更,于是后来林鸿将广告部分的代码进行了改进,改为了可以使用特殊指令对其进行同步修改,这样,一旦赞助商变更,他们也可以随时将其中的广告给调换和撤销。当然,前提是用户得将自己的计算器和中转服务器进行同步连接。
这样一来,简单的赞助商广告升级成为了一个广告系统,马修将其命名为“SSAS”,意思就是“SAM赞助商广告系统”。
而且,马修还强烈建议在里面加入了一一段统计代码。
这段代码的功能很简单,就是搜集已破解计算器的唯一商品标识码,这个编码是唯一的,每台计算器都不同。一旦用户使用已破解的计算器进行连接,则自动会向中转服务器发送自己的唯一商品标识码,而中转服务器再向总服务器进行连接的时候,就会将搜集到的标志码上传到总服务器中。
通过这个方式,就可以知道到底有多少台计算器下载了破解程序进行破解了。
之所以要进行统计,完全是为了方便马修在向商家游说的时候,有一个比较准确的数字,从而让他们能够重视“SSAS”广告系统。
马修对这个广告系统报以厚望,认为这是对传统赞助广告的一个颠覆,坚信这将会是SAM协会以后重要的输入来源。支持他的理论就在于,全美有多少人购买计算器,就有多少人是这些广告的潜在客户,这可比现在刚刚兴起的互联网广告要靠谱多了。要知道,现在已经有很多人天天在吹嘘互联网广告将会如何如何颠覆传统媒体广告。
SAM的其他成员对此则没什么感觉,他们关心的只是技术,至于商业方面的事情,就让马修操心去吧。
左手和火炬两人对计算器对计算机的红外同步外设的制作进展也非常顺利,很快就做出了原型,然后开始对其进行改进优化,以及对配套软件的编写。
这一次SAM协会的动作非常大,大家都对此充满信心。并且一致决定,要赶在四月一号愚人节到来之前就将所有东西都准备好!
第一百八十八章 千万富翁
周五晚上,林鸿正在自己的房间内和菲丽丝在线上聊天。
他们使用的软件,正是林鸿编写的“CQCQ”,现在的版本已经到了V0。09版,已经初步实现了服务器端和客户端的基本功能。
林鸿将服务器端运行在了SAM协会的官方服务器上,因为那个IP是固定的,登录之后,客户端和服务器直接发送信号,表明自己已经在线。
与此同时,也会像服务器发送咨询命令,向服务器索取目前在线的用户。
原本IRC协议是按照聊天室的原型来设计的,大家必须得进入指定的“频道”才能够向里面发送消息。
可是目前林鸿编写的CQCQ软件,暂时使用的人就只有他和菲丽丝两个,每次登陆软件之后,再去加一个频道显得比较麻烦,他干脆暂时先将这一步给省略了,每次登陆之后,就默认进入了一个公共的频道,可以直接向这个公共的频道里发送消息。
【菲丽丝:红外线协议专利已经成功提交申请了,专利受理通知书也已经下来,在我手里。明天你来纽约一趟吧。】
【STONE:最近事情比较多,明天后天可能都没时间,先放你那吧。】
【菲丽丝:不过你还是要来一趟啊,和AT&T公司的专利谈判已经进行得差不多了,不出意外的话后天就可以签合约了。】
看到这句话,林鸿不由微微一愣。
【STONE:这么快?】
【菲丽丝:不快了,对方已经催了好几次,要不是你一直没有时间,本来早就可以拿到钱了。你怎么不问问,你怎么不问问卖了多少钱?】
【STONE:你办事我放心。既然劳烦你这个商业天才出马了,肯定不会少了。】
【菲丽丝:七百八十万美元!】
林鸿看着这个数字,顿时发起了呆。
【菲丽丝:怎么不说话了?我已经很尽力啦,你不会怪我卖少了吧?】
【STONE:没有,竟然超出原来两百多万,我一时间难以相信而已。现在美元对人民币的汇率是多少?】
【菲丽丝:吓我一跳,还以为你觉得我卖便宜了。目前的汇率是1:5。323,换算成人民币为4151。94万!恭喜你成为中国的千万富翁!】
林鸿看到这个数字身子不由一抖,差点从椅子上摔了下来。
他揉了揉眼睛,确信自己没有看花。
竟然有四千多万!
不会弄错了吧?
【STONE:你确定是5。323?我上次在杂志上看到的是3。7左右啊。】
林鸿一直以为一美元相当于三美元左右的人民币,这是他之前在一本金融杂志上看到的。而来美国之前,他根本没有亲自去银行兑换过外汇,都是他母亲一手帮他准备的。
【菲丽丝:你在开玩笑吗?你看的杂志是两年前的吧,两年前的汇率才是3。765,现在已经是5。323了,并且根据我的判断,人民币还会要持续贬值,我建议你不要进行兑换,继续持有美元,保你的资产增值!】
听菲丽丝这么一说,林鸿这才想起,自己所看的杂志好像还真是以前的,而汇率是会随时变动的。
这么说来,是真的了?
快捷操作: 按键盘上方向键 ← 或 → 可快速上下翻页 按键盘上的 Enter 键可回到本书目录页 按键盘上方向键 ↑ 可回到本页顶部!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!