戰鬥機源代碼是什麼東西?

用戶51387177394


所謂的源代碼實際上機載系統的軟件統。戰鬥機在早期沒有什麼航電系統,伴隨著技術的進步,現代戰機的航電系統越來越複雜,為了提高其性能安裝了計算機,功能也越來越強大,這樣就出現了軟件系統,這樣只需要對軟件系統進行升級,那麼可以擴充戰機的功能。

與人們使用的個人電腦不同,軍用戰機的軟件系統非常特別,無論是硬件,還是軟件都屬於獨立的東西,我們在個人電腦使用的程序壓根沒法在其上運行,軍用系統的軟硬件升級與更新也不是隨意的,不是發個升級包就可以升級了。

戰機的軟件系統進行升級的話,自然涉及編寫新的軟件代碼。但是其使用軍用軟件,與人們使用的各種電腦軟件不一樣的,別說編程語言,連輸入輸出設備都不一樣,有很大的區別,也就是說。

實際上,軍用系統的軟件是真正意義上的加密,沒有公開的編程工程,至於軟件源代碼更不會有介紹。實際上涉及的是高度的軍事機密,不公開的東西,為了保密,軟件系統經過大量的技術處理,安插了大量的假代碼等加以偽裝,甚至加入了病毒來防破解,讓人們無法認清它的源代碼到底什麼樣子。

由於屬於高度機密的東西,客戶拿不到這個軟件源代碼,只能依賴供應商的合作,破解的難度極高。


麥田軍事觀察


說起來忒簡單,戰鬥機電腦的核心操作系統嘛,使用的編程語言,即源代碼,這臺電腦能幹什麼,不能幹什麼,都由其控制,比如加裝新型導彈,即要更改發射程序設計,不然的話,戰機電腦就會告訴你不受支持。沒有加裝計算機的戰鬥機,走進座艙,令人眼花繚亂,各種密密碼的按鈕和開關,真是讓人頭大,現在走進去,一塊玻璃屏,非常爽心悅目,好了還想好,全部顯示在戰鬥頭盔上,隨飛行員的眼睛,可以實現各種操作,甚至語音控制都可以,說聲發射,導彈就飛出去,可以說最大程度地減少了飛行員的疲勞,也最大程度地把握住戰鬥和生存機會,好是好,所謂有一利必有一弊,不得不面臨升級極其複雜的技術問題,硬件損壞顯示數據不準,給戰機操縱帶來極大危險,充滿了不確定性。也可以說,源代碼也是致命性的。

▲致命源代碼。2018年,一架F-35B失事,原因就在於,顯示錯誤,而顯示錯誤,是由於大氣傳感器在空中結冰造成的,結了冰,顯示屏中沒顯示,加之起飛迎角過大,可不就出了事唄。這麼棒的戰鬥機,出現這樣低劣的錯誤,為什麼?不是戰機源代碼設計不成,而是太多太複雜,800多萬程序,更改哪項都費勁。戰機傳感器太多,飛機設計得太複雜,什麼都想要,整合到一起,引起了極大的麻煩。F-35C起落架設計有點問題,有人說,改過來就是,其實並不簡單,交付二年來,仍然不能改正,改一項而動全身,這就是戰機的源代碼。再比如F-35高空缺氧的問題,F-22到現在也存在是一問題,洛馬公司搞不清究竟是戰機計算機源程序不對,還是生命保障系統不對,拆下來測試好好的,生生裝上去就有問題。所謂動一動,要你的命,源代碼問題著實複雜。

▲開放的“梟龍”。2015年,巴基斯坦空軍一中將,對媒體說,已經獲得了“梟龍”全部源代碼,這就意味著,想怎麼用就怎麼用,想加裝什麼系統都可以,多配備一點外部武器,哪裡想整合一個傳感器,都可以自己搞了,不必再飛到中國成都來完成,開放源代碼,充分顯示了中巴軍事合作的高水平,巴方高興,中國也高興,兄弟嘛,對不對?開放的“梟龍”,自當有開放的心胸。多少配件做到了即插即拔,中西兼容,巴方說,人機界面非常友好,幾可隨心所欲,支持各種西方硬件、軟件,這使得我們自家兄弟非常happy。與此相反,我們來看印度的例子,俄印合作“布拉莫斯”,被印度倚為神器與寶器,一天到晚嚷嚷著說要賣,賣給越南賣給誰誰,賣就賣吧,不必這麼大聲音的,問題被視為利器,自不一般,俄羅斯輕咳一聲後,印度就不吱聲了,問題正出在導彈的源代碼不在印度之手,嘿嘿,什麼武器都有源代碼,從而使得武器外銷變得非常複雜。

▲卡脖子的源代碼。現在所有武器系統,只有事涉電子設備,即可成為卡脖子裝備,印度一款導彈,即為卡得這般嗷嗷叫,有了這東西,俄羅斯即把技術核心掌握在手裡,印度外銷多少,俄羅斯即可得到多少合作專利。當然也看合作水平,美國視以色列為己出,一切裝備源代碼即可對其開放,比如正在進行的美以F-35交易,以色列自己想改則改,維護和加裝設備,就變得非常順手。之對他國則不可能這樣便利,包括日本,雖說也架設了一條生產線,但飛機出點事即不得不請來美國專家,現場指導,不知叫不叫日本技師在不在現場,看來是費勁,源代碼成為不傳之密。挪威和英國,興沖沖賣回去一些,都存在著不同程度的技術問題,也只能坐等美國老師上門服務。一切都是加密的,自己破譯,根本就是一項完成不了的任務。


魂舞大漠


