當前位置:首頁 > 公眾號精選 > 嵌入式微處理器
[導讀]前言 在計算機軟件領域,做出過重大貢獻的神人很多,在這閃耀的明星中,最為閃耀的莫過于「Linus ?Torvalds和Dennis Ritchie」。 那么,這兩位誰的貢獻更大呢?

前言

在計算機軟件領域,做出過重大貢獻的神人很多,在這閃耀的明星中,最為閃耀的莫過于「Linus ?Torvalds和Dennis Ritchie」。

那么這兩位誰的貢獻更大呢?

這是一個很難回答的問題,就如同關公戰(zhàn)秦瓊,仁者見仁,智者見智。

還是先對兩位大神做個介紹吧。

一、Dennis Ritchie

C語言之父,UNIX之父。

1) Dennis Ritchie(1941年- 2011年10月12日)

Dennis Ritchie

Dennis Ritchie曾擔任朗訊科技公司貝爾實驗室下屬的計算機科學研究中心系統(tǒng)軟件研究部的主任一職。1978年與布萊恩·科爾尼干(Brian W. Kernighan)一起出版了名著《C程序設計語言(The C Programming Language)》。此書已翻譯成多種語言,被譽為c語言的圣經。

2011年10月12日,共事20年的同事Rob Pike從加州到新澤西去拜訪他,才發(fā)現(xiàn)他已經去世了。由于是獨居,無法知道準確的死亡時間。享年70歲。

丹尼斯·里奇生平

丹尼斯·里奇因為一直都是單身(大神的思想境界真的)

2) C語言

丹尼斯·里奇創(chuàng)建了C編程語言和Unix 操作系統(tǒng)。無論是這其中哪一個項目,都可以讓他在計算機界傲視群雄。而丹尼里奇開發(fā)了兩大項目,可以說是計算機史上獨一無二的。

事實上,C語言在各種軟件程序,嵌入式系統(tǒng)開發(fā),操作系統(tǒng)中,使用是最廣泛的。同時,C語言也影響了大多數現(xiàn)代主流的編程語言。

1960s年代后期,貝爾實驗室對計算機系統(tǒng)的研究進入繁盛時期。MIT、General Electric、Bell實驗室合作的Mutlics項目以失敗而告終(1969年左右)。

就是在這個時期,Ken Tompson開始寫Mutlics的替代品,他希望按照自己的設計構造一個令人舒服的計算系統(tǒng)(也就是Unix)。

后來在寫出第一個版本的Unix時,覺得Unix上需要一個新的系統(tǒng)編程語言,他創(chuàng)造了一個B語言。B語言是沒有類型的C,準確說B語言是Tompson把BCPL擠進8K內存,被其個人大腦過濾后的產生的語言。

由于B語言存在的一些問題,導致其只是被用來寫一些命令工具使用。恰好在這個時期,Ritchie在B語言的基礎上,進行了重新的設計改良,從而誕生了C語言。

1973年,C語言基本上已經完備,從語言和編譯器層面已經足夠讓Tompson和Ritchie使用C語言重寫Unix內核。后來,Unix在一些研究機構、大學、政府機關開始慢慢流行起來,進而帶動了C語言的發(fā)展。

1978年,K&R編寫的《The C Programming Language》出版,進一步推動了C語言的普及。

3) ?unix

Unix的誕生與C語言被廣泛的傳播、使用,有著密切的聯(lián)系。

上圖時間線只顯示前幾個與C語言在相同時間段內誕生的Unix版本。

后來學術和政府組織中都在使用Unix,也正是由于Unix的風靡與興盛,帶動了C語言被廣泛的傳播、使用。

在1980年代,C語言的使用廣泛傳播,并且?guī)缀跛袡C器體系結構和操作系統(tǒng)都可以使用編譯器。尤其是,它已成為個人計算機的編程工具,無論是用于這些機器的商業(yè)軟件制造商,還是對編程感興趣的最終用戶,都非常受歡迎。Unix分支,實在太震撼了。

來看看其中最著名的幾個分支:BSD、minix、Linux、Mac OS X...

足可見unix對現(xiàn)在操作系統(tǒng)的影響,其地位就像《易經》,為群經之首。

易經

4) ?第一個C語言編譯器是怎樣編寫的?

不知道你有沒有想過,大家都用C語言或基于C語言的語言來寫編譯器,那么世界上第一個C語言編譯器又是怎么編寫的呢?這不是一個“雞和蛋”的問題……

