賈圣羽 中國特種飛行器研究所
國內(nèi)相關單位曾通過對某些國外CPU 的嚴格測試,證實存在功能不明確的“多余”模塊,還發(fā)現(xiàn)存在未公開指令,包括加解密、浮點操作在內(nèi)共計二十余條。其中,有三條指令在用戶模式就可以使機器死機或重啟,作用機制直接穿透各種軟件保護措施,防護軟件不能感知,普通應用程序中嵌入一條即可使系統(tǒng)宕機。這些存在問題的芯片要是被用在航空、航天、黨政辦公等核心關鍵領域,將可能造成嚴重后果,因此,必須將芯片國產(chǎn)化替代提升到國家安全層次,在關乎國家安全的戰(zhàn)略行業(yè),必須使用中國芯[1]。
目前國內(nèi)的計算機核心芯片都是Intel 或者AMD 的,操作系統(tǒng)都是windows操作系統(tǒng),應用軟件由各家公司自主開發(fā)。基于目前國際信息安全局勢和國家對核心軟硬件自主化的要求,需要搭建一套核心硬件自主研發(fā)、操作系統(tǒng)自主研發(fā)的開發(fā)環(huán)境,在此基礎上自主開發(fā)軟件。
1.計算機的核心硬件自主可控,性能不能低于現(xiàn)在使用的計算機,至少具備2路以太網(wǎng)口,2路RS232串口。
2.操作系統(tǒng)自主可控,與計算機硬件兼容性好,提供成熟可靠的軟件開發(fā)環(huán)境。
3.基于以上軟硬件環(huán)境自主開發(fā)地面控制軟件。
1.國產(chǎn)化芯片
本項目不討論CPU 的制造問題,主要從設計上滿足自主可控,避免留有后門。從CPU 設計方面來看,國產(chǎn)的CPU 有以下幾個類型:
(1)完全自主設計的芯片。代表產(chǎn)品如龍芯,屬于MIPS 兼容架構,從下到上都是自主設計,指令集雖然是模仿的,但算是自主的,現(xiàn)代CPU 架構下指令集的差異性已經(jīng)不大了。主要應用于低功耗服務器、個人計算機、工業(yè)控制、網(wǎng)絡安全方面;
(2)開源方案,其中的代表就是SPARC 架構的CPU。這一類CPU 基本不會用在民用領域,大多用在航空領域[2];
(3)購買方案,基于國外的架構開發(fā)的芯片。代表產(chǎn)品有申威處理器,在太湖之光超級計算上有應用,前三代源于DEC Alpha 架構,第四代開始架構不詳,架構設計類似與Power cell 架構;
(4)授權方案,經(jīng)過一定的延伸性設計,然后生產(chǎn)的芯片。代表類型是華為海思、飛騰和兆芯,華為海思是拿到ARM 的授權,然后重新設計的;國防科大的飛騰芯片,產(chǎn)品架構從sparcv8架構轉到ARM 架構都有;兆芯的芯片是基于X86架構開發(fā)的。
基于以上情況分析,經(jīng)過廠家調(diào)研、資料查詢和供應商咨詢,綜合可靠性和性能需求,決定選用應用更廣泛的龍芯3A3000系列CPU(四核,主頻1.2GHz),還有更高端的3A4000系列(2.0GHz),3A5000系列(2.5GHz)正在測試。
2.國產(chǎn)操作系統(tǒng)
通過與供應商咨詢,與龍芯3A3000系列芯片兼容性比較好的國產(chǎn)操作系統(tǒng)是中標麒麟操作系統(tǒng)。中標麒麟桌面操作系統(tǒng)是一款面向桌面應用的圖形化桌面操作系統(tǒng),是國家重大專項的核心組成部分,是民用、軍用“核高基”項目桌面操作系統(tǒng)項目的重要研究成果,該系統(tǒng)成功通過了多個國家權威部門的測評,為實現(xiàn)操作系統(tǒng)領域“自主可控” 的戰(zhàn)略目標做出了重大貢獻,在國產(chǎn)操作系統(tǒng)領域市場占有率穩(wěn)居第一[3]。
中標麒麟操作系統(tǒng)采用強化的Linux 內(nèi)核,界面基本就是參考windows,有XP 和win7兩種主題可以切換,方便用戶操作。本項目使用的系統(tǒng)版本內(nèi)置的IDE(集成開發(fā)環(huán)境)只有QT5.6版本,若想安裝其他版本的QT 或者其他廠家的IDE,甚至是系統(tǒng)沒有自帶的其他應用軟件,需要和中標麒麟廠家溝通咨詢,通常需要復雜的適配過程,適配費用很高(以萬為單位計,批量的話可以考慮)。其他自帶的軟件有華標版的office 套件(word,Excel 和PPT),中文輸入法等常用應用。
因項目進度要求,硬件采購和軟件開發(fā)需同時進行。項目組在虛擬機上進行軟件開發(fā),根據(jù)以往項目的經(jīng)驗決定在4.8.7版本的QT 下開發(fā),開發(fā)過程與在windows 和iOS 下是一樣的,根據(jù)項目需求進行設計、編碼、測試和應用部署。
硬件到貨之后發(fā)現(xiàn)操作系統(tǒng)自帶的是QT5.6版本,經(jīng)過部分設置更改,重新編譯,程序順利運行。目前部署完成的系留氣球地面控制系統(tǒng)軟件已連續(xù)運行半年多,系統(tǒng)穩(wěn)定無故障。同時,有另外一個項目組使用QT5.9.1開發(fā)程序,開發(fā)完成后嘗試移植到新的計算機上,截至目前沒有移植成功。
1.龍芯3A3000系列CPU 性能和Intel、AMD 還是有差距的,不過和中標麒麟桌面版操作系統(tǒng)的組合穩(wěn)定,兼容性好,基本滿足使用要求。
2.編譯運算量大的程序時,速度慢,CPU 使用率接近100%。
3.操作系統(tǒng)支持的軟件少,可擴展性弱,使用過程中,不要隨意刪除系統(tǒng)自帶的功能,更改系統(tǒng)設置,否則系統(tǒng)可能無法正常使用。
4.最好使用系統(tǒng)自帶的開發(fā)環(huán)境,如QT5.6,或者更低版本的IDE 進行軟件開發(fā),5.9版本開發(fā)的程序很難移植到中標麒麟系統(tǒng)下(實際操作未成功),在QT4.8版本下開發(fā)的程序移植成功。