近日,,龍芯在北京開了一場(chǎng)盛大的發(fā)布會(huì),,并聲稱和Intel最強(qiáng)技術(shù)只有30%的差距,。因?yàn)閺哪硞€(gè)角度上看,,龍芯是一個(gè)自主設(shè)計(jì)的產(chǎn)品,,作為一個(gè)中國(guó)人我是應(yīng)該感到興奮的,。但作為一個(gè)科技媒體工作者,,龍芯的發(fā)布會(huì)又讓我對(duì)國(guó)產(chǎn)CPU的真實(shí)狀況和搭配的國(guó)產(chǎn)操作系統(tǒng)倍加關(guān)注,,于是就有了作者的這個(gè)文章:
先不談制造,,直說設(shè)計(jì),國(guó)產(chǎn)CPU分為以下幾個(gè)類型:
1. 龍芯這種從下到上都是自主設(shè)計(jì),指令集雖然是模仿的,,但也勉強(qiáng)算是自主的,,現(xiàn)代CPU架構(gòu)下指令集的差異性已經(jīng)不大了。
2. 用開源的硬件方案的,,代表類型有SPARC架構(gòu)下的一些CPU,,比如神舟飛船上用的就是這類,拿別人開源的東西改改就可以用了,。
3. 直接買別人的硬件方案,,這了指的是買了全套東西的那種,代表類型有alpha架構(gòu),,也就是申威系列,,太湖之光用的。
4. 拿別人的授權(quán),,然后生產(chǎn)CPU的,,代表類型是華為海思這種,拿到ARM的授權(quán),,然后重新設(shè)計(jì)的,,雖然ARM會(huì)提供公版,但像拿來直接用還是有點(diǎn)難度的,。5. 破解,、抄襲、打磨別人家的CPU的,,有一些研究所在做,。
哪個(gè)是國(guó)產(chǎn)CPU的最好選擇?
龍芯這種其實(shí)意義是最大的,,基本上把CPU設(shè)計(jì)中所有的水都試過,雖然也出過能跑Linux的桌面版本,,但整體技術(shù)來說有點(diǎn)落后,,并且市場(chǎng)前景也不樂觀,MIPS自己都快死了,。
龍芯肯定會(huì)活著,,至少作為國(guó)家戰(zhàn)略的技術(shù)儲(chǔ)備,也會(huì)有人讓它活著,,但活的好不好就難說了,。玩硬件太燒錢了,看Intel掙的多,,燒的錢更多,。
SPARC和alpha其實(shí)在實(shí)際中差不多,一種是開源的,另一種是整體買過來的,。問題在于,,不管是開源還是買的,基本上搞不到太好的東西,,雖然申威拿到的超算的第一,,但申威自身的問題很多,比如內(nèi)存設(shè)計(jì)就很弱,,適合做并行計(jì)算,,但不適合民用。當(dāng)年太湖之光拿下超算第一的時(shí)候,,很多人覺得國(guó)產(chǎn)CPU成氣候了,,其實(shí)不是那么一回事,民用領(lǐng)域?qū)魏诵阅芤蠛芨叩?,申威的單核可能還不如龍芯(沒研究過具體數(shù)據(jù),,可能有偏差),申威的優(yōu)勢(shì)在于浮點(diǎn)性能強(qiáng)悍,,但普通用戶要那么強(qiáng)的浮點(diǎn)性能干嘛,?
SPARC多用在航天領(lǐng)域,歐洲人一直在用,,我們?cè)诤竺娓鴮W(xué)(之前寫的有誤,,老美用的是PPC,歐洲人用SPARC),,我們自己造的SPARC整體上還是有一定的差距,,如果只是使用的話,已經(jīng)足夠了,。
再次強(qiáng)調(diào),,這兩類不太適合民用。
第四類就是拿授權(quán),,自己設(shè)計(jì)Soc之類的,,這類包含很多,廣義一點(diǎn)來說,,兆芯(x86),、飛騰(ARM)、海思(ARM),、展訊(ARM)等等,,好像PPC指令集在國(guó)內(nèi)也有拿到授權(quán)的。龍芯拿到MIPS授權(quán)以后,,其實(shí)也可以歸到這類,,但畢竟龍芯早期確實(shí)是全自主設(shè)計(jì),,只不過是“兼容”MIPS指令,而且龍芯發(fā)布的年代國(guó)內(nèi)缺人缺錢,,條件要困難的多,。
狹義的看,像兆芯這種其實(shí)不算,,因?yàn)闆]有什么自主性可言,,其實(shí)就是VIA,但要是哪天VIA賣給國(guó)內(nèi)也許不是什么壞事,,起碼可以合法生產(chǎn)x86的CPU了(評(píng)論里說最新的兆芯已經(jīng)重新設(shè)計(jì)IP了,,如果這樣就跟海思之類的差不多)。
拿到的授權(quán)不同,,自主的程度也不一樣,,有些可以做深度定制,有些就只能簡(jiǎn)單改改,,因?yàn)檫@類廠商實(shí)在是太多了,,我了解的不全,不好一一評(píng)價(jià),。但我個(gè)人認(rèn)為,,從商業(yè)化的角度上看,這條路是最好走的,。兼容性上沒有門檻,,前期不需要燒特別多的錢(但也不少),對(duì)于商業(yè)化來說相對(duì)比較容易,。
最后一類是拿別人的片子搞破解抄襲之類的,,基本沒有什么市場(chǎng)可言,要么是打著科研的旗號(hào),,要么打著國(guó)防的旗號(hào),,要么就是純粹騙錢,當(dāng)然可能兩三種情況并存的也有,。還有,,特別注意區(qū)別一下龍芯是自己做出來的,漢芯是靠打磨騙錢的,,兩個(gè)不是一回事。
以上都是CPU設(shè)計(jì)方面的,。
關(guān)于制造方面
生產(chǎn)方面,,國(guó)內(nèi)芯片工藝相對(duì)落后,光刻機(jī)被卡著脖子,,高端的芯片生產(chǎn)不了,。這里的芯片類型包括但不限于CPU、內(nèi)存、Flash存儲(chǔ)等,,低端的可以做一些,,高端的基本沒戲。設(shè)計(jì)CPU已經(jīng)很燒錢了,,造CPU就更燒錢,,這方面除了收購(gòu)別人已經(jīng)沒有捷徑可言,可是稍微好點(diǎn)的又限制中國(guó)收購(gòu)(鎂光),,龍芯過去都是委托別人制造的,。
光刻機(jī)雖然是別人不賣(編者按:據(jù)ASML相關(guān)人透露,現(xiàn)在是已經(jīng)取消這個(gè)限制了),,但主要原因還是工業(yè)積累的時(shí)間不夠長(zhǎng),。從科技樹的角度上看,光刻機(jī)依賴于高精度機(jī)床,、高精度光學(xué)設(shè)備(鏡片),,這些東西國(guó)產(chǎn)的都不行,說到尼康,,都知道是做單反的,,其實(shí)尼康還做光刻機(jī),而國(guó)內(nèi)就沒有這樣的企業(yè),,所以國(guó)產(chǎn)光刻機(jī)的路還很漫長(zhǎng),。
以上是關(guān)于CPU的。
國(guó)產(chǎn)操作系統(tǒng)的“爛賬”
說的到國(guó)產(chǎn)操作系統(tǒng),,這個(gè)話題就太大了,,因?yàn)閺V義上說國(guó)產(chǎn)操作系統(tǒng)太多了。大致分這么幾類:
1. 全自主設(shè)計(jì)的,;
2. 拿開源的改的,;
3. 合法的拿閉源的改的;
4. 不合法的,。
以上所有大類又可以細(xì)分為民用市場(chǎng)和專用領(lǐng)域兩大塊,,其中2、3條又分為改logo改皮膚的,,以及深度定制的,。
軟件不像硬件那么好界定,畢竟指令集什么的,,是一下就能看出來的,,軟件想要搞清楚究竟是借鑒還是抄襲還是原創(chuàng),有一定難度,。
下面挨個(gè)細(xì)說一下:
全自主設(shè)計(jì)的,,這個(gè)怎么說呢,,要說多,也非常多,,一個(gè)計(jì)算機(jī)專業(yè)的本科生或者研究生,,水平高的就能自己搞一個(gè)簡(jiǎn)單的內(nèi)核,16位的,、32位的,、64位的,基于SMP/SMT的,,甚至帶虛擬化的,,我自己都寫過類似的東西。難度一點(diǎn)也不高,,但操作系統(tǒng)重要的是生態(tài),,這方面全自主設(shè)計(jì)的國(guó)產(chǎn)系統(tǒng)基本上是零。
全自主設(shè)計(jì)的國(guó)產(chǎn)系統(tǒng),,一般都在專用領(lǐng)域,,總之民用的不多見,比如嵌入式的DJYOS(我不是太了解,,只是聽說)等等,。
拿開源的改的,是國(guó)產(chǎn)系統(tǒng)里最常見的方式,,因?yàn)檫@樣可以避免生態(tài)系統(tǒng)的困局,,但也很容易招罵,比如過去的麒麟,、紅旗之類的,。基本上都是改Linux,,或者BSD系列,。這里也有一些深度定制的,比如deepin之類的,。
安卓家族從廣義上說也是這類,,幾家手機(jī)廠商都在搞,另外像阿里云之類的也屬于類Linux系統(tǒng),。
普通用戶接觸的“國(guó)產(chǎn)”操作系統(tǒng),,大部分屬于拿開源的改的這一類。同時(shí),,在超算,、嵌入式領(lǐng)域,這種思路也行得通,。
合法拿閉源的改的,,這類里也有不少,只不過很多人不了解,。跟硬件一樣,,軟件一樣可以拿到完整的授權(quán)(源碼級(jí)),然后就可以自己DIY了,,只不過要掏很多錢,,代表類型是VxWorks這類,在嵌入式里很常見,。我在上家公司做交換機(jī)的時(shí)候,,OS的核心也是買的。
還有一類是不合法的,,但這種卻沒人管,,因?yàn)楣懿涣耍饕性趪?guó)防,,航天軍工這類行業(yè)里,。前面我已經(jīng)說了,國(guó)內(nèi)喜歡抄老美的方案,,不管硬件還是軟件,,硬件的CPU抄完,操作系統(tǒng)也跟著抄,,但因?yàn)椴桓颐髅嫔现苯映?,只好打著兼容XXX系統(tǒng)這種旗號(hào)了,究竟這類系統(tǒng)是全自主的還是全抄襲的還是混合的,,我也搞不清楚,,民用領(lǐng)域很難接觸到,不做評(píng)價(jià),。
就出路而言,,2、3,、4其實(shí)差不多,,論自主可控程度,基本上都是一致的(都有源碼),。別覺得抄的東西不一定就好,,其實(shí)抄別人的,本身也不那么容易,,抄好了反過來把對(duì)方吞并,,也不是不可能。
有些領(lǐng)域因?yàn)橐o跟著老美的步伐,,不得不采用抄襲的方式,,這其實(shí)是一種省錢辦事的好方法,,自己去試水需要付出的時(shí)間和金錢的代價(jià)都太大,本來我們就落后,,再挨個(gè)試水,,差距只會(huì)越來越大。
有人會(huì)說源碼不是中國(guó)人寫的,,不安全,。我想說的是:源碼都給你了你還覺得不安全,那什么是安全,?中國(guó)人自己寫的就安全無bug,?簡(jiǎn)直是笑話。是從頭寫一個(gè)操作系統(tǒng)更容易更穩(wěn)定,,還是拿現(xiàn)有的源碼研究更容易更穩(wěn)定,?
至于民用系統(tǒng),走Linux的路子其實(shí)也沒什么問題,,將來國(guó)內(nèi)企業(yè)有錢了,,保留Linux上層API,把內(nèi)核換了就完事了,,況且Linux社區(qū)里華人的貢獻(xiàn)也不少呢,。Linux是屬于全世界的。
同時(shí),,也別把國(guó)產(chǎn)系統(tǒng)想的多么重要,,從科技樹的角度上看,國(guó)產(chǎn)系統(tǒng)依賴國(guó)產(chǎn)硬件,,國(guó)產(chǎn)硬件依賴國(guó)產(chǎn)工業(yè)設(shè)備(機(jī)床,、光刻),先把依賴性搞清楚了再看看哪個(gè)才是最重要的,。真有一天美國(guó)對(duì)中國(guó)搞技術(shù)封鎖了,,最大的問題是芯片,而不是什么操作系統(tǒng)之類的東西,。
而且建立一個(gè)完善的生態(tài)系統(tǒng)需要很多很多錢,,可能是幾倍十幾倍三峽工程、京滬高鐵的錢,,國(guó)內(nèi)缺錢的地方很多,,搞IT的千萬別覺得自己是個(gè)程序員,國(guó)內(nèi)的所有資源都應(yīng)該投放到軟件行業(yè),。代碼不能當(dāng)飯吃,,代碼不能當(dāng)水喝,代碼也不能給誰生孩子。