回顧一下C語言歷史:Tomphson在BCPL的基礎上開發(fā)了B語言,Ritchie又在B語言的基礎上成功開發(fā)出了現(xiàn)在的C語言。在C語言被用作系統(tǒng)編程語言之前,Tomphson也用過B語言編寫過操作系統(tǒng)??梢娫贑語言實現(xiàn)以前,B語言已經可以投入使用了。因此第一個C語言編譯器的原型完全可能是用B語言或者混合B語言與PDP匯編語言編寫的。

我們現(xiàn)在都知道,B語言的執(zhí)行效率比較低,但是如果全部用匯編語言來編寫,不僅開發(fā)周期長、維護難度大,更可怕的是失去了高級程序設計語言必需的移植性。

所以早期的C語言編譯器就采取了一個取巧的辦法:先用匯編語言編寫一個C語言的一個子集的編譯器,再通過這個子集去遞推,進而完成完整的C語言編譯器。

所以創(chuàng)建第一個C編譯器的難度不亞于創(chuàng)造C語言的難度。

如果還不理解,舉個例子,我們要建一個大廈,圖紙什么的都已經設計好了,要開工建設。

那么用于建造大樓的各種設備和工具:塔吊、腳手架、鉗子、螺絲刀、水平儀、卷尺等等,這些所有用到的所有工具,都是無數的公司的公司經過多年不斷研發(fā)積累才達到今天的標準。

而編譯c語言的編譯器,就相當于建設大樓所需要的各種工具,丹尼斯不光親自設計了C語言,還親自從頭到尾設計這一整套的工具。

這個工作是創(chuàng)造性的,可參考內容并不是很多,其難度可想而知。

二、 Linus ?Torvalds(1969年12月28日- )

Linux之父、Git之父。

1) ?Linus ?Torvalds(1969年12月28日- )


Linus ?Torvalds

芬蘭赫爾辛基人,著名的電腦程序員,Linux內核的發(fā)明人及該計劃的合作者 ,畢業(yè)于赫爾辛基大學計算機系,1997年至2003年在美國加州硅谷任職于全美達公司(Transmeta Corporation),現(xiàn)受聘于開放源代碼開發(fā)實驗室(OSDL:Open Source Development Labs, Inc),全力開發(fā)Linux內核。與**妻子托芙(Tove,芬蘭前女子空手道冠軍)**育有三個女孩。

Linus

劃重點:「妻子托芙(Tove,芬蘭前女子空手道冠軍)」

跟隨著我爺爺的學院教學生涯,我也成了赫爾辛基大學的一名助教,被分配在這年秋季學期里開始用瑞典語教授《計算機科學入門》課程。

就這樣,我遇上了塔芙。?她對我一生的影響甚至比?《操作系統(tǒng):設計與執(zhí)行》?
一書對我的影響還要大。不過,我不會用這種影響的細節(jié)來讓你煩惱的。

當時,塔芙是我的班上十五個學生中的一個。她已經有了一個學齡前教育學的學
位(不像在美國,芬蘭要求學齡前兒童的教師要有大學學歷),她還想學習計算機,卻不能取得像班上其他同學那樣的進步。當然,最后她還是?上去了。
我們交往的過程是如此簡單。

那是在?1993?年秋天,互聯(lián)網還沒有流行開來。?因此,有一天,我在這個班布
置的家庭作業(yè)就是給我發(fā)一個電子郵件(這要放在今天簡直要笑死人),我對學生說:“今天的家庭作業(yè):發(fā)給我一個電子郵件?!?br>其他人的郵件不是一些供記錄的短語,就是一些沒什么意思的筆記。

只有塔芙,她邀請我和她出去約會。

我娶了第一個通過電子方式走近我的女人。

塔芙是一個曾六次獲得過芬蘭空手道冠軍的幼兒園教師。?她的家庭很獨特,盡管
我認為還不如我們家那么離奇。?她有許多朋友。

從我們在一起的第一刻起,她就像是最適合我的女人。?

經過了幾個月的約會,我和我的貓?zhí)m迪就搬到她的公寓房間去了。

在搬進去后的最初兩周,我甚至都沒有動過一下我的計算機。

不算上我服兵役的時間,這兩周是我自從我十歲那一年坐在外祖父膝蓋上擺弄計算
機以來?,
離開計算機最長的一段時間了。?

不必詳細描述,但這確實是除去服兵役之外我離開計算機最長的時間的記錄了。

---出自linus自傳《just for fun》。

just for fun

祖師爺和祖師奶奶的相遇居然這么浪漫,他們的第一個孩子應該就是那兩個星期造出來的吧。

2) Git

Git是一個開源的分布式版本控制系統(tǒng),可以有效、高速地處理從很小到非常大的項目版本管理,它是目前世界上最先進的分布式版本控制系統(tǒng)。Git 是用于 Linux內核開發(fā)的版本控制工具。

