战斗机源代码是什么东西?

用户51387177394


说下F-35的OS吧,要不然很多人还有很多的疑问。

F-35的核心操作系统是Green Hills Software公司的产品,叫做INTEGRITY。这个操作系统被用在B-2、F-16、F-22、F-35上面。是一个实时嵌入式操作系统,算是F-35的软件核心部分了。

但是操作系统,顾名思义的就是一个底层的OS,起到应用级别的程序到硬件固件之间的桥梁作用。

就类似于,家里的电脑虽然安装了Windows系统,也带有声卡,但如果想让喇叭发出声音的话,那么一定还得有音频的应用程序,类似于录音机、千千静听、酷狗、网易云音乐什么的。也只有安装了特定应用程序后INTEGRITY才能起到自己的作用控制飞机的飞行。

INTEGRITY呢本身就是一个开放式系统,不仅仅在战斗机上应用,一些类似于空客的民用飞机也会使用这些系统。

这里呢就会看到一些类似于下面的部件:

战机上很常见的多功能显示屏拆下来就是这个样子的。

在这个显示屏(MFD)后面的接口大致是这样的(当然也有其他形式)

这很像我们的显示器的接口类型了,只不过这种接口是双向通讯的,接口引出的信号线被接入系统总线。

这样就会完成了一个INTEGRITY到硬件的物理连接,同样我们从系统图上可以看出,INTEGRITY支持了三种语言ADA、C、C++,这三种语言最重要的是ADA,这是一个实时操作系统的语言,用来连通设备并做出相应响应的。例如下面的十四行程序:

是将雷达告警信号和机上的一个闪灯进行连接的。由于是在Runtime下工作,因此只要雷达告警器接收到雷达信号,那么机上的闪灯就开始不停的闪烁。

同样下面的23行程序:

是战斗机数据链的程序,当战斗机从序列端口取得数据链信息后,就会直接投射到多功能显示器上。


这样我们能看到ADA程序其实特别简单了吧。就是这样的程序被战斗机广泛应用。当然了咱们刚刚说的都是一小点的功能,一架战机的功能高达上万项,因此往往一架战机的源码也得写个几百万行。


但整体上都大同小异如果有兴趣的话,可以安装一个INTEGRITY模拟程序在家里的计算机给战斗机编个程什么的,都未尝不可。


所以说啊,战斗机源代码,也并不是什么神秘的东西。只不过,你想真正的给一个声卡编程那么你至少得有一个声卡,同理,你想给一个战斗机编程,除了时间之外还真得有一架战斗机。


军武数据库


说起来忒简单,战斗机电脑的核心操作系统嘛,使用的编程语言,即源代码,这台电脑能干什么,不能干什么,都由其控制,比如加装新型导弹,即要更改发射程序设计,不然的话,战机电脑就会告诉你不受支持。没有加装计算机的战斗机,走进座舱,令人眼花缭乱,各种密密码的按钮和开关,真是让人头大,现在走进去,一块玻璃屏,非常爽心悦目,好了还想好,全部显示在战斗头盔上,随飞行员的眼睛,可以实现各种操作,甚至语音控制都可以,说声发射,导弹就飞出去,可以说最大程度地减少了飞行员的疲劳,也最大程度地把握住战斗和生存机会,好是好,所谓有一利必有一弊,不得不面临升级极其复杂的技术问题,硬件损坏显示数据不准,给战机操纵带来极大危险,充满了不确定性。也可以说,源代码也是致命性的。

▲致命源代码。2018年,一架F-35B失事,原因就在于,显示错误,而显示错误,是由于大气传感器在空中结冰造成的,结了冰,显示屏中没显示,加之起飞迎角过大,可不就出了事呗。这么棒的战斗机,出现这样低劣的错误,为什么?不是战机源代码设计不成,而是太多太复杂,800多万程序,更改哪项都费劲。战机传感器太多,飞机设计得太复杂,什么都想要,整合到一起,引起了极大的麻烦。F-35C起落架设计有点问题,有人说,改过来就是,其实并不简单,交付二年来,仍然不能改正,改一项而动全身,这就是战机的源代码。再比如F-35高空缺氧的问题,F-22到现在也存在是一问题,洛马公司搞不清究竟是战机计算机源程序不对,还是生命保障系统不对,拆下来测试好好的,生生装上去就有问题。所谓动一动,要你的命,源代码问题着实复杂。

