無形之王的 C 語言之父
丹尼斯·里奇被世人尊稱為「無形之王的 C 語言之父」,他是計算機及網(wǎng)絡技術的奠定者,曾擔任朗訊科技公司貝爾實驗室下屬的計算機科學研究中心系統(tǒng)軟件研究部的主任一職。是為喬布斯等一眾 IT 巨擘提供肩膀的巨人。
雖然在2011 年 10 月期間他與喬布斯相繼離世,但他卻遠未像喬布斯那樣得到全球的追捧和悼念。丹尼斯·里奇對人類的貢獻,也相應的被大大低估。此時此刻,全世界幾十億人正在使用的幾百億件電子產(chǎn)品,里面的軟件最終都可以追溯到他的智力貢獻。
許多重要人物之所以成名,要么是因為其改變了歷史,要么是因為其創(chuàng)造了歷史,Dennis Ritchie 屬于后者。當我們中的大多數(shù)人還在姍姍學步的時候,他就開發(fā)了「C」語言——一種最有效、最通用的編程語言。
C 語言是使用最廣泛的語言之一,可以說,C 語言的誕生是現(xiàn)代程序語言革命的起點,是程序設計語言發(fā)展史中的一個里程碑。自 C 語言出現(xiàn)后,以 C 語言為根基的 C++、Java 和 C# 等面向?qū)ο笳Z言相繼誕生,并在各自領域大獲成功。但今天 C 語言依舊在系統(tǒng)編程、嵌入式編程等領域占據(jù)著統(tǒng)治地位。
Dennis Ritchie 還和 Ken Thompson 一起開發(fā)了 Unix 操作系統(tǒng),就是 OS??梢哉f:是他創(chuàng)造了 UNIX。
他從來沒有間斷過在計算機及其操作系統(tǒng)方面的工作。也因此,他所領導的研究小組開發(fā)出了 Plan 9 和 Inferno。
他的工作得到了很多計算機組織的公認和表獎,如:
美國計算機協(xié)會 (ACM) 授予的系統(tǒng)及語言杰出論文獎 (1974);
電氣和電子工程師協(xié)會 (IEEE) 的 Emmanuel Piore 獎 (1982);
貝爾實驗室特別人員獎 (1983);
美國計算機協(xié)會 (ACM) 的圖靈獎 (1983);
NEC 公司的 C&C 基金獎 (1989);
電氣和電子工程師協(xié)會 (IEEE) 的優(yōu)秀獎章 (Hamming Medal)(1990) 等等
1954 年,電氣工程師阿利斯泰爾·里奇(Alistair E. Ritchie),決定舉家從紐約州的布朗克斯維爾(Bronxville),搬到幾十公里以外的新澤西。這樣可以離他的工作單位"貝爾實驗室"更近一些。
13 歲的丹尼斯·里奇(Dennis Ritchie),就這樣隨著父親一起來到新澤西。那時,誰也沒有想到,這個文靜的少年將在這里待上一輩子,并且創(chuàng)造出改變世界的發(fā)明。
中學畢業(yè)后,丹尼斯·里奇聽從父親的建議,進入哈佛大學學習應用數(shù)學,直到拿到博士學位。他的第一份工作,是為軍方研制核武器,這并不符合他的志趣。1967 年,通過父親介紹,26 歲的他進入貝爾實驗室,從事剛剛興起的計算機研究。從此,他在新澤西老家一住就是 44 年,直到去世。
他在貝爾實驗室的第一個任務,是參與大項目 Multics,即開發(fā)一個前所未有的、可以多人使用的、同時運行多個程序的操作系統(tǒng)。該項目由貝爾實驗室、麻省理工學院和通用電氣公司三方聯(lián)合研制,但是由于設計過于復雜,遲遲拿不出成果,1969 年貝爾實驗室宣布退出。
第一個任務這樣無果而終,丹尼斯·里奇很不甘,但也無能為力。誰知過完了夏天,比他小兩歲的同事肯·湯普森(Ken Thompson)找上門,說借鑒 Multics 的設計思路,做了一個個人項目 Unix,問他有沒有興趣一起參與。丹尼斯·里奇立刻表示同意,于是兩人一起投入 Unix 的開發(fā)。肯·湯普森的專業(yè)是電子工程,丹尼斯·里奇專業(yè)是應用數(shù)學,正好互補。經(jīng)過日以繼夜的工作,1969 年圣誕節(jié)前,Unix 已經(jīng)可以初步運行了。
Unix 迅速在程序員中流傳,到了 80 年代,已經(jīng)成為主流操作系統(tǒng),演變成整個軟件工業(yè)的基礎,當代最主要的操作系統(tǒng)----Windows、MacOS 和 Linux----都與 Unix 有關。
丹尼斯·里奇對世界的貢獻還不止于此。Unix 最早是用不通用的機器語言編寫的,如果換一個型號的計算機,就必須重新編寫一遍。為了提高通用性和開發(fā)效率,丹尼斯·里奇決定發(fā)明一種新的計算機語言----C 語言。
C 語言的語法非常簡潔,對使用者的限制很少。丹尼斯·里奇編寫的教材《C 編程語言》總共只有 100 多頁,薄得難以置信。很多人都被它的簡潔性吸引,學習并使用 C 語言。直到今天,C 語言依然是世界上最重要的編程語言之一,"保持簡單"原則顯示了強大的生命力。
發(fā)明 Unix 和 C 語言,給丹尼斯·里奇帶來巨大的榮譽,他得到了 1983 年的圖靈獎、1990 年的漢明獎、1999 年的美國國家技術獎章。盡管功成名就,他依然住在新澤西,低調(diào)地生活,不太在媒體上曝光,終身沒有結(jié)婚。
退休以后,他過上了隱居生活,外界幾乎忘了他的存在。2011 年 10 月 12 日,共事 20 年的同事 Rob Pike 從加州到新澤西去拜訪他,才發(fā)現(xiàn)他已經(jīng)去世了。由于是獨居,無法知道準確的死亡時間。據(jù)他的兄弟透露,這幾年丹尼斯·里奇的健康狀況一直不好,他患有前列腺癌和心臟病。
新的算法還會不斷發(fā)展,部分歸功于多處理能力的增長,尤其是異構(gòu)處理器的發(fā)展。在這樣的環(huán)境下也需要新的操作系統(tǒng)結(jié)構(gòu)。但是,計算機的主要研究已經(jīng)從基礎的計算機科學轉(zhuǎn)向了應用領域,直接面向現(xiàn)實世界的行為。
我們知道有更多的丹尼斯·里奇成長起來,不過他們已經(jīng)不再主要從事丹尼斯曾經(jīng)努力研究過的基礎領域。在相當大的程度上,我們可以說他已經(jīng)完成了他所開創(chuàng)的事業(yè),并且啟發(fā)了與他同時代的許許多多人。
【整理匯編:州訊互聯(lián)】