浩瀚的宇宙对于人类来说充满了神秘感,这激发了人类探索宇宙的热情。而人类在探索宇宙的过程中,有一个机构发挥了重要的作用,这个机构就是美国国家航空航天局,简称NASA。
NASA自1958年成立以来,就一直致力于太空探索、寻找地外生命和航天技术的研发等一系列与外太空有关的科研工作。著名的阿波罗登月计划就是由NASA一手策划并实施的,当然还有天空实验室,以及之后的航天飞机。
不可否认,在探索外太空领域,NASA确实走在了最前沿,它在人类迈向太空的长途跋涉中取得了很多傲人的成绩。这其中也包括,为了探索太空而研发的各种软件和工具,其应用领域涵盖了整个航天器的研发和应用过程。
说到这,可能有人就会有一个疑问,咱们日常使用应用系统常常会遇到故障或者宕机的时候,那么NASA在每次执行太空任务的时候会不会也遇到这种情况呢?如果真的会出现类似的情况,NASA又是如何应对的呢?
众所周知,任何探索太空的任务都是离不开先进的软件应用,而NASA在这方面绝对是先驱者,时下流行的“软件工程”最早就是出自于NASA。由此可见,软件的应用在探索太空的过程中是多么重要了。
大家可以试想一下,当一个宇宙飞船遨游于无边无际的太空时,一旦系统崩溃或者宕机了,那该是多么让人绝望啊。就算是运行上稍稍慢了半拍,也很可能让飞船与目的地失之交臂。这可绝不是像在陆地上,做个修复或者重启下计算机就能搞定的事情。
更何况,飞船遨游于太空之中的时候,除了这些突发事件之外,还会受到宇宙射线等环境因素的影响和必要的磨损。
所以,应对系统故障和各种可预知和不可预知的各种可能性,对于探索太空这件事自然就成了成败的关键因素之一。
比如,在阿波罗计划中,NASA启动了一个软件恢复计划,也就是说当软件出现故障时会自动启动恢复程序,这样能保证太空探索任务不至于在软件故障时不得不中途放弃。
再比如,NASA在2003年发射的“机遇号”火星车,本来计划是让其在火星上运行90天的,结果这台火星车在火星上一直工作到了2018年。
而“机遇号”之所以能够超长服役,并不是因为它一直运行良好,而是NASA为设计了可修复的软件,并在期间通过数据采集的移动数据重写了代码,使得其能够克服一个因电缆短路造成的故障。
又比如,同样是放置于火星的“好奇号”(2011年发射成功)也同样是因为为其设计了强大的修复系统,在其主计算机出现故障的时候实现了恢复,使得其计划本来服役687天变成了到现在还能正常工作。
类似的情况还有很多很多,正是由于有了运用软件检测故障并即是修复的设计,使得很多太空探索任务得以实现,并换回了很多珍贵的宇宙熟悉和照片。
由此可见,没有完美的设计,只有完美的备份。当一个系统遇到故障的时候,系统可以进行有效识别,并立即启动另一系统来维持其正常运行的设计,才是完美的。
这就好比人类养育子女,披荆斩棘、呵护备至并不能让子女真正成才,而是以授人以渔的心态教会孩子生存的能力,才是成功的教育。
人生也是如此,没有完美的人生,也许只有通过不断修补漏洞而不断升级的完美人生吧。