與常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本庫的方式,不必服務器端軟件支持,使源代碼的發(fā)布和交流極其方便。Git 的速度很快,這對于諸如 Linux kernel 這樣的大項目來說自然很重要。Git 最為出色的是它的合并跟蹤(merge tracing)能力。

Git是一種非常流行的分布式版本控制系統(tǒng),它和其他版本控制系統(tǒng)的主要差別在于Git只關心文件數據的整體是否發(fā)生變化,而大多數版本其他系統(tǒng)只關心文件內容的具體差異,這類系統(tǒng)(CVS,Subversion,Perforce,Bazaar 等等)每次記錄有哪些文件作了更新,以及都更新了哪些行的什么內容。

Git另一個比較好的地方在于絕大多數操作都可以在本地執(zhí)行,而每個本地都可以從服務器獲取一份完整的倉庫代碼,而且在沒網的時候仍然可以修改和使用大部分命令,在方便的時候再跟服務器進行同步,這樣可以更好的實現(xiàn)多人聯(lián)合編程。

Git

2002年,Linux系統(tǒng)已經發(fā)展了十年了,代碼庫之大讓Linus很難繼續(xù)通過手工方式管理了,社區(qū)的弟兄們也對這種方式表達了強烈不滿,于是Linus選擇了一個商業(yè)的版本控制系統(tǒng)BitKeeper,BitKeeper的東家BitMover公司出于人道主義精神,授權Linux社區(qū)免費使用這個版本控制系統(tǒng)。

安定團結的大好局面在2005年就被打破了,原因是Linux社區(qū)牛人聚集,不免沾染了一些梁山好漢的江湖習氣。

「開發(fā)Samba的Andrew試圖破解BitKeeper的協(xié)議(這么干的其實也不只他一個),被BitMover公司發(fā)現(xiàn)了」(監(jiān)控工作做得不錯?。谑荁itMover公司怒了,要「收回Linux社區(qū)的免費使用權」。

Linus本可以向BitMover公司道個歉,保證以后嚴格管教弟兄們,嗯,但是Linus不是一般人,「道歉是不可能的,這輩子都不可能的」。

于是Linus花了「兩周時間」自己用C寫了一個分布式版本控制系統(tǒng),這就是Git!一個月之內,Linux系統(tǒng)的源碼已經由Git管理了!

「?!?/strong>是怎么定義的呢?大家可以體會一下。

Git

Git迅速成為最流行的分布式版本控制系統(tǒng),尤其是2008年,GitHub網站上線了,它為開源項目免費提供Git存儲,無數開源項目開始遷移至GitHub,包括jQuery,PHP,Ruby等等。

GitHub,全世界開發(fā)者的安全空間,在這里,你可以分享你的代碼為大家所用,也可以和全世界的開發(fā)者一起共建完善你的代碼?,F(xiàn)在有越來越多的公司都把代碼放在了Github服務器上。

一口君從第一次用過之后就愛不釋手,被其中的設計哲學深深折服,因為Git管理軟件版本實在太過方便了。

通過commit來研究和學習一個軟件產品如何從最初code base慢慢迭代成一個成熟的產品,這是提升自己技術水平最快捷之路。

3) Linux

Linux時間線

Linux時間線比較龐大,詳情請復制下面鏈接到瀏覽器:https://upload.wikimedia.org/wikipedia/commons/1/1b/Linux_Distribution_Timeline.svg

1991

8月25號 : 21歲的芬蘭學生Linus Benedict Torvalds 在comp.os.minix 新聞組上宣布了它正在編寫一個免費的操作系統(tǒng)。

9月1號 : Linux 0.01在網上發(fā)布。

1992

1月5號 : Linux v0.12 release 版本的內核重新以GUN GPL的協(xié)議發(fā)布。原來的許可證是禁止任何商業(yè)用途的。通過這次協(xié)議變更,發(fā)布和出售修改或未修改版的Linux成為了可能,只要你將這些復制版本以相同的GPL許可證發(fā)布,并且有相對應完整的源代碼。在后來的一次采訪中,Linus對這次許可證的更改說了這樣一句話(讓Linux遵守GPL絕對是我干過的最正確的事):

"?Making?Linux?GPL'd?was?definitely?the?best?thing?I?ever?did."

1月29號 : Andrew S. Tanenbaum向comp.os.minix郵件列表發(fā)送了一封名為LINUX is obsolete的郵件??偟膩碚f,這次被一些人升級為“戰(zhàn)火”的爭論是關于Linux和內核架構的。Tanenbaum爭辯說微內核比宏內核更加高級,所以Linux是過時的。