▲开放的“枭龙”。2015年,巴基斯坦空军一中将,对媒体说,已经获得了“枭龙”全部源代码,这就意味着,想怎么用就怎么用,想加装什么系统都可以,多配备一点外部武器,哪里想整合一个传感器,都可以自己搞了,不必再飞到中国成都来完成,开放源代码,充分显示了中巴军事合作的高水平,巴方高兴,中国也高兴,兄弟嘛,对不对?开放的“枭龙”,自当有开放的心胸。多少配件做到了即插即拔,中西兼容,巴方说,人机界面非常友好,几可随心所欲,支持各种西方硬件、软件,这使得我们自家兄弟非常happy。与此相反,我们来看印度的例子,俄印合作“布拉莫斯”,被印度倚为神器与宝器,一天到晚嚷嚷着说要卖,卖给越南卖给谁谁,卖就卖吧,不必这么大声音的,问题被视为利器,自不一般,俄罗斯轻咳一声后,印度就不吱声了,问题正出在导弹的源代码不在印度之手,嘿嘿,什么武器都有源代码,从而使得武器外销变得非常复杂。

▲卡脖子的源代码。现在所有武器系统,只有事涉电子设备,即可成为卡脖子装备,印度一款导弹,即为卡得这般嗷嗷叫,有了这东西,俄罗斯即把技术核心掌握在手里,印度外销多少,俄罗斯即可得到多少合作专利。当然也看合作水平,美国视以色列为己出,一切装备源代码即可对其开放,比如正在进行的美以F-35交易,以色列自己想改则改,维护和加装设备,就变得非常顺手。之对他国则不可能这样便利,包括日本,虽说也架设了一条生产线,但飞机出点事即不得不请来美国专家,现场指导,不知叫不叫日本技师在不在现场,看来是费劲,源代码成为不传之密。挪威和英国,兴冲冲卖回去一些,都存在着不同程度的技术问题,也只能坐等美国老师上门服务。一切都是加密的,自己破译,根本就是一项完成不了的任务。


魂舞大漠


你所说的源代码应该是操作系统吧,或者是各种战斗机的机载控制程序。战斗机作为现代科技的结晶,是一台十分复杂的机器,为了完成各种任务,战斗机上都安装数台了不同功能的计算机。

老式战斗机是没有计算机的,操纵控制完全由人来手动完成,飞行员直接控制油门和舵面,手上还有机炮的扳机。随着战斗机越来越复杂,功能越来越多,机载设备也也越来越多,一个飞行员已经顾不过来了,所以要将大部分任务都交给计算机去完成,飞行员就发号施令就行了。




战斗机的机载计算机分为好多种,比如飞控计算机、火控计算机、大气计算机、飞行管理计算机。每一种计算机都要按照一定的规律完成专门的任务,并且根据飞行的实时情况完成飞行员的指令,这都需要编制相应的程序。

源代码就是一个翻译,负责把飞行员的指令翻译成计算机能懂的格式,然后让计算机去操纵战斗机的各种设备,并且把飞行员想要的信息显示出来。


F35的显示组件和操作界面



编制战斗机所有需要的代码可不是一件容易的事情,各种系统互相关联,要考虑的情况非常复杂,洛克希德F35的代码量超过800万行

这些源代码也是由计算机语言编写的,F35源代码中53%是C语言编写,35%是c++语言编写,另外有7%是汇编语言。

战斗机计算机的操作系统一般是用vxworks操作系统,这个操作系统也广泛应用在的卫星和各类航天器,反应迅速,实时性能强,工作稳定,可以嵌入到各类系统中。

战斗机源代码要求高可靠性和高效率,基本没有一句废话,至于windows和安卓系统,还是算了吧,看个小电影还可以,用来控制战斗机,实在是太不靠谱了。


一坑四弹


源代码是程序员用某种计算机语言编写的初始代码,程序员能看懂并可以修改的。通过反复修改并最终定型,这是最机密的代码称为源代码。源代码经过计算机编译后成为应用程序。编译后的程序是机器语言,看上去是一堆乱码,看不懂也不能修改,能在机器上运行的是应用程序,源代码是程序员的心血。轻易是不予他人的,源代码编译完成后程序员做备份后被删除掉,你得到的只是编译后的程序。


用户1548668127893


老值钱💰的东西,先科普一下。只要是软件都有源代码,源代码就是指编写的最原始程序的代码。运行的软件是要经过编写的,程序员编写程序的过程中需要他们的“语言”。音乐家用五线谱和音符,建筑师用图纸和笔,那程序员的工作的语言就是“源码”了。

人们平时使用软件时就是程序把“源码”翻译成我们可直观的形式表现出来供我们使用的。

比如一个word文件用记事本强行打开就是乱码。就是因为源代码不对。

战斗机上也有计算机,有计算机就有软件和系统。有软件和系统就需要源代码。


怡鑫五金mg


电控系统……


橙子_子橙


就是火控计算机的程序代码,现代战机挂载的都是精确制导武器,这些武器上也都有计算机芯片和程序,与战机之间通过数据总线也有数据交换,因此都有程序代码,而编写这些的程序代码就是源代码。


分享到:


相關文章: