Linux發展史
操作系統出現前:
1946年第一臺計算機誕生–20世紀50年代中期,還未出現操作系統,計算機工作采用手工操作方式。程序員將對應于程序和數據的已穿孔的紙帶(或卡片)裝入輸入機,然后啟動輸入機把程序和數據輸入計算機內存,接著通過控制臺開關啟動程序針對數據運行;計算完畢,打印機輸出計算結果;用戶取走結果并卸下紙帶(或卡片)后,才讓下一個用戶上機。
手工操作方式兩個特點:
(1)用戶獨占全機。不會出現因資源已被其他用戶占用而等待的現象,但資源的利用率低。
(2)CPU 等待手工操作。CPU的利用不充分。
? 20世紀50年代后期,出現人機矛盾:手工操作的慢速度和計算機的高速度之間形成了尖銳矛盾,手工操作方式已嚴重損害了系統資源的利用率(使資源利用率降為百分之幾,甚至更低),不能容忍。唯一的解決辦法:只有擺脫人的手工操作,實現作業的自動過渡。
Multics的出現:
1965年時,貝爾實驗室(Bell Labs)加入一項由通用電氣(General Electric)和麻省理工學院(MIT)合作的項目;該項目要建立一套多使用者、多任務、多層次(multi-user、multi-task、multi-level)的MULTICS操作系統。直到1969年,因MULTICS項目的工作進度太慢,該項目就被停了下來。
UNIX的出現:
Multics項目中止后,AT&T貝爾電話實驗室中參加開發的主要人員開始尋找其他有趣的項目。這其中,KenThompson寫了一個名叫 “太空漫游”的游戲程序。他找到了一臺基本無人使用的DEC PDP-7計算機運行他的程序。然而由于DEC PDP-7缺少程序開發程序,以致于Thompson不得不在另一臺運行GECOS操作系統的Honeywell635上交叉匯編子他的程序,然后再通過 紙帶加載到DEC PDP-7上。
為了方便太空漫游的開發,Thompson和Dennis Ritchie一起著手開發DEC PDP-7上的操作環境:
1.一個簡單的文件系統,它后來深化成稱之為System V文件系統的早期版;
2.一個進程子系統和shell(命令解釋器)。
這樣這個系統就足以滿足他們的需要,他們將這個操作環境命名為UNIX。Thompson和Ritchie后來開發了B語言(后來Ritchie又將其發展為C語言),并擴展了UNIX系統,
UNIX系統便在AT&T貝爾電話實驗室流行起來。1973年11月,他們用C語言徹底重寫,這是UNIX操作系統邁向成功之路的關鍵一步。
MINUX:
1982年后,由于UNIX的商業化進程,導致了該系統的發展受到了很多限制,很多大學無法免費使用,在荷蘭Amsterdam 的Vrije 大學數學與計算機科學系統工作的Andrew S. Tanenbaum為了教學的需要自己寫了一個精簡的操作系統MINUX。但是為了教學,讓學生能夠在一個學期內就能完成學習,他拒絕了來自全世界的許多人對MINUX的發展要求。
GNU計劃:
軟件產業在70年代成就了兩位針鋒相對的領袖人物,來自哈佛大學的比爾·蓋茨和Richard M.Stallman。前者宣布了Copyright(版權)時代的到來,并構建了微軟帝國的輝煌;后者于1984年創立自由軟件體系GNU,擬定普遍公用版權協議(GeneralPublicLicense,簡稱GPL),今天Linux的成功就得益于GPL協議。
所有GPL協議下的自由軟件都遵循著Richard M. Stallman的"Copyleft"(非版權)原則:即自由軟件允許用戶自由拷貝、修改和銷售,但是對其源代碼的任何修改都必須向所有用戶公開。
GNU 計劃和自由軟件基金會FSF(the Free Software Foundation)是由Richard M. Stallman 于1984 年一手創辦的。旨在開發一個類似UNIX 并且是自由軟件的完整操作系統:GNU 系統(GNU 是"GNU's Not Unix"的遞歸縮寫,它的發音為"guh-NEW")。
各種使用Linux 作為核心的GNU 操作系統正在被廣泛的使用。雖然這些系統通常被稱作"Linux",但是Stallman 認為,嚴格地說,它們應該被稱為GNU/Linux系統。
到上世紀90 年代初,GNU 項目已經開發出許多高質量的免費軟件,其中包括有名的emacs 編輯系統、bash shell 程序、gcc 系列編譯程序、gdb 調試程序等等。這些軟件為Linux 操作系統的開發創造了一個合適的環境。這是Linux 能夠誕生的基礎之一,以至于目前許多人都將Linux 操作系統稱為“GNU/Linux”操作系統。
POSIX標準:
POSIX(Portable Operating System Interface for Computing Systems)是由IEEE 和ISO/IEC 開發的一簇標準。該標準是基于現有的UNIX 實踐和經驗,描述了操作系統的調用服務接口。用于保證編制的應用程序可以在源代碼一級上在多種操作系統上移植和運行。它是在1980 年早期一個UNIX 用戶組(usr/group)的早期工作基礎上取得的。該UNIX 用戶組原來試圖將AT&T 的System V 操作系統和BerkeleyCSRG 的BSD 操作系統的調用接口之間的區別重新調和集成。并于1984 年定制出了/usr/group 標準。
在90 年代初,POSIX 標準的制定正處在最后投票敲定的時候,那是1991-1993 年間。此時正是Linux剛剛起步的時候,這個UNIX 標準為Linux 提供了極為重要的信息,使得Linux 能夠在標準的指導下進行開發,并能夠與絕大多數UNIX 操作系統兼容。在最初的Linux 內核源代碼中(0.01 版、0.11 版)就已經為Linux 系統與POSIX 標準的兼容做好了準備工作。在Linux 0.01 版內核的/include/unistd.h 文件中就已經定義了幾個有關POSXI 標準要求的符號常數,而且Linus 在注釋中已寫道:“OK,這也許是個玩笑,但我正在著手研究它呢”。
Linux的出現:
在1991年的八月,網絡上出現了一篇以此為開篇話語的帖子——這是一個芬蘭的名為Linus Torvalds的大學生為自己開始寫作一個類似minix,可運行在386上的操作系統尋找志同道合的合作伙伴。
1991年10月5日,Linus Torvalds在新聞組comp.os.minix發布了大約有一萬行代碼的Linux v0.01版本。
到了1992年,大約有1000人在使用Linux,值得一提的是,他們基本上都屬于真正意義上的hacker。
1993年,大約有100余名程序員參與了Linux內核代碼編寫/修改工作,其中核心組由5人組成,此時Linux 0.99的代碼有大約有十萬行,用戶大約有10萬左右。
1994 年3月,Linux1.0發布,代碼量17萬行,當時是按照完全自由免費的協議發布,隨后正式采用GPL協議。至此, Linux的代碼開發進入良性循環。很多系統管理員開始在自己的操作系統環境中嘗試linux,并將修改的代碼提交給核心小組。由于擁有了豐富的操作系統平臺,因而 Linux的代碼中也充實了對不同硬件系統的支持,大大的提高了跨平臺移植性。
1995年,此時的Linux 可在Intel、Digital 以及Sun SPARC處理器上運行了,用戶量也超過了50萬,相關介紹Linux的Linux Journal雜志也發行了超過10萬冊之多。
1996年6月,Linux 2.0內核發布,此內核有大約40萬行代碼,并可以支持多個處理器。此時的Linux 已經進入了實用階段,全球大約有350萬人使用。
1997年夏,大片《泰坦尼克號》在制作特效中使用的160臺Alpha圖形工作站中,有105臺采用了Linux操作系統。
1998 年是Linux迅猛發展的一年。1月,小紅帽高級研發實驗室成立,同年RedHat 5.0獲得了InfoWorld的操作系統獎項。4月Mozilla 代碼發布,成為linux圖形界面上的王牌瀏覽器。Redhat 宣布商業支持計劃,網絡了多名優秀技術人員開始商業運作。王牌搜索引擎"Google"現身,采用的也是Linux服務器。值得一提的是, Oracle 和Informix 兩家數據庫廠商明確表示不支持Linux,這個決定給予了Mysql數據庫充分的發展機會。同年10月,Intel和Netscape宣布小額投資紅帽軟件,這被業界視作Linux獲得商業認同的信號。同月,微軟在法國發布了反Linux公開信,這表明微軟公司開始將Linux視作了一個對手來對待。十二月,IBM發布了適用于Linux的文件系統AFS 3.5以及Jikes Java 編輯器和Secure Mailer及DB2測試版,IBM的此番行為,可以看作是與Linux羞答答地第一次親密接觸。迫于Windows和Linux的壓力,Sun逐漸開放了Java協議,并且在UltraSparc上支持Linux操作系統。1998年可說是Linux與商業接觸的一年。
1999 年,IBM宣布與Redhat公司建立伙伴關系,以確保Redhat在IBM機器上正確運行。三月,第一屆 LinuxWorld 大會的召開,象征Linux時代的來臨。IBM、Compaq和Novell宣布投資Redhat公司,以前一直對Linux持否定態度的Oracle公司也宣布投資。五月,SGI公司宣布向Linux移植其先進的XFS文件系統。對于服務器來說,高效可靠的文件系統是不可或缺的,SGI的慷慨移植再一次幫助了Linux確立在服務器市場的專業性。7月IBM啟動對Linux的支持服務和發布了Linux DB2,從此結束了Linux得不到支持服務的歷史,這可以視作Linux真正成為服務器操作系統一員的重要里程碑。
2000年初始,Sun公司在Linux的壓力下宣布Solaris8降低售價。事實上Linux對Sun造成的沖擊遠比對 Windows來得更大。 2月Red Hat發布了嵌入式Linux的開發環境,Linux在嵌入式行業的潛力逐漸被發掘出來。在4月,拓林思公司宣布了推出中國首家Linux工程師認證考試,從此使Linux操作系統管理員的水準可以得到權威機構的資格認證,此舉大大增加了國內Linux愛好者學習的熱情。伴隨著國際上的Linux熱潮,國內的聯想和聯邦推出了"幸福Linux家用版",同年7月中科院與新華科技合作發展紅旗Linux, 此舉讓更多的國內個人用戶認識到了存在著Linux這個操作系統。11月,Intel 與 Xteam合作,推出基于Linux的網絡專用服務器,此舉結束了在Linux單向順應硬件商硬件開發驅動的歷史。
原創文章,作者:王更生,如若轉載,請注明出處:http://www.www58058.com/50856