4月5號 : 第一個Linux新聞組,comp.os.linux由Ari Lemmke提議和開通。

5月21號 : Peter MacDonald 發(fā)布第一個獨立的Linux安裝包SLS??梢酝ㄟ^軟盤安裝,包括比較前沿的TCP-IP網絡支持和X Window系統(tǒng)。建議至少預留10M的磁盤空間來安裝。

1993

6月17號 : Slackware Linux由Patrick Volkerding發(fā)布。Slackware被認為是第一個取得廣泛成功的Linux發(fā)行版,而且它現(xiàn)在還在使用。

8月16號 : Ian Murdock(Debian中的'ian')發(fā)布了第一個Debian Linux的發(fā)行版。Debian是最有影響力的Linux發(fā)行版之一,是MEPIS,Mint,Ubuntu和很多其它發(fā)行版的鼻祖。

8月19號 : Matt Welsh寫的《Linux Installation and Getting Started》第1版出版,這是第一本關于Linux的書籍。

1994

3月14號 : Linux內核V1.0發(fā)布。它支持基于i386單處理器的計算機系統(tǒng)。這3年來,內核代碼庫已經增長到了176,250行。

3月26號 : 第一期《Linux Journal》雜志發(fā)行。這一期雜志的特點是發(fā)表了一篇對Linus Torvalds的采訪和一些Phil Hughes, Robert “Bob” Young, Michael K. Johnson, Arnold Robbins, Matt Welsh, Ian A寫的文章。

8月15號 : Willian R. Della Croce, Jr. 申請了“Linux”商標,9月進行了注冊。Della Croce在不知道Linux社區(qū)財政窘迫的前提下,向煊赫的“Linux公司”寫了一封信,要求他們?yōu)椤癓inux”商標使用支付費用。直到1997年,這次風波以將商標轉讓給代表所有請愿者和Linux使用者的Linus Torvalds而告終。

11月3號 : Red Hat的共同創(chuàng)始人Marc Ewing宣布可以以49.95美元的零售價格獲得Red Hat Software Linux的CD-ROM和30天的安裝支持。2012年Red Hat成為第一家市值達10億美元的開源公司。

1995

4月4號 : 開展了第一個專門針對Linux的貿易展和會議系列,名字叫Linux Expo。這成為接下來幾年中,最流行和備受關注的年度Linux盛會。貿易展和會議的入場券價格是4美元。3年后,Red Hat接管了組織工作,同時也是主要的贊助商。

1996

5月9號 : 最初由Alan Cox提議,之后又經Linus Torvalds改良,Larry Ewing在1996年創(chuàng)造了現(xiàn)在看到的這只叫做Tux的吉祥物。選定企鵝作為Linux吉祥物的主意來自Linus Torvalds,他說自己被一只企鵝輕輕地咬了一口之后就具有了企鵝的特征。(這是要變成企鵝俠嗎?估計是原作者調皮了?--譯注)

6月9號 : Linux內核V2.0發(fā)布。相比更早的版本這是一次意義重大的提升,這是第一個在單系統(tǒng)中支持多處理器的穩(wěn)定內核版本,也支持更多的處理器類型。Linux從此以后成了很多公司一個鄭重選擇的對象。你可以閱讀1996年8月在Linux Journal上發(fā)布的回顧Linux V2.0來了解更多相關的提升。

10月14號 : 1996年Mattias Ettrich發(fā)起了KDE項目,因為他深受Unix桌面系統(tǒng)下應用程序的不一致之苦。(在此之前Unix和Linux都沒有一個統(tǒng)一的桌面系統(tǒng),編寫桌面軟件非常復雜--譯注)

1997

1月9號 : 第一個“Linux病毒”Bliss被發(fā)現(xiàn)了。Bliss不危害系統(tǒng)的安全,它依賴于人們用特權干蠢事來感染系統(tǒng),然后提醒用戶只安裝從可靠站點下載的可以驗證數字簽名的軟件,并且安裝之前一定要先驗證簽名(很多地方把這個算作第2個Linux病毒,因為之前還有一個更加“綠色”的病毒--譯注)?!笆聦嵣?,在Linux上寫一個病毒可能會更加的簡單,因為Linux是開源的,所有的源代碼都是可以獲取的。所以,隨著Linux變得更加通用和流行的時候,我們將看到更多的Linux病毒?!?-來自McAfee的暢想。

1998

5月1號 : Google搜索引擎面世。它不僅僅是世界上最好的搜索引擎之一,更是基于Linux的,它的特征是有一個Linux的搜索頁面。

12月4號 : 一份來自IDC的報告稱1998年Linux的出貨量至少上升了200%,市場占有率上升至少150%。Linux的市場占有率為17%,并且以其它任何操作系統(tǒng)無法企及的速度增長著。

1999

2月9號 : Linux和BSD使用者們發(fā)起了“Windows退款日”。他們聯(lián)合起來造訪了微軟公司,希望退還他們在買電腦時綁定購買Windows許可證的錢,這些許可證他們從來沒有用過。

3月3號 : 另一個頗具影響力的桌面系統(tǒng)進入了Linux的世界,就是GNOME桌面系統(tǒng)。在很多主要的Linux發(fā)行版比如Debian,F(xiàn)edora,RedHad Enterprise Linux和SUSE Linux Enterprise Desktop中,GNOME是默認的桌面環(huán)境。

2000

2月4號 : 最新的IDC報告表明Linux現(xiàn)在排在“最受歡迎的服務器操作系統(tǒng)的第2位”,1999年服務器系統(tǒng)銷售量占總量的25%。Windows NT以38%位列第1,NetWare以19%排在第3位。

3月11號 : 摩托羅拉公司宣布發(fā)行HA Linux。這個發(fā)行版專注于通信應用領域,對系統(tǒng)不關機連續(xù)運行時間要求非常高。它還包括了熱交換能力和支持i386和PowerPC架構。

3月23號 : 愛立信公布了“Screen Phone HS210”,這是一款基于Linux的觸屏手機,具備郵件和網頁瀏覽等功能。愛立信和Opera Software公司同時宣布這款手機將會安裝Opera的網頁瀏覽器。

10月30號 : 第一個Linux live發(fā)行版由Linux咨詢顧問Klaus Knopper發(fā)布,名字叫做Knoppix。

2001

1月3號 : 美國NAS(美國國家安全局)以GPL許可證發(fā)布了SELinux。SELinux提供了標準Unix權限管理系統(tǒng)以外的另一層安全檢查。

2003

3月6號 : SCO Group公司宣布他們正在發(fā)起對IBM高達10億美元的訴訟,他們聲稱IBM把SCO的商業(yè)機密整合到了Linux中。之后SCO公司發(fā)起了一系列的法律訴訟案,這威脅到了很多計算機行業(yè)的巨頭包括惠普,微軟,Novell,Silicon Graphics,Sun Microsystems和RedHat。這次案件在Novell公司的支持下于2010年3月30號判決完畢。(著名的SCO-Linux爭議,SCO聲稱擁有System V的部分源碼所有權,IBM將這部分源碼整合到Linux中侵犯了SCO著作權。最后聯(lián)邦法院裁定Novell才是Unix商標的合法擁有者。--譯注)

2004

10月20號 : Ubuntu以一個不同尋常的版本號4.10和怪異的版本代號“Warty Warthog”(長滿疙瘩的非洲疣豬)進入大家的生活。用這個版本號是因為發(fā)布日期是2004年10月。Ubuntu的開發(fā)由Cannonical Ltd公司主導,公司的創(chuàng)始人是Mark Shuttleworth(就是那個不到30歲的億萬富翁,錢多的不知道怎么花,只能燒錢上太空的游一圈的人--譯注)。Ubuntu雖然不是內核的主要貢獻者,然而對于Linux的臺式機和筆記本電腦的普及,Ubuntu扮演著一個重要的角色。

2007

6月6號 : 華碩在2007的臺北電腦展上展出了兩款“易PC”(Eee PC):701和1001。第1批易PC預裝的是Xandros Linux,這是一個基于Debian,輕量級的為適應小屏幕進行過優(yōu)化的Linux發(fā)行版。

8月8號 : 2007年Linux基金會由開源發(fā)展實驗室(OSDL)和自由標準組織(FSG)聯(lián)合成立。這個基金會目的是贊助Linux創(chuàng)始人Linus的工作?;饡玫搅酥饕腖inux和開源公司,包括富士通,HP,IBM,Intel,NEC,Oracle,Qualcomm,三星和來自世界各地的開發(fā)者的支持。

「11月5號 : 與之前大家推測的發(fā)布Gphone不同,Google宣布組建開放手機聯(lián)盟(Open Handset Alliance)和發(fā)布Android,它被稱為“第一個真正開放的綜合移動設備平臺”?!?/strong>

2009

1月29號 : 2009年1月紐約時報稱“現(xiàn)在預計有超過10億人在運行Ubuntu系統(tǒng)”。

2011

