不把脖子伸出去,美帝不就卡不住了嗎?
前些天發了一篇漫畫《20多年過去了,中國CPU為什么還是不行?》, 有位讀者留言到:
不把脖子伸出去,不就卡不到了嘛。不眼饞人家搗鼓出來的東西,還能怎么卡?
首先禁止采購國外芯片,再強制使用國產OS,既然有國產芯片,性能差點,好歹能用;
慢慢生態就扶持起來了嘛。無錫56所不就在從指令集,編譯器,編程語言,系統全重新造車,這樣的家伙亮出來,他難道還能把手伸過太平洋,伸進你家卡你脖子?
聽起來很有道理的樣子,后來陸續還有類似的留言, 我覺得是時候專門寫一篇文章了。
1
先推演一個極端的情況:我們一切都自己動手,國外的東西統統不用, 會發生什么狀況呢?
計算機體系從下往上,依次是:CPU -> 操作系統 --> 編譯器和編程語言 --> 應用軟件

先說CPU, 自己定義指令集,這沒問題,中科龍芯和江南所已經這么干了。(最新消息,龍芯已經公布了完全自主產權的LoongArch。)
但是怎么設計和制造呢?
Synopsys、Cadence、Mentor這三巨頭壟斷EDA軟件90%以上的市場——沒有EDA軟件,是沒法完成CPU設計的。
ASML幾乎上壟斷了光刻機——沒有光刻機,是沒法完成CPU制造的。
這一塊兒我沒有深入地研究過,姑且認為華大九天的EDA軟件和上海微電子所的光刻機能解決的問題吧,但是性能如何就不好說了。
接下來是操作系統,這里有個有趣的問題:用什么編程語言來寫呢?
這時候還是個裸機,哪有什么高級語言?能用匯編就不錯了!
參考下Unix和C語言的發展過程:Ken Thompson和Dennis Ritchie等人在PDP-7上用匯編寫了第一版的Unix ,后來Dennis Ritchie發明了C語言,用C語言重寫了Unix。
我們也可以用類似的方法來做, 用自己CPU上的匯編來寫操作系統,等到有一定規模了,我們再上面發明一個新的編程語言(就叫X語言吧),配上相關的編譯器,然后用X語言重寫。
當然,一個真正可用的操作系統有幾千萬行代碼是很正常的(雖然有很多代碼是驅動程序),這么大的代碼量, 不知道需要多少個人年,才能把它搞好,穩定下來。
到了應用層,生態系統最要命的事情出現了:
日常使用的所有軟件:Office 、瀏覽器、Photoshop、播放器、QQ、微信 ...... 都需要用X語言開發一遍。
程序員卷起袖子去開發的時候,發現日常編程用的軟件:Eclipse、 IDEA、VS Code、Tomcat、Nginx、Node.js、ES、MySQL、Kafka、Hadoop, Docker,Spring...... 全都沒有了!
只有重新開發一遍, 程序員寫代碼的時候會感覺無比痛苦:全世界優秀程序員這么多年來積累的優秀類庫,優秀框架全都用不了,所有的輪子都要從頭造, 累死人啊。
一夜回到解放前。
美帝的IT比我們早起步幾十年,如果我們還閉門造車,不去利用全世界的優秀成果, 那真是連美帝的尾燈都看不到了!
2
絕不能走上面的路, 一定得站在巨人的肩膀上,使用開源世界的成果。
比如Linux。
我們的CPU一定得支持Linux, 讓Linux先跑起來,保證一個最基本的生態, 這項工作雖然也不容易,但比從頭寫簡單多了。
剩下的事就是不停地移植軟件了。
先是編譯器,把gcc 移植過來,編譯成我們CPU的機器碼,讓偉大的C語言先跑起來, 為其他編譯器、解釋器、系統軟件打下基礎。
然后移植OpenJDK、Python解釋器、PHP解釋器、 JavaScript引擎...... 這些軟件都是C/C++寫的。
這時候那些跑在虛擬機上的工具(Eclipse、 IDEA、 VS Code、 Tomcat、 Spring等等)就能運行了 ,可以開工干活了 ——雖然可能會有這樣那樣的問題,慢慢解決吧!
這么一通搞下來,程序員使用Linux開發應該是可以了,普通用戶就不行了。
辦公軟件、 影音軟件、 圖形處理軟件、通信軟件...... 雖然逃脫不了移植的命運, 總之,那些底層需要用到匯編的軟件,哪怕用到一句匯編,都沒法運行, 因為我們CPU的匯編和別人的不一樣啊, 這樣的軟件不會少,除了移植,別無他法。
還有就是Linux上的軟件的可用性,穩定性,用戶體驗那肯定是比不上Windows。 發個騰訊官方出的QQ(Linux版),大家感受下。

對了, Linux上的游戲極少, 喜歡游戲的同學只能戒掉游戲了。
我相信,在不斷的移植和打磨中,Linux上的用戶體驗會越來越好, 這么發展下去,中國很有可能成為Linux桌面應用的第一大國。
但是,相比于Windows平臺,iOS平臺上全世界程序員開發出來的海量應用程序,我們肯定還是落后的。
3
閉關鎖國,從頭開始造輪子,結局將會非常慘, 這絕對不是我們要走的路。
我們必須要利用現在開源世界的優秀成果,和開源世界融為一體。
可惜的是,現在的PC生態被微軟和Intel主導, 移動生態被蘋果和Google主導,核心都是美帝的技術, 中國想要突破,不被卡脖子很難了。
機會就在下一次技術浪潮中,也許中國不能建立完全屬于自己的生態,但只要能做到能和美帝互相卡脖子,這就夠了。
如需轉載,請通過作者微信公眾號coderising獲取授權。