軟件傳奇Dennis M. Ritchie
文 / 佳琦
Dennis MacAlistair Ritchie,C 語言之父, 1 9 4 1 年 9 月 9 日出生于美國紐約。在技術圈里, 他常被稱為 DMR ( 這是他在貝爾實驗室的用戶名, 后來成為他常用的代號)。
DMR 曾在哈佛大學研習物理和應用數學,1967年進入貝爾實驗室,并任朗訊系統軟件研究部門領導人。1983年他和 Kenneth Lane Thompson 一同獲得了圖靈獎,以表彰他們對“研究發展了通用的操作系統理論,尤其是實現了 Unix 操作系統”的貢獻。1999年兩人又因創造發展C語言和 Unix 操作系統獲得了美國國家技術獎章。
DMR 的父親 Alistair E. Ritchie 是他的第一位人生導師。Alistair Ritchie 長期擔任貝爾實驗室科學家一職,在電路晶體管理論方面頗有造詣。在父親的影響下,DMR 在大學開始對計算機著迷,那時的計算機還是古老的打孔卡片設備。DMR 更加著迷于計算機處理的理論和實際問題,1968年 DMR 獲得數學博士學位的論文,正是計算機理論相關的《遞歸函數的層次》。
加入貝爾實驗室不久,DMR 就參與了 Multics 項目,負責多道處理機的 BCPL 語言和 GE650 的編譯器,它們都屬于 GECOS 系統。同樣的,他也寫了 ALTRAN 語言的代數編譯器,那是用于符號計算機的一種語言和系統。在工作中, DMR 遇到了對他職業生涯影響最大的人—— KenThompson。DMR 曾表示 Unix 大部分是 Ken 的工作。不同于 DMR 對理論的偏好,Ken 是一位電子發燒友,與 DMR 形成互補。當時貝爾實驗室在 Multics 上遭遇挫折,于是兩人在一臺小型機上重新開發了這個系統,并將其命名為 Unix。DMR 為 Ken 提供了扎實的理論支持,三年后,Unix 誕生。
Unix 風靡之前,將其移植到其他機器上總是會遇到麻煩,DMR 和 Ken 決定采用更為先進的程序語言來重新編寫 Unix,研發的任務交給了 DMR。于是,DMR 向 Ken 的B語言中加入數據類型和新的語法,創造了一種新語言——C。C語言也成為 Unix 的基礎,在其他領域得到廣泛應用:從應用程序到操作系統,從移動設備到超級計算機,都能看到C語言的應用。Stroustrup 編寫 C++ 語言時,也曾以C語言作為參考。
1973年,重新編寫的 Unix 上線,成為現代通用性操作系統。此后,DMR 與 Steve Johoson 合作成功地將這個操作系統移植到 Interdata 8/32上,這種方式也證明了 Unix 的可移植性,從此 Unix 快速傳播開來。這次移植還有更重大的意義:擺脫硬件束縛的開放系統由此誕生了。
完成了 Unix 和C語言之后,DMR 并未停止創新工作,他繼續發展了兩款軟件,包括1995年發布的 Plan 9 操作系統和1996年發布的 Inferno 操作系統以及 Limbo 語言。兩者均是基于他以前的工作上發展的。1978年 DMR 和 Brian W.Kernighian 合作出版的《The CProgramming Language》,成為C語言方面最權威的教材也是后來所有語言著作的范本。
如今,人們評價C語言時,總是會說,它是現代程序語言革命的起點,是最有效、最通用的編程語言,是使用最廣泛的編程語言之一。當人們評價 Unix 操作系統時,也總是會說,它是歷久彌新的操作系統,是信息社會的基石,不但是一種技術,更是一種文化。然而,它們的發明者 DMR 卻保持一貫的謙遜和低調,在貝爾實驗室的研究部,從事自己喜歡的研究工作,著書立說,潛心編程,對于自己取得的成就也從不傲功。曾有人評價 Unix 是繼晶體管以后第二個最重要發明,DMR 回應這種說法時言道:“就其受公眾矚目程度而言,Unix 的確是一項重要的發明。”他認為C語言雖然十分成功,但遲早會被其他語言所取代。
2011年10月9日,DMR 故于伯克利的家中,享年70歲。雖然他離世的消息在非 IT 領域并未引起太多的注意,但他取得的光輝成就在計算機的歷史上無法比擬。我們賴以運行其上的信息社會的基礎,有他一份重要的奠基。
來自: www.programmer.com.cn