丰田软件加速门的一些细节令人发指
http://m.newsmth.net/article/AutoWorld/1937029312?au=tsa300丰田用的是 Denso 开发的 ECU , 其实时操作系统共有 24 个进程,其中3个与时序相关,其余的受 OS 控制,目前发现 OS 代码和 user space 代码都有大批bug , 这24个进程中有一个是 TASK X , 这个段代码崩溃后,节气门就会锁死在当前状态,如果是大油门状态下锁死,车子就会自主加速前进,丰田对 TASK X 的保护模式需要驾驶者松开刹车踏板至少 0.208 秒后才生效尝试重置修正,在车突然自主加速的情况下,松开刹车踏板这个要求相当不靠谱
ECU 代码质量低下,编程风格极其业余,大量使用全局变量,存在多处 buffer overflow , race condition , nested schedule , invalide pointer 等低级错误,而且保护措施不完善。2002 年后,丰田本应采用业界规范以另一套硬件对关键机构进行保护,但丰田坚持使用单一硬件从软件方面进行保护,在软件缺陷发作的情况下无法起到应有的保护作用
证人还指出丰田 ECU 代码质量太差,相关代码有 1.1万个全局变量,导致极高的代码耦合性,难以除错和维护,还举例有一个进程存在 150 多个条件判断嵌套代码块,像意大利面条一样复杂,而且丰田没有对应的测试用例集合,导致完全无法针对它进行 unit test , 这种情况下侦错和除错会引入一系列新 bug , 所以改进也无从下手
在法庭质证结束后,丰田立刻进入赔偿和解环节,不给陪审团裁决惩罚性赔偿的机会。
这种只依靠软件的车子,不仅仅是丰田,其他厂商也是问题一堆,没暴露出来罢了。记得以前论坛上就有人说过,参与开发奥迪最新车型的人决不买奥迪,开发太仓促,软件问题一大堆。
作为消费者,在汽车这个问题上保护自己的方法就是买手动版的车,出了问题起码可以把动力断开,不至于束手无策。 有人见过5000多行名字叫global.cpp的代码么? 呵呵 Truecar 发表于 2013-10-28 10:20
这种只依靠软件的车子,不仅仅是丰田,其他厂商也是问题一堆,没暴露出来罢了。记得以前论坛上就有人说过, ...
我见过bmw的代码,才没有这些搞笑问题呢 本帖最后由 Truecar 于 2013-10-28 11:37 编辑
moudy 发表于 2013-10-28 11:27
我见过bmw的代码,才没有这些搞笑问题呢
几种可能:
1. bmw有神相助,丰田光变量就上万才凑合的,bmw万行以内代码就搞定,而且简单得能让你看懂。
2. 你是bmw里面的大拿,能看到bmw全部代码的是什么人?软件开发部门的总头了吧。
3. 你不是bmw大拿,看到几行代码一不知道是不是bmw的,就当bmw了。而且看到了也看不出个所以然来。
4. 你吹吹牛,根本没看到过。
像意大利面条一样复杂
pasta有嘛复杂的,有http://upload.wikimedia.org/wikipedia/commons/thumb/4/41/Bi%C3%A1ng.svg/50px-Bi%C3%A1ng.svg.pnghttp://upload.wikimedia.org/wikipedia/commons/thumb/4/41/Bi%C3%A1ng.svg/50px-Bi%C3%A1ng.svg.png面复杂不? 陶瓷虾 发表于 2013-10-28 10:39
pasta有嘛复杂的,有面复杂不?
顶biangbiang面,据说是笔画最多的汉字,一个字得写个2,3分钟的{:5_332:} 老湿不给力 发表于 2013-10-28 10:43
顶biangbiang面,据说是笔画最多的汉字,一个字得写个2,3分钟的
学法语的时候给法语老师看这个字,当场hold不住了,她决心挑战一下,扔我旁边做练习。一个biang字写了半个钟头 面条,面条....
我中午准备干吃方便面!哈! 砖头哥 发表于 2013-10-28 10:50
面条,面条....
我中午准备干吃方便面!哈!
小心吃成小浣熊{:5_319:}