国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
丹尼斯·里奇

      C語(yǔ)言之父丹尼斯·麥卡利斯泰爾·里奇(Dennis MacAlistair Ritchie,1941年9月9日-),,出生于美國(guó)紐約。他是一位美國(guó)計(jì)算機(jī)科學(xué)家,他對(duì)ALTRAN、B語(yǔ)言、BCPL、C語(yǔ)言、Multics和Unix的發(fā)展做出了巨大貢獻(xiàn)。

丹尼斯·里奇

      里奇在哈佛大學(xué)學(xué)習(xí)物理學(xué)和應(yīng)用數(shù)學(xué)畢業(yè),1967年他進(jìn)入貝爾實(shí)驗(yàn)室,目前他是朗訊技術(shù)公司系統(tǒng)軟件研究部門(mén)的領(lǐng)導(dǎo)人。1983年他與肯·湯普遜一起獲得了圖靈獎(jiǎng)。理由是他們“研究發(fā)展了通用的操作系統(tǒng)理論,尤其是實(shí)現(xiàn)了UNIX操作系統(tǒng)”。1999年兩人為發(fā)展C語(yǔ)言和Unix操作系統(tǒng)一起獲得了美國(guó)國(guó)家科技獎(jiǎng)?wù)隆?/p>

      維基百科資料顯示,美國(guó)著名計(jì)算機(jī)專家、C語(yǔ)言發(fā)明人之一丹尼斯·里奇(Dennis Ritchie )已于10月9日去世,享年70歲。里奇生于1941年9月9日。他發(fā)明了包括C語(yǔ)言在內(nèi)的多種編程語(yǔ)言,并研發(fā)了Multics和Unix等操作系統(tǒng)。1983年,里奇獲得圖靈獎(jiǎng)。

      當(dāng)有人問(wèn)里奇為什么使用他使用的方式開(kāi)發(fā)了C語(yǔ)言的時(shí)候,里奇回答說(shuō)“這樣做看上去很好”,他說(shuō)任何人在同一地方、同一時(shí)間會(huì)像他那樣做的。但是其他許多人認(rèn)為這只不過(guò)反映出了里奇的謙虛。C++的開(kāi)發(fā)者和設(shè)計(jì)師、里奇在貝爾實(shí)驗(yàn)室的同事比雅尼·斯特勞斯特魯普說(shuō):“假如里奇決定在那十年里將他的精力花費(fèi)在稀奇古怪的數(shù)學(xué)上,那么Unix將胎死腹中?!?/p>

      事實(shí)上,丹尼斯·里奇與肯·湯普遜兩人發(fā)展了C語(yǔ)言,同時(shí)發(fā)展了Unix操作系統(tǒng),在電腦工業(yè)史上占有重要的席位。至今為止C語(yǔ)言在發(fā)展軟件和操作系統(tǒng)時(shí)依然是一個(gè)非常常用的電腦語(yǔ)言,它對(duì)許多現(xiàn)代的編程語(yǔ)言如C++、C#、Objective-C、Java和JavaScript擁有極大的影響。在操作系統(tǒng)方面Unix也具有極大的影響:今天市場(chǎng)上有許多不同的Unix方言如AIX、Solaris、Mac OS X和BSD等,以及與Unix非常相似的系統(tǒng)如Minix和非常普及的Linux操作系統(tǒng)。甚至其Microsoft Windows操作系統(tǒng)與Unix相競(jìng)爭(zhēng)的微軟為他們的用戶和開(kāi)發(fā)者提供了與Unix相容的工具和C語(yǔ)言編譯器。

      里奇還參加發(fā)展了Unix和C語(yǔ)言的兩個(gè)后繼軟件:九號(hào)計(jì)劃和Inferno操作系統(tǒng)以及Limbo語(yǔ)言。兩者均是基于他以前的工作上發(fā)展的。

著作

《C程序設(shè)計(jì)語(yǔ)言》

《Unix Programmer's Manual》

表彰

1974年,美國(guó)計(jì)算機(jī)協(xié)會(huì)(ACM)授予他系統(tǒng)及語(yǔ)言杰出論文獎(jiǎng)。
1982年,電氣和電子工程師協(xié)會(huì)(IEEE)授予他EmmanuelPiore獎(jiǎng)。
1983年,他獲得了貝爾實(shí)驗(yàn)室特別人員獎(jiǎng)和
1983年,還獲得美國(guó)計(jì)算機(jī)協(xié)會(huì)頒發(fā)的圖靈獎(jiǎng)(又稱計(jì)算機(jī)界的諾貝爾獎(jiǎng))。
1989年,他獲得了NEC公司的C&C基金獎(jiǎng)。
1990年,電氣和電子工程師協(xié)會(huì)又給他頒發(fā)了優(yōu)秀獎(jiǎng)?wù)拢℉ammingMedal)
1999年,他和同為UNIX之父的KenThompson獲得美國(guó)國(guó)家技術(shù)獎(jiǎng)?wù)?/p>

大師的修煉之道

     Ritchie生于1941年9月9日的紐約Bronxville,獲得學(xué)士學(xué)位并且獲得哈佛大學(xué)博士學(xué)位,在哈佛,先是學(xué)習(xí)物理,而后轉(zhuǎn)向應(yīng)用數(shù)學(xué)。正是在這時(shí)候,一個(gè)偶然的機(jī)會(huì)改變了他一生的選擇。

     大約1960年,Ritchie聽(tīng)取一些非課程類的計(jì)算機(jī)講座后,開(kāi)始對(duì)計(jì)算機(jī)著迷,并選擇了一學(xué)期正規(guī)(介紹性的)課程。第一部分是模擬計(jì)算機(jī),后面是關(guān)于打孔卡片設(shè)備的,然后才是關(guān)于真正的數(shù)字式計(jì)算機(jī)的,并為UnivacI號(hào)機(jī)準(zhǔn)備了一個(gè)程序。當(dāng)時(shí)他是一個(gè)主修物理的學(xué)生,但是更加著迷于計(jì)算機(jī)處理的理論和實(shí)際問(wèn)題。因此,他的畢業(yè)論文大部分是理論方面的,例如1968年獲得數(shù)學(xué)博士時(shí)的論文《遞歸函數(shù)的的層次》;但是他也開(kāi)始投入更大精力到實(shí)踐方面,例如,作為助手,在IBM7049計(jì)算機(jī)上用了三年時(shí)間為同一個(gè)介紹性課程做后續(xù)版本。

      在Ritchie的成長(zhǎng)歷程中,有兩個(gè)人對(duì)他的影響最大,一個(gè)是他父親Alistair E.Ritchie,而另一個(gè)是他的摯友,同為UNIX發(fā)明人的Ken Thompson。

      作為一門(mén)偉大的語(yǔ)言,C語(yǔ)言的發(fā)展頗為有趣,C語(yǔ)言是借助UNIX操作系統(tǒng)的翅膀而起飛的,UNIX操作系統(tǒng)也由于C而得以快速移植落地生根,兩者相輔相承,成就了軟件史上最精彩的一幕。
1967年,Dennis參與的第一個(gè)項(xiàng)目是Multics,UNIX的誕生和Multics有一定淵源的。Multics是一個(gè)操作系統(tǒng)項(xiàng)目,被設(shè)計(jì)運(yùn)行在GE-5大型主機(jī)上,但是由于整個(gè)目標(biāo)過(guò)于龐大,糅合了太多的特性,Multics雖然發(fā)布了一些產(chǎn)品,但是性能都很低,最終以失敗而告終。

      AT&T最終撤出了投入Multics項(xiàng)目的資源,其中一個(gè)開(kāi)發(fā)者,KenThompson則繼續(xù)為GE-5開(kāi)發(fā)軟件,并最終編寫(xiě)了一個(gè)太空旅行游戲。經(jīng)過(guò)實(shí)際運(yùn)行后,他發(fā)現(xiàn)游戲速度很慢而且耗費(fèi)昂貴。在DennisRitchie的幫助下,Thompson用PDP-7的匯編語(yǔ)言重寫(xiě)了這個(gè)游戲,并使其在DECPDP-7上運(yùn)行起來(lái)。這次經(jīng)歷加上Multics項(xiàng)目的經(jīng)驗(yàn),促使Thompson開(kāi)始了一個(gè)DECPDP-7上的新操作系統(tǒng)項(xiàng)目。Thompson和Ritchie領(lǐng)導(dǎo)一組開(kāi)發(fā)者,開(kāi)發(fā)了一個(gè)新的多任務(wù)操作系統(tǒng),這個(gè)項(xiàng)目被稱為UNICS(UniplexedInformationandComputingSystem),因?yàn)樗梢灾С滞瑫r(shí)的多用戶操作,也就是后來(lái)的UNIX。

      最初的UNIX是用匯編語(yǔ)言編寫(xiě)的,一些應(yīng)用是由叫做B語(yǔ)言的解釋型語(yǔ)言和匯編語(yǔ)言混合編寫(xiě)的,在移植的過(guò)程中遇到不少麻煩。早在對(duì)Multics項(xiàng)目調(diào)整過(guò)程中,就迫切需要一門(mén)高級(jí)計(jì)算機(jī)語(yǔ)言做工具,可供選擇的范圍僅僅是PL/I、Fortran等,經(jīng)過(guò)一一實(shí)驗(yàn),不得不放棄,最后Ken決定設(shè)計(jì)一種自己的語(yǔ)言,將BCPL語(yǔ)言壓縮到僅有8KB的內(nèi)存中,B語(yǔ)言誕生了。

      B語(yǔ)言也并非無(wú)懈可擊,由于自身局限性,在設(shè)計(jì)UNIX操作系統(tǒng)時(shí)讓設(shè)計(jì)者吃了不少苦頭,為了解決程序的可移植性問(wèn)題,他們決定對(duì)它進(jìn)行簡(jiǎn)單改進(jìn),形成NB語(yǔ)言。但NB在UNIX的移植方面依然不盡人意,此后Dennis又對(duì)NB語(yǔ)言做了改進(jìn),C語(yǔ)言誕生。

     這是個(gè)劃時(shí)代的動(dòng)作,C語(yǔ)言讓UNIX能夠輕易地被移植到各種不同的機(jī)器上,為UNIX的迅速普及立下汗馬功勞。
      1977年Dennis發(fā)表了不依賴于具體機(jī)器系統(tǒng)的C語(yǔ)言編譯文本——《可移植的C語(yǔ)言編譯程序》,UNIX操作系統(tǒng)得已推廣的另一項(xiàng)有利舉措是標(biāo)準(zhǔn)化。種種得力舉措,從而使C語(yǔ)言成為目前世界上流行最廣泛的高級(jí)程序設(shè)計(jì)語(yǔ)言之一。

      1978年BrianW.Kernighan和DennisM.Ritchie出版的名著《C程序設(shè)計(jì)語(yǔ)言          (TheCProgrammingLanguage)》,常被人們稱為K&R版C教材或“白皮書(shū)”,為C語(yǔ)言的推廣普及立下汗馬功勞。
      1988年,美國(guó)國(guó)家標(biāo)準(zhǔn)研究所(ANSI)為C語(yǔ)言制定了一套ANSI標(biāo)準(zhǔn)。隨著標(biāo)準(zhǔn)化的深入,C語(yǔ)言發(fā)展迅速,成為最受歡迎的語(yǔ)言之一。

      而Dennis由于C語(yǔ)言和UNIX兩項(xiàng)成就,成為許多編程愛(ài)好者膜拜的對(duì)象。也正因此,和Ken二人于1983年獲得有計(jì)算機(jī)界諾貝爾獎(jiǎng)的ACM圖靈獎(jiǎng)。

      C語(yǔ)言最初被用于UNIX的編寫(xiě),后來(lái)它被眾多程序員狂熱擁戴,成為使用最廣泛的系統(tǒng)開(kāi)發(fā)語(yǔ)言,這卻是Dennis本人也沒(méi)有預(yù)料到的。
現(xiàn)在,C語(yǔ)言,作為一種通用的程序設(shè)計(jì)語(yǔ)言,它主要用來(lái)進(jìn)行系統(tǒng)程序設(shè)計(jì)。具有高效、靈活、功能豐富、表達(dá)力強(qiáng)和移植性好等的特點(diǎn),在程序員中備受青睞。C語(yǔ)言廣泛應(yīng)用于不同的操作系統(tǒng),例如UNIX、MS-DOS、MicrosoftWindows及Linux等。C語(yǔ)言是一種面向過(guò)程的語(yǔ)言,同時(shí)具有高級(jí)語(yǔ)言和匯編語(yǔ)言的優(yōu)點(diǎn)。在C語(yǔ)言的基礎(chǔ)上發(fā)展起來(lái)的有支持多種程序設(shè)計(jì)風(fēng)格的C++語(yǔ)言,網(wǎng)絡(luò)上廣泛使用的Java、JavaScript,微軟的C#等。

      而UNIX作為一種一種多用戶、多任務(wù)的通用操作系統(tǒng),已發(fā)展成為當(dāng)前使用普遍、影響深遠(yuǎn)的工業(yè)界主流的操作系統(tǒng),成為重要的企業(yè)級(jí)操作平臺(tái),廣泛運(yùn)行于PC、小型機(jī)等各種環(huán)境,用于大型信息系統(tǒng)的關(guān)鍵業(yè)務(wù)服務(wù),如數(shù)據(jù)庫(kù)和Internet主機(jī)。

      在技術(shù)方面,曾有人問(wèn)Dennis,C語(yǔ)言設(shè)計(jì)目標(biāo)有沒(méi)有隨著時(shí)間推移而改變?如果沒(méi)變,為什么?他說(shuō):我個(gè)人的目標(biāo)這些年來(lái)一直未變,并且,我不是1989和1999年標(biāo)準(zhǔn)的主要推動(dòng)者。無(wú)論1989年ANSI標(biāo)準(zhǔn)還是ISO標(biāo)準(zhǔn)都使事情制度化了,這些條文比我最初寫(xiě)的文檔要好;最需要加以說(shuō)明的是我早先關(guān)于函數(shù)原型做的工作,對(duì)C++語(yǔ)言的影響是非常重要的一個(gè)影響。

      而在關(guān)于眾多計(jì)算機(jī)語(yǔ)言優(yōu)劣性能的激烈辯論中,始終處在中心位置的C語(yǔ)言作者Dennis卻顯得很平靜。西班牙的一位大學(xué)生曾經(jīng)問(wèn)過(guò)他類似的問(wèn)題:如果UNIX被選為過(guò)去和當(dāng)前的操作系統(tǒng),盡管過(guò)去幾年出現(xiàn)了一些面向?qū)ο蟮恼Z(yǔ)言,毫無(wú)疑問(wèn)C也將被認(rèn)為是“唯一的語(yǔ)言”。你怎么看待C++和Java,以及C和C++程序員之間在UseNet上經(jīng)常發(fā)生的激烈爭(zhēng)論呢?

      他說(shuō):C++的很大一部分得宜于C。因?yàn)镃早在C++出現(xiàn)之前就已經(jīng)具有了非常好的兼容性,所以C++才可以采用C作為建構(gòu)自身的基礎(chǔ)并使用它來(lái)開(kāi)發(fā)自己的編譯器。C被設(shè)計(jì)成為一種便攜式匯編語(yǔ)言,對(duì)于這一特性人們褒貶不一,C++則試圖把編程方法提高到面向?qū)ο筮@種更抽象的層次上來(lái)。從最近形成的標(biāo)準(zhǔn)來(lái)看,二者共同的缺點(diǎn)是:帶有過(guò)多的裝飾和附屬物。同樣的,它們都采用了相同的編程思想,都試圖按照真正的需求來(lái)編寫(xiě)代碼。Java顯然是C++的改進(jìn)版本。它砍掉了C中的指針操作部分,引入了生成獨(dú)立于機(jī)器的目標(biāo)文件這種編程思想(雖然這個(gè)思想并不是很新的,但是也許直到現(xiàn)在它才真正可行了)。既然Sun和Microsoft公司(它的產(chǎn)品同樣的有過(guò)多的裝飾附件)已經(jīng)把Java作為它們之間競(jìng)爭(zhēng)的工具,誰(shuí)也難以預(yù)料事態(tài)將向何處發(fā)展。

      C語(yǔ)言是Dennis的得意這筆,對(duì)于這一筆,他看得非常平靜,當(dāng)問(wèn)到他對(duì)C語(yǔ)言的將來(lái)做一下預(yù)測(cè)時(shí),他的回答十分簡(jiǎn)潔:C語(yǔ)言正在被C++,也可能是Java所替代,也可能是更高級(jí)的腳本語(yǔ)言。當(dāng)然,它在關(guān)于系統(tǒng)一類設(shè)計(jì)中還是相當(dāng)強(qiáng)的工具。

      問(wèn):您是怎樣發(fā)明C語(yǔ)言的?發(fā)明的過(guò)程是什么樣子的。它對(duì)您的生活和研究有什么影響嗎?
DMR:公正地說(shuō),發(fā)明C語(yǔ)言的目的是:為了寫(xiě)編譯器和語(yǔ)言設(shè)計(jì),為了更易于編寫(xiě)UNIX操作系統(tǒng)程序,我們做的一個(gè)可以在小型計(jì)算機(jī)上使用的工具。UNIX做的比較好,并且PC開(kāi)始相當(dāng)普遍,由于C語(yǔ)言在UNIX上的很好地應(yīng)用,使得用它來(lái)寫(xiě)應(yīng)用程序和操作系統(tǒng)迅速增長(zhǎng)起來(lái)。因此,對(duì)我來(lái)說(shuō),C語(yǔ)言的確非常重要。

      問(wèn):您覺(jué)得C語(yǔ)言和C++有什么不同嗎?
DMR:多年以來(lái),C和C++,已經(jīng)是兩種不同的語(yǔ)言了;Stroustrup先生汲取了C語(yǔ)言語(yǔ)法和潛在的語(yǔ)義學(xué)中的許多東西,形成了C++語(yǔ)言。在一些交叉領(lǐng)域,標(biāo)準(zhǔn)委員會(huì)盡量使兩種語(yǔ)言兼容。
問(wèn):您覺(jué)得計(jì)算機(jī)語(yǔ)言和我們?nèi)祟惖恼Z(yǔ)言有什么不同呢?
DMR:計(jì)算機(jī)語(yǔ)言更加正式和明確,有統(tǒng)一的規(guī)則,當(dāng)然,它們都是經(jīng)過(guò)設(shè)計(jì)的。人類語(yǔ)言有語(yǔ)法,但相對(duì)來(lái)說(shuō)不很正式,有些規(guī)則可以打破,當(dāng)然,它們有不同的目的——為了同人交流而不是同機(jī)器交流。

      問(wèn):您對(duì)面向?qū)ο笫窃鯓永斫獾模克遣皇且环N好的可接受的編程思考方式?有沒(méi)有學(xué)習(xí)OO必須的有用的工具?
DMR:我看過(guò)OO的東西但我現(xiàn)在還不是OO迷。這種思想是非常好的,也即是通過(guò)隱藏任務(wù)的執(zhí)行來(lái)定義界面,但是它可能做得有點(diǎn)過(guò)火;它以很難發(fā)現(xiàn)工作本質(zhì)的程序終結(jié);它的所有的東西就是界面。

     問(wèn):您能對(duì)IT的將來(lái)做一下預(yù)測(cè)嗎?將來(lái)我們最有可能用什么語(yǔ)言?
DMR:我對(duì)預(yù)測(cè)不在行,但是很明顯,人們正在從象C語(yǔ)言之類的直接編譯型語(yǔ)言,轉(zhuǎn)換到注重解釋性的語(yǔ)言,象某些腳本語(yǔ)言。

C語(yǔ)言之父Dennis Ritchie逝世

     令人悲傷的消息不止一個(gè),現(xiàn)代計(jì)算機(jī)操作系統(tǒng) Unix 之父、C 語(yǔ)言之父 Dennis Ritchie 辭世,IT 產(chǎn)業(yè)連續(xù)失去了兩名重要的人物。根據(jù) Ritchie 的前同事 Rob Pike 在 Google+ 透露的消息,Ritchie 10 月 9 日病逝,享年 70 歲。

     1941 年,Ritchie 出生在紐約 Bronxville,后來(lái)到哈佛大學(xué)學(xué)習(xí)應(yīng)用數(shù)學(xué)與物理學(xué)畢業(yè),1967 年他進(jìn)入貝爾實(shí)驗(yàn)室。1968 年,他遇到一生中重要的伙伴 Kenneth Thompson。和 Ritchie 背景不一樣,在晶體管還是一個(gè)新事物的時(shí)候,Thompson 就已經(jīng)是電子發(fā)燒友。Ritchie 的理論能力與 Thompson 的動(dòng)手能力正好形成互補(bǔ),他們兩人后來(lái)組成了優(yōu)秀的團(tuán)隊(duì)。

     在當(dāng)時(shí),兩人都喜歡“研究計(jì)算機(jī)科學(xué)上有趣的問(wèn)題”,決定開(kāi)發(fā)一個(gè)操作系統(tǒng),但當(dāng)時(shí)貝爾實(shí)驗(yàn)室剛在 Multics 上遭遇挫折,因此不是尋找官方支持的好時(shí)間。Thompson 沒(méi)有放棄,他發(fā)現(xiàn)一臺(tái)廢棄的 PDP-7 小型機(jī),但還能用。于是,兩人開(kāi)始在這臺(tái)小型機(jī)上工作,后來(lái)開(kāi)發(fā)工作轉(zhuǎn)移到一臺(tái) PDP 11 去。Unix 的開(kāi)發(fā)主要由 Thompson 完成,但 Ritchie 在開(kāi)發(fā)過(guò)程中提供了理論上的支持,確保開(kāi)發(fā)過(guò)程的順利。經(jīng)過(guò) 3 年努力,第一版 Unix 發(fā)布,成為貝爾實(shí)驗(yàn)室最重要的發(fā)明之一。

     盡管 Unix 在發(fā)布后受到同僚的歡迎,但 Ritchie 和 Thompson 在嘗試把應(yīng)用程序轉(zhuǎn)移到其它機(jī)器的時(shí)候,出現(xiàn)報(bào)錯(cuò)的情況,于是他們決定開(kāi)發(fā)出一個(gè)可移植到其它機(jī)器上的操作系統(tǒng),然后在那個(gè)系統(tǒng)下運(yùn)行自己的應(yīng)用程序。在經(jīng)過(guò)斟酌之后,他們決定采用更為高級(jí)的程序語(yǔ)言來(lái)重新編寫(xiě) Unix。但這樣的語(yǔ)言當(dāng)時(shí)還沒(méi)出現(xiàn),于是研發(fā)任務(wù)交給了 Ritchie,他在 B 語(yǔ)言的基礎(chǔ)上,發(fā)明了 C 語(yǔ)言。1973 年,重新編寫(xiě)的 Unix 上線,真正成為現(xiàn)代通用性操作系統(tǒng)。而 C語(yǔ)言,歷經(jīng)多年,長(zhǎng)久不衰,至今依然是最流行的程序語(yǔ)言之一。

     基于在 Unix 操作系統(tǒng)方面的卓越貢獻(xiàn),Ritchie 于 1983 年和 Ken Thompson 一同獲得了圖靈獎(jiǎng)(Turing Award),并在 1998 年克林頓時(shí)代獲得了美國(guó)國(guó)家技術(shù)獎(jiǎng)(the National Medal of Technology)。

      Ritchie 與 Thompson,是 IT 產(chǎn)業(yè)蠻荒時(shí)代的英雄。基于優(yōu)秀的科學(xué)素質(zhì)與開(kāi)闊的視野,他們克服艱難,完成各種開(kāi)拓性的工作,他們的工作成果成為眾多后來(lái)者發(fā)展的基石。致敬!

  “C語(yǔ)言之父”也是“黑客之父”


  由于C語(yǔ)言和Unix兩項(xiàng)成就,里奇成為許多編程愛(ài)好者膜拜的對(duì)象。里奇在1978年出版的《C程序設(shè)計(jì)語(yǔ)言》被程序員們稱為“白皮書(shū)”,獲得狂熱擁戴。
  然而,由于C語(yǔ)言的簡(jiǎn)潔和高效,也成為入侵他人電腦的利器之一。里奇因此被諸多電腦黑客尊為導(dǎo)師,雖然里奇本人并不認(rèn)可這一說(shuō)法。
  在Unix研發(fā)成功后不久,安裝了這一程序的PDP-11被放在貝爾實(shí)驗(yàn)室供大家使用。有一天,大家發(fā)現(xiàn)兩位創(chuàng)始人總是可以得到最高的權(quán)限輕松進(jìn)入他們的帳戶,在貝爾實(shí)驗(yàn)室這種高人云集的地方,這簡(jiǎn)直是太不能容忍的事情了。于是,若干憤懣的同事仔細(xì)分析Unix代碼,找到后門(mén),修改后再重新編譯整個(gè) Unix程序。當(dāng)所有人都以為這個(gè)世界應(yīng)該從此清靜了的時(shí)候,卻發(fā)現(xiàn)他們的帳戶權(quán)限還是很容易泄露。直到很多年后,肯和里奇才道出其中的原委原來(lái)代碼里確實(shí)存在后門(mén),不過(guò)并不在Unix代碼中,而是藏在編譯Unix的編譯器里。

  為玩游戲研成C語(yǔ)言

  作為一門(mén)偉大的編程語(yǔ)言,C語(yǔ)言是借助Unix操作系統(tǒng)的翅膀而起飛的,Unix操作系統(tǒng)也由于C語(yǔ)言的存在而得以快速落地生根,兩者相輔相成,成就了軟件史上最精彩的一幕。
  不可思議的是,當(dāng)初Unix這個(gè)操作系統(tǒng)的誕生,并不是為了推向市場(chǎng),甚至不是為了讓更多人使用,而僅僅是作者為了方便自己使用,而且初衷是為了能更流暢地玩游戲。連Unix這個(gè)別扭的名字,也是對(duì)早期一個(gè)名為Multics操作系統(tǒng)開(kāi)玩笑的稱呼。
  1967年,里奇參與的第一個(gè)項(xiàng)目是Multics,這是一個(gè)操作系統(tǒng)項(xiàng)目,被設(shè)計(jì)在大型計(jì)算機(jī)主機(jī)上運(yùn)行,但是由于整個(gè)目標(biāo)過(guò)于龐大,糅合了太多的特性,Multics的性能很低,最終以失敗而告終。Multics項(xiàng)目的開(kāi)發(fā)者之一肯·湯普遜則繼續(xù)為GE-5開(kāi)發(fā)軟件,并最終編寫(xiě)了一個(gè)新操作系統(tǒng)項(xiàng)目,能夠支持同時(shí)的多用戶操作,也就是后來(lái)的Unix。
  在不經(jīng)意間,奇跡誕生了,由于Unix諸多優(yōu)點(diǎn),人們將它稱為軟件中的瑞士軍刀。這再一次驗(yàn)證了IT業(yè)的創(chuàng)新往往是興趣,而不是大把大把的金錢(qián)使然。
  最初的Unix是用匯編語(yǔ)言編寫(xiě)的,一些應(yīng)用是由叫做B語(yǔ)言的解釋型語(yǔ)言和匯編語(yǔ)言混合編寫(xiě)的,在移植的過(guò)程中遇到不少麻煩。早在對(duì)Multics項(xiàng)目調(diào)整過(guò)程中,就迫切需要一門(mén)高級(jí)計(jì)算機(jī)語(yǔ)言做工具,為了解決程序的可移植性問(wèn)題,肯·湯普遜和丹尼斯·里奇決定對(duì)它進(jìn)行簡(jiǎn)單改進(jìn),形成NB語(yǔ)言。但NB在 Unix的移植方面依然不盡人意,此后里奇又對(duì)NB語(yǔ)言做了改進(jìn),C語(yǔ)言誕生。
  這被計(jì)算機(jī)界認(rèn)為是一個(gè)劃時(shí)代的動(dòng)作,C語(yǔ)言讓Unix能夠輕易地被移植到各種不同的機(jī)器上,為Unix的迅速普及立下汗馬功勞。(記者 沈衍琪 )《北京日?qǐng)?bào)》

      “史蒂夫·喬布斯上周去世引發(fā)了巨大的反響,這當(dāng)然合情合理。即便影響實(shí)際上更為廣泛,丹尼斯卻不為公眾所知”,羅伯·派克說(shuō)。羅伯是一名在Google工作的程序員,作為業(yè)界的傳奇性人物,曾經(jīng)與里奇在著名的貝爾實(shí)驗(yàn)室共事20年。

      周三晚間,派克在Google+上發(fā)表消息稱,在與病魔進(jìn)行長(zhǎng)久的抗?fàn)幒?,里奇于上周末在新澤西的家中溘然長(zhǎng)逝。雖然在技術(shù)圈內(nèi)引起大量反響,但在主流媒體上,里奇卻沒(méi)有得到同巨大影響相稱的悼念。丹尼斯·里奇作為C語(yǔ)言之父,和貝爾實(shí)驗(yàn)室資深研究員肯·湯姆森一起使用C語(yǔ)言開(kāi)發(fā)了Unix,當(dāng)今世界大量依賴的操作系統(tǒng),其中包括史蒂夫·喬布斯治下的蘋(píng)果帝國(guó)。

      “現(xiàn)下互聯(lián)網(wǎng)基本都在用這兩樣?xùn)|西:C語(yǔ)言和UNIX”,派克對(duì)《連線》雜志稱,“瀏覽器是用C語(yǔ)言寫(xiě)的。UNIX的內(nèi)核——基本上是因特網(wǎng)運(yùn)作的基礎(chǔ)——也是用C寫(xiě)的。Web服務(wù)器也是用C語(yǔ)言寫(xiě)的,如果不是的話,那就是用Java或者C++寫(xiě)的,兩者都是C語(yǔ)言的派生;要不就是Python或者Ruby,用C語(yǔ)言實(shí)現(xiàn)的。然后我?guī)缀醺冶WC,運(yùn)行這些程序的網(wǎng)絡(luò)硬件,是用C語(yǔ)言開(kāi)發(fā)的軟件驅(qū)動(dòng)的?!?/p>

      “幾乎很難夸大丹尼斯在信息經(jīng)濟(jì)基礎(chǔ)設(shè)施方面無(wú)所不在的影響力。”

       他補(bǔ)充說(shuō),Windows曾經(jīng)也是用C語(yǔ)言編寫(xiě),而UNIX同時(shí)也支撐了蘋(píng)果桌面操作系統(tǒng)Mac OS X,以及iPhone與iPad的操作系統(tǒng)iOS?!叭绻f(shuō)喬布斯是臺(tái)前之王,那里奇就是幕后之王?!盡IT電氣工程與計(jì)算機(jī)系教授Martin Rinard如此評(píng)價(jià)道。Rinard也是計(jì)算機(jī)科學(xué)與人工智能實(shí)驗(yàn)室的成員。

       “喬布斯的過(guò)人之處在于其品位獨(dú)特,打造人們?yōu)橹圆⒁俗⒛康漠a(chǎn)品。而里奇卻擅長(zhǎng)于開(kāi)發(fā)一些技術(shù)人員使用的基礎(chǔ)設(shè)施,天天被人們使用卻不為人知?!?/p>

從B語(yǔ)言到C語(yǔ)言

      為了更好開(kāi)發(fā)UNIX,丹尼斯·里奇而發(fā)明了C語(yǔ)言。最初的UNIX內(nèi)核使用匯編語(yǔ)言編寫(xiě),之后他們很快決定要用一種高級(jí)語(yǔ)言,讓他們更好的駕馭操作系統(tǒng)中的復(fù)雜數(shù)據(jù)。1970年左右,他們嘗試使用Fortran,不過(guò)沒(méi)有達(dá)到預(yù)期目標(biāo)。接著,在湯姆森創(chuàng)立的B語(yǔ)言基礎(chǔ)上,里奇提出了一門(mén)新語(yǔ)言。

     不管你是從哪里聽(tīng)來(lái)的消息,B語(yǔ)言得名于湯姆森的妻子Bonnie,抑或是BCPL,一門(mén)劍橋于60年代中期開(kāi)發(fā)的語(yǔ)言。

     B語(yǔ)言是一種解釋性語(yǔ)言——意味著它由一個(gè)運(yùn)行于CPU之上的中間件解釋執(zhí)行——而C卻是一門(mén)編譯語(yǔ)言。它被翻譯成機(jī)器代碼,在CPU上直接執(zhí)行。即便如此,C當(dāng)時(shí)被認(rèn)為是一門(mén)高級(jí)語(yǔ)言。C語(yǔ)言提供了里奇和湯姆森想要的靈活性,卻也很快。

      C語(yǔ)言的第一個(gè)版本和現(xiàn)在的樣子相差不太多,相對(duì)簡(jiǎn)單點(diǎn)。它可以自定義數(shù)據(jù)結(jié)構(gòu)和類型并聲明變量,里奇和湯姆森就是用它編寫(xiě)了UNIX新內(nèi)核?!八麄儼l(fā)明了C來(lái)開(kāi)發(fā)程序”,十年之后加入貝爾實(shí)驗(yàn)室的派克說(shuō),“而那個(gè)程序就是UNIX內(nèi)核?!?/p>

      關(guān)于里奇一直流傳的一個(gè)笑話是:C語(yǔ)言同時(shí)擁有了“匯編語(yǔ)言的強(qiáng)大能力以及...匯編語(yǔ)言的便利性”。換句話 說(shuō),他承認(rèn)C語(yǔ)言并不完美,并且十分接近硬件層次。如今C語(yǔ)言被認(rèn)為是一門(mén)低級(jí)語(yǔ)言而不是高級(jí)語(yǔ)言。不過(guò)這個(gè)笑話并不公平。C語(yǔ)言提供了真正的數(shù)據(jù)結(jié)構(gòu)概念,從這個(gè)角度來(lái)說(shuō)已經(jīng)足夠高級(jí)了。

     “當(dāng)你在編寫(xiě)一個(gè)大型程序——比如UNIX——你必須管理好各種各樣模塊之間的交互:所有用戶、文件系統(tǒng)、磁盤(pán)、程序執(zhí)行等等。而有效的管理則需要良好的數(shù)據(jù)表示,這就是所謂的數(shù)據(jù)結(jié)構(gòu)”,派克說(shuō)。

      “在沒(méi)有數(shù)據(jù)結(jié)構(gòu)組織的情況下,編寫(xiě)一個(gè)與UNIX一樣一致和優(yōu)雅的內(nèi)核基本上是不可能的。需要一個(gè)機(jī)制組織好數(shù)據(jù),而Fortran卻不擅長(zhǎng)于此?!?/p>

       在那個(gè)時(shí)候,寫(xiě)一個(gè)操作系統(tǒng)并不多見(jiàn),這也給了里奇和湯姆森機(jī)會(huì),在70年代末把操作系統(tǒng)移植到其它平臺(tái)?!皬拇薝NIX洪水之門(mén)被打開(kāi)”,派克說(shuō),“這全都多虧有了C語(yǔ)言?!?/p>

蘋(píng)果、微軟及其他

       與此同時(shí),C語(yǔ)言也開(kāi)始傳播到全世界,從貝爾實(shí)驗(yàn)室到全世界的大學(xué),也到了微軟,一個(gè)在80年代異軍突起的軟件公司?!癈語(yǔ)言的開(kāi)發(fā)是一個(gè)重大的飛躍,是個(gè)很好的折衷...C語(yǔ)言達(dá)到了完美的平衡,讓你在較高層次高效率開(kāi)發(fā)的同時(shí),卻不失去對(duì)每處細(xì)節(jié)的控制”,NVIDIA和貝爾的首席科學(xué)家兼斯坦福大學(xué)工程系教授Bill Dally說(shuō)?!八鼮橹髷?shù)十年來(lái)軟件開(kāi)發(fā)定下了基調(diào)?!?/p>

      正如派克指出的那樣,C語(yǔ)言內(nèi)置的數(shù)據(jù)結(jié)構(gòu)后來(lái)發(fā)展出面向?qū)ο蠓妒?,被現(xiàn)代編程語(yǔ)言如C++和Java大量采用。

       1973年,里奇發(fā)表了關(guān)于這門(mén)語(yǔ)言的論文,被認(rèn)為是革命開(kāi)始的標(biāo)志。5年后,他和同事布萊恩·克尼漢(Brian Kernighan)發(fā)布了C語(yǔ)言的權(quán)威著作:《C程序設(shè)計(jì)語(yǔ)言》。該書(shū)最早是克尼漢為C語(yǔ)言編寫(xiě)的教程,后來(lái)他拉著丹尼斯一起把書(shū)寫(xiě)完。

       當(dāng)派克還在多倫多大學(xué)讀本科的時(shí)候,在一個(gè)因病返家的下午里讀到了這本書(shū)?!澳潜緟⒖际謨?cè)相對(duì)于其他的手冊(cè)而言,簡(jiǎn)直就是清晰和可讀的典范。毋庸置疑是一部經(jīng)典之作?!?,他說(shuō),“我生病躺床上翻一翻,沒(méi)想到竟讓我忘記了病痛?!?/p>

     和許多大學(xué)生一樣,Pike那時(shí)已經(jīng)開(kāi)始使用C語(yǔ)言了。由于貝爾實(shí)驗(yàn)室開(kāi)始分發(fā)UNIX源代碼,它逐漸風(fēng)靡大學(xué)校園。此外,UNIX還催生了現(xiàn)代開(kāi)源運(yùn)動(dòng)。這并不是什么言過(guò)其實(shí),里奇的影響之大怎么說(shuō)都不為過(guò)。即便里奇在1983年獲得的圖靈獎(jiǎng)和1998年獲得的國(guó)家技術(shù)勛章也不能完全彰顯他的貢獻(xiàn)。

      在克尼漢和派克眼中,里奇是一個(gè)少有的孤僻的人?!拔液退煌ぷ髁顺^(guò)20個(gè)年頭,但還是覺(jué)得不是很了解他這個(gè)人”,派克說(shuō)。但這并不是他低調(diào)的理由。史蒂夫·喬布斯也是一個(gè)孤僻的人,只不過(guò)保持低調(diào)只使得人們對(duì)他的崇拜有增無(wú)減。

       里奇所處的時(shí)代和工作環(huán)境與喬布斯千差萬(wàn)別,這也許是他未得到應(yīng)得紀(jì)念的原因。但是,他留下的遺產(chǎn)總有大佬能夠明白。“眾所周知牛頓說(shuō)過(guò)他是站在巨人的肩膀上”,克尼漢說(shuō),“我們都站在丹尼斯的肩膀上?!?/p>

參考資料: 《IT史記》,方興東、王俊秀,中信出版社,2004 http://baike.baidu.com/view/1664692.htm http://baike.baidu.com/view/1549883.htm http://dongxi.net/b12hR http://www.techcn.com.cn/index.php?doc-view-26068.html

網(wǎng)絡(luò)營(yíng)銷詞典內(nèi)容均由網(wǎng)友提供,僅供參考。如發(fā)現(xiàn)詞條內(nèi)容有問(wèn)題,請(qǐng)發(fā)郵件至info # wm23.com。

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
C語(yǔ)言之父里奇10月12日辭世 享年70歲
保持簡(jiǎn)單—-丹尼斯·里奇(Dennis Ritchie)
被遺忘的巨人,喬布斯也不過(guò)站在他的肩膀上而已
世界觀第168期——C語(yǔ)言之父逝世
unix
世界上最著名的操作系統(tǒng)是用什么語(yǔ)言編寫(xiě)的?
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服