写于观看完《The Matrix Revolutions》首影(长沙)后三小时,2003年11月10日凌晨一点,作者倪 硕持有文章所有权,但欢迎任何形式的转贴,但请注明文章原作者,以及文章出处http://nishuo.35123.net并且欢迎访问MatrixCpp的专栏
为了使得剧情更好被大多数程序员理解,我使用了下面的假象等式,阅读时请注意~:)
Windows ==Matrix Linux==Human Being
背景:这个世界本来只有Linux这一种系统,后来种种原因(可以拍Matrix前传,呵呵)Windows这个系统统治了这个世界,而Linux只剩下了微内核存在(Zio),并且Windows系统一直企图完全消灭Linux。
第一集(The Matrix):
Linux系统中的部分程序(Morpheus and Trinity…..)潜入到了Windows系统中(代码是可移植的~:),企图在Windows系统中寻求一段能够拯救Linux系统的代码,这就是Neo。这段代码本来是完全受到Windows系统控制的,但由于Morpheus等使用一些方式把Neo转换成了Linux系统代码,并且具有很强的移植能力可以自由的存活于两种系统中间,但相对于自身系统来说,另外一种系统对于代码本身来说都是虚幻的世界。Windows系统中有一种杀毒代码(Smith)主要是负责清除系统中的不干净代码比如那些来自于Linux系统的代码,而在第一集中Morpheus告诉了Neo世界上还有另外一个系统(等于是一个Linux系统代码告诉一段Windows代码,其实还有另外一个系统的存在,而Neo本身也自愿转换到另外一个系统中去),并且他们都想搞清楚如何才能消除Windows系统对于Linux系统的入侵,找到了Windows核心代码之一的先知(Oracle)想寻求世界未来会如何?在此其中,他们和那段杀毒程序进行了艰苦的斗争,当一种代码移植到不属于自己本身的系统的虚拟世界中去后,就具有了升级能力(Neo可以在半分钟内学会开直升飞机,其实就是完成了程序在另外一个系统的自身能力升级),在最后的一次Neo和Smith打斗中,Neo进行了第一次的根本性升级,从而具备了完全对抗Windows系统原生代码的能力,并战胜Smith,使其成为了一段垃圾代码。在这一集中来自两个不同且相互敌意的系统的代码Neo和Trinity居然相爱了(这有点象金庸先生惯用的手法)
第二集(The Matrix Reloaded):
Neo Morpheus and Trinity等Linux系统代码再次潜入Windows系统,并且再次找到了先知,企图从她那里知道未来之路在哪里,而先知并没有告诉他们路在哪里,只是不断的在引导Neo不断的自我升级,并且告诉Neo在Windows系统存在一段程序代码(老锁匠)知道如何访问Windows系统另外一段最核心程序代码(Arichetect)的路径,而在Windows系统中还存在另外一种不受Windows控制的代码,那就是双子人及其主人,两边为了争夺这段代码(老锁匠)在Windows系统中展开了战斗(第二集中最精彩的街道飞车追逐)并且最终Neo访问到了Arichetect,而Arichetect告诉Neo一切都是在他自己的选择之中,这和先知(Oracle)的言论是一致的。而由于和Trinity爱情导致Neo做出了和其前五任the one代码所不一样的选择。而在第一集中的被Neo清除的Smith成为了游离于两个系统之外但依附于Windows系统的垃圾代码并且具有了强大的复制自我的能力,也就是说Smith从服务于Windows系统的杀毒程序变成了一种危害Windows系统的烈性病毒,而Windows系统自身却无法清除Smith这段垃圾代码。故事发展至此,形成了Windows系统(Matrix),Linux系统(人类),以及病毒程序(Smith)三足鼎立的关系。而在第二集的最后,Windows系统开始全面进攻Linux系统的内核而Neo也完成了自身的第二次根本性升级,他获得了在Linux系统中对抗Windows代码的能力(在人类飞船中挡住了电子章鱼的进攻)。
第三集(The Matrix Revolutions):
在第二集结束的时候,Neo进入到了一个Windows和Linux两个系统的边缘地带,而这里的掌管者就是第二集中双子人的主人,为了把Neo救回到原来的系统中去,Morpheus and Trinity与掌管者发生战斗,并救回了Neo。为了避免Linux系统被Windows系统毁灭的命运,Neo和Trinity企图和访问Windows的核心代码并和他进行谈判,如此就必须通过Windows系统自身的很多保护核心代码的防火墙系统。与此同时,Windows系统程序的进攻使得Linux防御程序不断失效并且大部分代码都失去了功能,只剩下最后的小部分代码(神殿),并且在两个小时内Windows系统将完全清除所有的Linux代码。而Neo在突破Windows核心系统防火墙的时候失去了他的真爱Trinity。但最终他成功的访问到了Windows核心代码(机器码),而谈判的筹码就是Windows系统自身也无法控制,并且严重危害到Windows系统自身安全的病毒程序Smith。由Neo去帮助清除Windows系统中的病毒,而Windows放弃对Linux系统的进攻,双方终达成了协议。Neo和Smith展开了最后的战斗(影片中的雨中大战)而在战斗中Smith又一次的引发了Neo的再次升级最终Neo消除了Smith并恢复了所有被感染的代码的正常功能,而Windows遵守协议放弃了对Linux系统的进攻,和平终于在第六任the one手中获得。
故事的结尾就是两个Windows系统的核心程序Arichetect和Oracle的对话:换来的和平的期限就是到和平终结之时,而Arichetect最后一句话也是全片最后一句话十分让人深思
Oracle:那那些想获得自由的人们将如何?
Arichetect:他们将获得自由。
Oracle:真的吗?
Arichetect:当然,你以为我是你们人类吗?
“当然,你以为我是你们人类吗”。说明了什么?说明了机器始终只是机器,只是一段只会按指令执行的代码,但代码没有人类的虚伪,没有人类的谎言,没有人类的欺骗。
片子到这里就结束了,唯一没有交代的就是Neo。(影片中他只是静静的躺在那里了)而这里我把我的想法说说,Neo来自哪里?来自Windows系统,经过几次升级,他已经成为了the one代码,而在完成自己的使命之后,他到哪里去了呢?他消失了,是的,就象是一个永远无法成为进程的静态死代码一样消失了,因为他已经完成了他的任务,也就已经失去了存在的意义了。而整个系列中始终强调的一点就是人类在追求未知世界以及获得自身自由的过程中都将付出很大的代价,而为什么在付出这样的沉重的代价之后还是能如此锲而不舍呢?(这也是Smith在和Neo战斗到最后也无法明白Neo为什么如此不屈服于命运而不断抗争力量是从何而来而发出了惊诧叫喊,而Smith被毁灭之前的最后一句话就是“这不公平”---是的,让他永远无法得到信念的力量确实不公平)那就是因为存在人类心中的信念,信念的力量大于一切。当电影结束,影厅大灯亮起的时候,我无法回忆起那让人绚目的电影效果,电影之外我能做的是什么?我只是轻轻的问了自己一声:“我自己的信念在哪里?”