為什麼源代碼這麼神秘?又為什麼很多企業或者作者都不會公佈源代碼?就拿前幾年中國從俄羅斯購買蘇35來說,俄羅斯不光不提供源代碼,就連漢化上也想坑中國一點錢。最後導致中國一氣之下用俄語版本的戰鬥機。為什麼俄方這麼摳門不提供源代碼?源代碼這種東西很神秘嗎?掌握源代碼又意味著能幹什麼?

源代碼是什麼?很多人對這個東西一知半解,多數人瞭解到它也僅僅只是從電影書籍中知道隻言片語,其實就是電子設備通用的數據格式和編碼方式,跟戰鬥機本身是沒有關係的。而使用不同源代碼的機器裝到一起就不能正常工作。

源代碼是程序在創造時必須的一段文本文件,是整個程序最重要的部分。不同編程語言的源代碼長的也不一樣,源代碼決定程序的所有功能和性能。而現在戰鬥機因為都是電氣化,因此都採用計算機控制技術,都要編制很多程序。

程序生成的源代碼是很複雜的,根本沒有人可以通過逆向反編譯的方法得到。美國的F—35戰機就有大約800萬行機載軟件源代碼,這是控制系統關鍵所在,為戰機核心技術。機載軟件源代碼控制著從武器、雷達到引擎在內的所有關鍵系統,是戰鬥機飛行及作戰系統核心技術。

不光如此軍用電子設備的數據格式和民用的完全不一樣,所使用的也不是任何一種常用語言。舉個例子說,家用電腦的數據格式是8位一個字節,所以電腦有16位、32位的。但俄式軍用數據格式是18位一個字節。

總之這源代碼就像電腦操作系統一樣,只給你幾個幾口調用的地址、格式,讓你可以編寫應用軟件,但是你不能更改操作系統。一旦操作系統升級,你不得不去買。而且一旦源代碼是通過加密運行的,更是無法破譯的。保住源代碼就是保住了核心機密。這一點對歐洲人更重要。因為歐洲有很高的技術,擁有了代碼,就可以進行修改、仿製出性能更好的飛機。


思遠軍事


說下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模擬程序在家裡的計算機給戰鬥機編個程什麼的,都未嘗不可。


所以說啊,戰鬥機源代碼,也並不是什麼神秘的東西。只不過,你想真正的給一個聲卡編程那麼你至少得有一個聲卡,同理,你想給一個戰鬥機編程,除了時間之外還真得有一架戰鬥機。


軍武數據庫


你所說的源代碼應該是操作系統吧,或者是各種戰鬥機的機載控制程序。戰鬥機作為現代科技的結晶,是一臺十分複雜的機器,為了完成各種任務,戰鬥機上都安裝數臺了不同功能的計算機。

老式戰鬥機是沒有計算機的,操縱控制完全由人來手動完成,飛行員直接控制油門和舵面,手上還有機炮的扳機。隨著戰鬥機越來越複雜,功能越來越多,機載設備也也越來越多,一個飛行員已經顧不過來了,所以要將大部分任務都交給計算機去完成,飛行員就發號施令就行了。




戰鬥機的機載計算機分為好多種,比如飛控計算機、火控計算機、大氣計算機、飛行管理計算機。每一種計算機都要按照一定的規律完成專門的任務,並且根據飛行的實時情況完成飛行員的指令,這都需要編制相應的程序。

源代碼就是一個翻譯,負責把飛行員的指令翻譯成計算機能懂的格式,然後讓計算機去操縱戰鬥機的各種設備,並且把飛行員想要的信息顯示出來。


F35的顯示組件和操作界面



編制戰鬥機所有需要的代碼可不是一件容易的事情,各種系統互相關聯,要考慮的情況非常複雜,洛克希德F35的代碼量超過800萬行

這些源代碼也是由計算機語言編寫的,F35源代碼中53%是C語言編寫,35%是c++語言編寫,另外有7%是彙編語言。

戰鬥機計算機的操作系統一般是用vxworks操作系統,這個操作系統也廣泛應用在的衛星和各類航天器,反應迅速,實時性能強,工作穩定,可以嵌入到各類系統中。

戰鬥機源代碼要求高可靠性和高效率,基本沒有一句廢話,至於windows和安卓系統,還是算了吧,看個小電影還可以,用來控制戰鬥機,實在是太不靠譜了。


一坑四彈


老值錢💰的東西,先科普一下。只要是軟件都有源代碼,源代碼就是指編寫的最原始程序的代碼。運行的軟件是要經過編寫的,程序員編寫程序的過程中需要他們的“語言”。音樂家用五線譜和音符,建築師用圖紙和筆,那程序員的工作的語言就是“源碼”了。

人們平時使用軟件時就是程序把“源碼”翻譯成我們可直觀的形式表現出來供我們使用的。

比如一個word文件用記事本強行打開就是亂碼。就是因為源代碼不對。

戰鬥機上也有計算機,有計算機就有軟件和系統。有軟件和系統就需要源代碼。


怡鑫五金mg


源代碼是程序員用某種計算機語言編寫的初始代碼,程序員能看懂並可以修改的。通過反覆修改並最終定型,這是最機密的代碼稱為源代碼。源代碼經過計算機編譯後成為應用程序。編譯後的程序是機器語言,看上去是一堆亂碼,看不懂也不能修改,能在機器上運行的是應用程序,源代碼是程序員的心血。輕易是不予他人的,源代碼編譯完成後程序員做備份後被刪除掉,你得到的只是編譯後的程序。


用戶1548668127893


就是火控計算機的程序代碼,現代戰機掛載的都是精確制導武器,這些武器上也都有計算機芯片和程序,與戰機之間通過數據總線也有數據交換,因此都有程序代碼,而編寫這些的程序代碼就是源代碼。


老何157501439


電控系統……


分享到:


相關文章: