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