扫码关注公众号:芋道源码

发送: 百事可乐
获取永久解锁本站全部文章的链接

《Dubbo 实现原理与源码解析 —— 精品合集》 《Netty 实现原理与源码解析 —— 精品合集》
《Spring 实现原理与源码解析 —— 精品合集》 《MyBatis 实现原理与源码解析 —— 精品合集》
《Spring MVC 实现原理与源码解析 —— 精品合集》 《数据库实体设计合集》
《Spring Boot 实现原理与源码解析 —— 精品合集》 《Java 面试题 + Java 学习指南》

摘要: 原创出处 CU技术社区 「CU技术社区」欢迎转载,保留摘要,谢谢!


🙂🙂🙂关注微信公众号:【芋道源码】有福利:

  1. RocketMQ / MyCAT / Sharding-JDBC 所有源码分析文章列表
  2. RocketMQ / MyCAT / Sharding-JDBC 中文注释源码 GitHub 地址
  3. 您对于源码的疑问每条留言将得到认真回复。甚至不知道如何读源码也可以请教噢
  4. 新的源码解析文章实时收到通知。每周更新一篇左右
  5. 认真的源码交流微信群。

img

前一段时间,波音737MAX空难失事事件牵动人心,让人对航空出行又平添了一份不信任,根据最新消息显示,美国联邦航空局对737 MAX机型的大量评估授权给波音公司自身进行,安全评估存在严重缺陷。也传出了波音737 MAX客机的培训都是通过平板电脑软件进行这样让人毛骨悚然的内幕。

最终的结果出来之前我们很好奇,也恰巧在V2EX 看到了有人发问:飞机上用的是什么操作系统?

根据 V友转自百度知道的答案:

航空软件并不神秘,从计算机架构上来说,同普通的计算机系统并无太大区别,都是由处理器,总线,I/O设备,存储设备,网络设备,通讯设备,操作系统和应用软件所构成的。仅仅是为了满足很高指标的可靠性,健壮性和实时性,而采用了另一套东西而已。

1、波音-787,AH-64用的操作系统是VxWorks

img图Via:http://www.windriver.com/products/vxworks/

这是VxWorks的官方网站

2、B-2, F-16, F-22, F-35, 空客-380 使用的操作系统是Integrity-178B

img

图Via:https://www.ghs.com/products/safety_critical/integrity-do-178b.html

这是Integrity-178B的官方网站

类似波音-787,空客-380,空客-350内部设备之间是使用以太网的一种变体来互联的,叫AFDX,在应用软件这一层,同普通的以太网程序没有任何区别。

3、过去这些设备经常使用ADA语言来编写,现在为了降低成本,在F-35项目上已经改为使用C++了。

img

图Via:http://www.stroustrup.com/JSF-AV-rules.pdf

这是F-35项目的C++编程规范

F-35的微处理器是PowerPC指令集的,为了保证可靠性,采用的编译器也是同普通的编译器不太一样。编译器也是有可能出bug的,为了保障源代码同编译出来的目标代码完全一致,避免编译器的bug造成问题,在JSF项目内部的软件开发中,经常使用CompCert编译器。这个编译器只能编译C99,但是可靠性极高。

参考网站

[1] VxWorks 官方网站http://www.windriver.com/products/vxworks/

[2] Integrity-178B的官方网站https://www.ghs.com/products/safety_critical/integrity-do-178b.html

[3] 《F-35项目的C++编程规范》PDF http://www.stroustrup.com/JSF-AV-rules.pdf

文章目录
  1. 1. 1、波音-787,AH-64用的操作系统是VxWorks
  2. 2. 2、B-2, F-16, F-22, F-35, 空客-380 使用的操作系统是Integrity-178B
  3. 3. 3、过去这些设备经常使用ADA语言来编写,现在为了降低成本,在F-35项目上已经改为使用C++了。
  4. 4. 参考网站