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