5月11號 : 2011年Google I/O大會發(fā)布了Chrombook。這是一款運行著所謂云操作系統(tǒng)Chrome OS的筆記本。Chome OS是基于Linux內核的。

6月21號 : Linus Torvalds 發(fā)布了Linux3.0版本。

2013

12月13號 : Valve公司發(fā)布基于Linux的SteamOS操作系統(tǒng),這是一個視頻游戲控制臺系統(tǒng)。

4)《大教堂與集市》

Linus發(fā)明Linux過程有點像將簡陋的集市構建成一個宏偉壯麗的大教堂的一個過程。

《大教堂與集市》這本書分析了這種設計哲學。

大教堂與集市

世界上的建筑可以分兩種:「一種是集市」,天天開放在那里,從無到有,從小到大;還有一種是「大教堂」,幾代人嘔心瀝血,幾十年才能建成,投入使用。

「當你新建一座建筑時,你可以采用集市的模式,也可以采用大教堂的模式?!?/strong>

一般來說,集市的特點是開放式建設、成本低、周期短、品質平庸;大教堂的特點是封閉式建設、成本高、周期長、品質優(yōu)異。

Eric Raymond總結了集市要變成大教堂,有幾個前提條件:

1)你不能從零開始建設集市,你必須先有一個原始項目。(It's?fairly?clear?that?one?cannot?code?from?the?ground?up?in?bazaar?style.)

2)你的原始項目可以有缺陷,但是它必須能運行。(It can be crude, buggy,
incomplete, and?poorly?documented.?What?it?must?not?fail?to?do?is?run.)

3)你必須向用戶展示一個可行的前景,且讓潛在的合作者相信在可預見的將來它會
變成一個真正漂亮的東西。(When you start community-building, what you need to be able to present is a plausible promise, and?convince?potential?co-developers?that?it?can?be?evolved?into?something?really?neat?in?the?foreseeable?future.)

4)項目的主持者本身不一定是天才,但他一定要能夠慧眼識別出他人的優(yōu)秀想法。
(it is not?critical?that?the?coordinator?be?able?to?originate?designs?of?exceptional?brilliance,?but?it?is?absolutely?critical?that?the?coordinator?be?able?to?recognize?good?design?ideas?from?others.)

5)項目的主持者必須要有良好的人際關系、交流技能和人格魅力。這樣才能吸引他
人,使別人對你所做的事感興趣,愿意幫助你。(A bazaar project coordinator or?leader?must?have?good?people?and?communications?skills.)

Eric Raymond同時也總結了一些成功的充分條件。

1)項目首先必須是你自己感興趣的,但是最終能對其他人有用。

2)將用戶當作合作者。

3)盡快地和經常地做出改進,多聽取用戶的意見。

4)健壯的結構遠比精巧的設計來得重要。換句話說,結構是第一位的,功能是第
二位的。

5)保持項目的簡單性。設計達到完美的時候,不是無法再增加東西了,而是無法
再減少東西了。

一個開放式的項目,如果加以良好的管理和運作,能取得比同等的封閉式項目大得多的成功。

三、比較

已經介紹了兩位大神的生平的功績,那下面我們來做個點評吧。

其實究竟誰更強,誰的貢獻更大,作為一個晚輩程序員,對他們只有膜拜的分,豈敢隨便下結論說他們誰更強,只能從他們的工作內容和主要成就來說說個人看法,不足之處,還請指正。

1. 成果

首先說說C語言之父丹尼斯?里奇(Dennis M. Ritchie),他對C語言的貢獻大家有目共睹,不必多說。

除了是C語言的主要發(fā)明者之外,他還因為對Unix操作系統(tǒng)的重大貢獻而被稱為Unix之父。然而他的貢獻遠非如此,在Unix取得了巨大成功之后,他們在20世紀80年代開始研究一個名為Plan 9的操作系統(tǒng),其目的就是解決Unix中的一些問題。

在之后的幾十年中,該項目演變出了一個叫Inferno的項目以及一個名為Limbo的新語言,而該語言被公認為是目前火熱的編程語言Go的前身。

從上面可以看出,丹尼斯?里奇的貢獻是多方面的,除了編程語言還有操作系統(tǒng),也正是因為如此,他獲得了無數的獎項,其中最著名的就是「圖靈獎」(1983)和「計算機先驅獎」(1994)。

再說說Linux之父,Linus Torvalds,他的貢獻主要是開發(fā)了Linux操作系統(tǒng)的內核,然后將之開源公布于世,最后形成了對計算機行業(yè)影響巨大的一套操作系統(tǒng),并且因此獲得了計算機先驅獎(2014)。

2005年用兩周的時間就研發(fā)出了Git,而這個軟件版本管理軟件影響了全球無數的軟件開發(fā)者。

成果上來說,二位實在不相上下。

2. 難度

從難度上講,編譯器要比操作系統(tǒng)難度高很多,而且linux并不是從零起步的,它是繼承unix系統(tǒng)內核的,使之適應PC兼容機,而我們知道,C語言之父Dennis M Ritchie同時也是unix的創(chuàng)建者之一,在發(fā)明C語言之后,他自己又重新用C寫了一遍unix,linus對他就是小弟弟了,寫個操作系統(tǒng)對他而言并不費事。

現(xiàn)代的windows、linux給人感覺很龐大,因為它們是個平臺,上面有海量應用和中間件,編譯器給人感覺很小,但對內行來說,「編譯器的難度要遠高于操作系統(tǒng)」。

操作系統(tǒng)是需要耗費很多人工開發(fā)上面的應用,是軟件界的勞動密集產品,而編譯器更像是大師的藝術品,編譯器是生產其它軟件的工廠,對它的要求非常高。

我們國家其實早就能做操作系統(tǒng)了,985大學里專業(yè)的本科學生就能交一份非商用的操作系統(tǒng)作業(yè),但自己的編譯器還是零,并不是學了編譯原理就寫的來編譯器的。

3. 編程水平

從他們的工作成就來看,我認為丹尼斯?里奇更厲害一些,他的成就是多方面的,而且最關鍵的一點,Linux的系統(tǒng)原型(Unix的變體minix)和編程語言(C語言)都來自于丹尼斯?里奇的貢獻的。但是如果僅僅從編程能力來說,到他們那種級別對編程都已經是爐火純青,很難分出高下!

C語言之父相當于自己動手造了一臺挖掘機。人們可用他的挖掘機做能做的事。

linux之父相當于自己帶頭挖了幾個基坑,然后有一大票自帶磚瓦、鋼筋、混凝土的小伙伴共同建起一座大廈。又因為是linus是帶頭人,所以大廈名字由他起且看門大爺是他當。

況且,蓋大廈(寫操作系統(tǒng))這種事,里奇同志早就干過了,而且是用自家造的機器和兩個小伙伴就干成了!

應該說在Dennis M Ritchie面前Linus就是弟弟。

4. 對社會直接貢獻

兩位都為社會進步做了很大貢獻。如果硬要比較的話,個人覺得linux和git的直接貢獻更大一些。

沒什么好說的,去各大軟件公司走一圈就知道了,幾乎沒有不用Linux的。

Linux應用的領域非常之廣:

  1. Linux在服務器領域的發(fā)展

隨著開源軟件在世界范圍內影響力日益增強,Linux服務器操作系統(tǒng)在整個服務器操作系統(tǒng)市場格局中占據了越來越多的市場份額,已經形成了大規(guī)模市場應用的局面。并且保持著快速的增長率。尤其在政府、金融、農業(yè)、交通、電信等國家關鍵領域。此外,考慮到Linux的快速成長性以及國家相關政策的扶持力度,Linux服務器產品一定能夠沖擊更大的服務器市場。

據權威部門統(tǒng)計,目前Linux在服務器領域已經占據75%的市場份額,同時,Linux在服務器市場的迅速崛起,已經引起全球IT產業(yè)的高度關注,并以強勁的勢頭成為服務器操作系統(tǒng)領域中的中堅力量。

  1. Linux在桌面領域的發(fā)展

近年來,特別在國內市場,Linux桌面操作系統(tǒng)的發(fā)展趨勢非常迅猛。國內如中標麒麟Linux、紅旗Linux、深度Linux等系統(tǒng)軟件廠商都推出的Linux桌面操作系統(tǒng),目前已經在政府、企業(yè)、OEM等領域得到了廣泛應用。另外SUSE、Ubuntu也相繼推出了基于Linux的桌面系統(tǒng),特別是Ubuntu Linux,已經積累了大量社區(qū)用戶。但是,從系統(tǒng)的整體功能、性能來看,Linux桌面系統(tǒng)與Windows系列相比還有一定的差距,主要表現(xiàn)在系統(tǒng)易用性、系統(tǒng)管理、軟硬件兼容性、軟件的豐富程度等方面。

  1. Linux在移動嵌入式領域的發(fā)展

Linux的低成本、強大的定制功能以及良好的移植性能,使得Linux在嵌入式系統(tǒng)方面也得到廣泛應用,目前Linux以廣泛應用于手機、平板電腦、路由器、電視和電子游戲機等領域。在移動設備上廣泛使用的Android操作系統(tǒng)就是創(chuàng)建在Linux內核之上的。目前,Android已經成為全球最流行的智能手機操作系統(tǒng),據2015年權威部門最新統(tǒng)計,Android操作系統(tǒng)的全球市場份額已達84.6%

此外,思科在網絡防火墻和路由器也使用了定制的Linux,阿里云也開發(fā)了一套基于Linux的操作系統(tǒng)“YunOS”,可用于智能手機、平板電腦和網絡電視;常見的數字視頻錄像機、舞臺燈光控制系統(tǒng)等都在逐漸采用定制版本的Linux來實現(xiàn),而這一切均歸功于Linux與開源的力量

  1. Linux在云計算/大數據領域的發(fā)展

互聯(lián)網產業(yè)的迅猛發(fā)展,促使云計算、大數據產業(yè)的形成并快速發(fā)展,云計算、大數據作為一個基于開源軟件的平臺,Linux占據了核心優(yōu)勢;據Linux基金會的研究,86%的企業(yè)已經使用Linux操作系統(tǒng)進行云計算、大數據平臺的構建,目前,Linux已開始取代Unix成為最受青睞的云計算、大數據平臺操作系統(tǒng)

  1. 國內 Linux 操作系統(tǒng)發(fā)展現(xiàn)狀

國內目前涉足Linux操作系統(tǒng)研發(fā)除學校、研發(fā)機構外,主要 Linux 發(fā)行版包括紅旗、中標、共創(chuàng)、新華、拓林思等,均有桌面和服務器兩個版本;國內各發(fā)行版均基于國際社區(qū)版本發(fā)展而來,基于國際社區(qū)成果,在界面定制上做了一些工作,并沒有掌握核心技術,且與國際Linux 操作系統(tǒng)發(fā)行版之間存在一定的技術差距,缺少技術積累,面臨Linux發(fā)展后勁不足等問題

  1. 國外Linux操作系統(tǒng)發(fā)展現(xiàn)狀

國外 Linux 操作系統(tǒng)發(fā)展現(xiàn)狀 國外主要發(fā)行版包括redhat、ubuntu、Suse 等,均提供桌面和服務器兩個不同版本。服務器領域 Linux 操作系統(tǒng)發(fā)展比較成熟,桌面發(fā)展比較緩慢,嵌入式領域發(fā)展較快。

可以說我們的生活已經無法離開Linux,絕大部分軟件工程師都會用到Linux,但一定要記住這些都是建立在C語言的基礎之上。

5. 個人理解

其實2人都不是從0開始的, 一個是基于B語言和unix系統(tǒng)的需求出發(fā)創(chuàng)造了c語言,

一個是基于minix和unix思想還有當時的機遇開發(fā)了linux。都是站在前任的肩膀上成功的。

在彭老師心里,Dennis Ritchie更加重要一些,因為他用C語言開辟了一個新的世界,從誕生開始到現(xiàn)在,一直穩(wěn)居語言榜前三位,都快50年了,我們依然在用它。

而Linux在服務器和移動端的占有率實在太高,直接貢獻更多一些,而linus最厲害的一點是他做到了協(xié)調世界各地數以百萬計的開發(fā)者開發(fā)維護linux,這難度更大些。

彭老師內心可能更崇拜linus多一些,尤其他那一句“「Talk is cheap!Show me your code!」”!

Linus ?Torvalds怒懟英偉達

一起欣賞下祖師爺那性感的中指!!【某次演講怒懟英偉達】

要獲取電子書《大教堂與集市》,關注后臺回復 [ 大教堂與集市 ]。

部分圖片來自于網絡侵權刪。參考:知乎 騰訊技術工程 Linus自傳《just for fun》

END

來源:一口Linux,作者:土豆居士

版權歸原作者所有,如有侵權,請聯(lián)系刪除。

推薦閱讀

成功為華為“續(xù)命:中國芯片之父張汝京

一個工程師的“噩夢”:剛分清CPU和GPU,卻發(fā)現(xiàn)還有……

這位“華為天才少年”,竟然要我用“充電寶”打《只狼》

免責聲明:本文內容由21ic獲得授權后發(fā)布,版權歸原作者所有,本平臺僅提供信息存儲服務。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!

嵌入式ARM

掃描二維碼,關注更多精彩內容

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據媒體報道,騰訊和網易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數據產業(yè)博覽會開幕式在貴陽舉行,華為董事、質量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數據產業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經營業(yè)績穩(wěn)中有升 落實提質增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數字經濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯(lián)合牽頭組建的NVI技術創(chuàng)新聯(lián)盟在BIRTV2024超高清全產業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術創(chuàng)新聯(lián)...

關鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