软件是一个通用的术语,指让计算机去做一些有用事情的指令序列。这里的“软”是相对于硬件的“硬”而言的,因为它是触摸不到的,不能把你的手放上去。而硬件是可以触摸到的,如果你的笔记本电脑落在你的脚上,你会注意到。对于软件则不是这样。我们心里要牢记的是:现代技术体系是不断地使用一些通用的硬件,然后用软件来创建一些特别的行为。
传统观念认为软件更便宜、更灵活,而且相比硬件而言更容易改变,尤其是在设备离开工厂之后。例如,如果应用计算机来控制汽车的动力和刹车,显然像防抱死刹车和电动稳定控制这样的不同功能就是软件的特色了。在最近一个也许是最引人注目的关于汽车软件优缺点的案例中,研究人员于2015年9月发现大众柴油轿车在排放检测中有欺诈行为,他们发现这款轿车在检测时能够相应地调整它们的性能。检测时禁用排放控制除了可以导致更好的性能外,还会产生明显超出比所允许的排放量更高的氮氧化物。正如2015年11月26日《纽约时 》上 道说:“当被检测的时候汽车软件确保汽车能够有最佳的行为,却在其他时候允许汽车超限排放。”
看起来汽车的引擎控制软件能够推算什么时候检测,因为它在特定的时间阶段遵循着特殊的速度和转动装置相关的一个标准的检测协议。大众公司CEO辞职,1100万辆汽车被召回,销售额明显下降,大众品牌的声誉和股票的价格遭受重创。2016年6月,大众公司同意向美国支付150亿罚金,但是这个故事可能还没有结束。大众汽车的所有者不得不给软件升级,有些汽车还需要更换硬件。大众公司可能还必须回购受影响的汽车。现实情况是,大众汽车的许多拥有者很有可能嫌麻烦而不愿意去升级软件,他们宁愿为自己获取更好的性能,而不愿意为所有人去降低污染。这个案例也提醒我们,计算机是所有重要系统的中心,而软件控制着它们。医学影像系统使用计算机来控制信 ,并形成供医生解读的图像,胶片被数字影像而取代。火车、轮船和飞机也同样日益依赖于软件。
一个飞行员朋友告诉过我,几年以前一个计算机软件的升级是如何彻底改变他的飞机自动驾驶行为的。对于像航空交通控制系统、导航辅助系统、电 以及电话 络这样的基础设施也是同样。基于计算机的选举机器也已经有严重的瑕疵。用于武器和后勤的军事系统也完全依赖于计算机,世界的金融系统亦然。“ 络战争”是指攻击这些或其他的计算机系统,已经变成一个流行的词汇。这些是真实的威胁吗?一些似乎就是。例如,2010年的Stuxnet蠕虫袭击了伊朗的浓缩铀离心机,这听起来不像是一个随机的目标。
在最近更多的例子中,人们相信2015年12月发生在乌克兰的大规模断电就是俄罗斯的恶意软件所导致的,尽管俄罗斯政府否认涉及此事。如果我们的软件不可靠或者不健壮,那么它就会导致我们处于麻烦之中。潜在的真正麻烦随着我们依赖性的增强会变得更糟糕。正如我们所知,写一个完全可靠的软件是非常困难的。任何差错,或者逻辑或实现上的疏忽,都有可能导致软件行为的不正确。即使在常规使用中不会发生,它亦可能为某些攻击者留下后门。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!