最近两天科技界最重大的事件莫过于马斯克的 SpaceX 成功实现了猎鹰 9 号(Falcon 9)带着龙飞船(Crew Dragon)成功发射,并使飞船与国际空间站对接,将 NASA 两名宇航员送上了轨道前哨。

背后关于 Falcon 9 与 Crew Dragon 使用的计算机和软件等信息也引起了开发者的关注。多年前就存在的相关论坛提问帖也被翻了出来。

自称为 SpaceX 公司软件开发团队的网友表示 Falcon 9 火箭与 C#、MVC 都没有关系。Falcon、Dragon(此次载人的 Crew Dragon 前一代飞船)的应用主要使用 LabVIEW 进行编码,用于开发任务和发射控制的 GUI,供工程师和操作员监控车辆遥测并指挥火箭、航天器和护垫支持设备。

LabVIEW(Laboratory Virtual Instrumentation Engineering Workbench,实验室虚拟仪器工程平台)是一种程序开发环境,由美国国家仪器(NI)公司研制开发的,类似于 C 和 BASIC 开发环境。LabVIEW 采用图形化编辑语言 G 编写程序,产生的程序是框图的形式。

该网友还表示 Dragon 和 Falcon 9 使用 Linux 操作系统,其他网友补充,在 GDC 2016 与 Dragon 团队交流后了解到,Falcon 采用“三重冗余”系统,简单来讲,Falcon 9 具有 3 个双核 x86 处理器,每个核上都运行 Linux 实例。

飞行软件采用 C/C++ 编写。对于每个计算/决定,“飞行字符串”都会比较两个核的结果,如果存在不一致,则字符串是错误的,不发送任何命令。如果两个内核都返回相同的响应,则字符串将命令发送到火箭上的各种微控制器,这些微控制器控制诸如引擎之类的东西。

运行在 PowerPC 处理器上的微控制器从三个飞行字符串接收到三个命令,他们充当法官来选择正确的行动方案。如果所有三个字符串都一致,则微控制器将执行命令。

而 Crew Dragon 飞行界面上使用了 Chromium 与 JavaScript 开发,实际的飞行计算机仍基于 C++ 运行。

猎鹰与龙飞船基于Linux,采用C++、Chromium与JS开发相关推荐

  1. 基于 Linux 和 MiniGUI 的嵌入式系统软件开发指南(一)(转)

    自 MiniGUI 从 1998 年底推出以来,越来越多的人开始选择 MiniGUI 在 Linux 上开发实时嵌入式系统.为了帮助嵌入式软件开发人员使用 MiniGUI编写出更好的应用程序,我们将撰 ...

  2. 基于 Linux 和 MiniGUI 的嵌入式系统软件开发指南题八——MiniGUI 和其他嵌入式 Linux 上的图形及图形用户界面系统

    简介: 为了让读者对嵌入式 Linux 当中能够使用的图形及图形用户界面有个较为全面的认识,本文将为读者介绍一些嵌入式 Linux 系统中常见的图形及图形用户界面系统,并作为<基于 Linux ...

  3. 基于 Linux 和 MiniGUI 的嵌入式系统软件开发指南

    内容: 1 Linux 图形领域的基础设施 2 Linux 图形领域的高级函数库 3 面向嵌入式Linux 系统的图形用户界面 4 小结 关于作者 相关内容: 主题一:选择MiniGUI-Thread ...

  4. 基于 Linux 和 MiniGUI 的嵌入式系统软件开发指南(八)

    基于 Linux 和 MiniGUI 的嵌入式系统软件开发指南(八) MiniGUI 和其他嵌入式 Linux 上的图形及图形用户界面系统 魏永明 (ymwei@minigui.org) 自由撰稿人 ...

  5. 10001.基于Linux和MiniGUI的嵌入式系统软件开发指南(转载)

    1 Linux 图形领域的基础设施 2 Linux 图形领域的高级函数库 3 面向嵌入式Linux 系统的图形用户界面 4 小结 关于作者 相关内容: 主题一:选择MiniGUI-Threads 或者 ...

  6. 基于 Linux 和 MiniGUI 的嵌入式系统软件开发指南(六) MiniGUI 提供的非 GUI/GDI 接口...

    1 引言 一般而言,GUI 系统的应用程序编程接口主要集中于窗口.消息队列.图形设备等相关方面.但因为 GUI 系统在处理系统事件时通常会提供自己的机制,而这些机制往往会和操作系统本身提供的机制不相兼 ...

  7. 基于Linux和MiniGUI的嵌入式系统软件开发指南(六)

    本文讲述了 MiniGUI 为应用程序提供的非 GUI/GDI 接口,这些接口能够帮助应用程序更好地和操作系统交互,扩展应用程序功能,并提高应用程序的可移植性.内容主要涉及到如下几个方面:MiniGU ...

  8. 基于Linux和MiniGUI的嵌入式系统软件开发指南(五)

    MiniGUI 1.1.0 版本引入的新 GDI 功能和函数 本文向读者展现了 MiniGUI 的最新开发成果,即在 MiniGUI 1.1.0Pre4 版本中引入的新的 GAL 和新的 GDI 功能 ...

  9. 嵌入式开发基于linux系统的c语言程序开发调试工具

    在学习嵌入式的过程中,我们接触最多的就是Linux环境,而在嵌入式 linux 领域我们最常用的代码调试工具应该就是GDB了,通过简单的学习GDB调试工具,发通过使用它可以有效的解决一些问题. gdb ...

最新文章

  1. 面试题必问: 遇到过线上问题没,你是怎么排查的?
  2. jQuery对象和DOM对象互转的问题、jQuery文件引入问题、DOM版本的网页开关灯
  3. 曝光原理_泰国精戈咖啡效果反馈 作用原理曝光
  4. 阿里云高校“在家实践”计划,免费提供2.68亿小时算力!
  5. 猿宵节正确打开方式:你要的大数据、机器学习、神经网络…已配齐
  6. 对于拼接进去的html原来绑定的jq事件失效
  7. python类基础知识
  8. 手游游戏源码2000套已测
  9. webm格式怎么转换成mp4
  10. MAYA制作女猎人角色毛发-3D建模场景模型教程
  11. 如何养狗完整版 !-为了迎接我的大宝做好准备
  12. 详解高速缓存存储器的3种映射方式
  13. 电脑XP系统最大支持多大内存?
  14. Linux重新挂载磁盘,如何把磁盘挂载到已有目录上面
  15. Deep metric learning 深度度量学习 总结
  16. 笔记本计算机怎么进入安全模式启动,笔记本怎么进入安全模式 【使用步骤】...
  17. Java——因式分解算法
  18. 网易2019实习生招聘编程题集合
  19. 怎么关闭惠普暗影精灵OMEN 8的主机灯
  20. 【软件工程实践】Hive研究-Blog7

热门文章

  1. codevs原创抄袭题 5960 信使
  2. 剑指offer编程题Java实现——面试题3二维数组中的查找
  3. 关于c# .net爬虫
  4. 16进制可逆加密算法
  5. PHP: 手把手编写自己的 MVC 框架实例教程
  6. VS2010插件之NuGet
  7. ASP.NET2.0_多语言本地化应用程序
  8. 用c语言复制字符串的元音字母,急求:编写程序,将一个字符串中的元音字母复制到另一个字符串,然后输出。...
  9. 利用系统错误日志监控磁盘健康状况
  10. Swift和Objective-C混编 1