從 Unix 到 Linux 這一段歷史(轉)

BSDLite發表於2007-08-16
從 Unix 到 Linux 這一段歷史(轉)[@more@]為什堋大家常常會說, Linux 是很穩定的一套作業系統呢?這是因為, Linux 有個老前輩,那就是 Unix 家族
Unix 到 Linux 的這一段歷史!
早在 Linux出現之前的二十年 ( 大約在 1970 年代 ),就有一個相當穩定而成熟的作業系統存在了!那就是 Linux的老大哥『 UnixLinux 的核心是由 Linus Torvalds 在 1991 年的時候給他開發出來的,後來大家覺得這個小東西 ( Linux Kernel ) 相當的小而精巧,所以慢慢的就有相當多的朋友投入這個小東西的研究 域裡面去了

一個沒有完成的夢想: Bell, MIT 與 GE 的『 Multics 』系統早期的電腦並不像現在的個人電腦一般,他可不是一般人碰的到的玩意兒,除非是軍事或者是高科技用途才有可能接觸到這類的 Computer !而如前面所言,有電腦硬體還 要作業系統的配合才能夠發揮電腦的效能,不過,在那個年代,由於電腦算是『奢侈品』,喔 ̄應該說是『貴重物品』,所以,可能一間學校就只有一部大型主機當然,那個年代所謂的大型主機仍然無法提供適度的運算能力的。不過,既然只有一部大型主機,然而有許許多多的教師、學生要想要來使用,怎堋辦呢?為了解決這個問題,在 1960 年代初期,麻省理工學院 ( MIT ) 發展了所謂的『相容分時系統 ( Compatible Time-Sharing System, CTSS )』,就字面上的意義來看,他主要讓大型主機可以提供多個終端機連線進入主機使用主機的資源, ( 附帶一提,當時的終端機 ( Terminal ) 本身並沒有軟體或者可供使用的資源,這些終端機要能使用,一定必 要連線登入主機之後,才能夠使用主機的資源來工作!) 當時可以讓約 30 位使用者連線使用主機。而為了讓這個分時系統更加的強大,所以,在 1965 年前後由貝爾研究室 ( Bell )、 麻省理工學院 ( MIT ) 及奇異電器公司 ( GE )開始來共同開發一個名為 Multics 的大型計畫,目標是想讓大型主機可以連線 300 位以上的使用者。不過,在奮鬥了四年之後,該計畫仍然宣告不治...喔!是失敗啦!(注: Multics有複雜、多數的意思。)
  • 一個小型檔案系統的產生:1969 年 Ken Thompson 的小型 file server system在複雜的 Multics 系統的計畫失敗後,當然就退出該計畫。就在這個計畫解散之後,曾經參與 Muitics 的貝爾研究室的成員 由於自己工作上的 求, 要一套檔案存取的小型作業系統,便在 1969 年的時候以 DEC 公司 ( Digital Equipment Corporation ) 的電腦 PDP-7 為硬體基準,設計了一個適合自己工作環境的小型檔案系統,其中也含有他自行開發的一些小工具。那個系統就是最早期的 Unix的源頭!當初 Ken 設計這個檔案系統時,主要是為了自己的存取方便所設計的簡單 OS ,因此將原有的 Multics 系統大幅度的簡化,不過,在當時還並沒有 Unix 這個名詞的出現!
    • Unix 的正式誕生:1973 年 Ritchie 等人以 C 語言寫出第一個正式 Unix 核心由於 Thompson 寫的那個作業系統實在太好用了,所以在 Bell 研究室內部廣為流傳,並且數度經過改版。到了 1973 年, Bell 研究室的 等人為了讓這個系統的執行效能更佳化,所以使用編譯效能更好的 C 語言將原有的 1969 年的那個系統之核心大幅度的改寫過,並且確定該作業系統名稱為 Unix,呵呵!那就是最早的 Unix 作業系統!不過,由於這個作業系統是由這一群工程師所開發完成的,而且使用者也大多是這方面的工程師,因此造成了後來 Unix 系統介面較難被一般使用者接受的情況 @_@ (注: 相對於 Multics ,Unix 具有單一的意思!)
      • 重要的 Unix 分支: 1977 年 BSD 的誕生在 Unix 早期的發展中,有一件相當重要的事情,那就是 BSD 的誕生!由於 C 語言是一種高階語言,他可以被應用在不同的硬體架構上面,而 Unix 本身就是 C 語言寫成的!在 Unix 發表之後, 柏克萊大學 ( Berkeley ) 的教授對於這個作業系統相當的有興趣,在經過取得 Unix 的原始碼,並且幾經修改之後,終於在 1977 年發表了第一代的 Berkeley Software Distribution ( BSD ) 。這個 BSD 是 Unix 的一個分支,他的發展對於 Unix 有相當大的影響,例如後來的 Sun 公司就是使用 BSD 發展的核心進行自己商業的 Unix 版本的發展的!
        • 百家  的 Unix 版本:由於 C 語言是一個相當高階的程式語言,他與硬體沒有很直接的相關性,例如你的 Windows 也可以執行 C 程式語言!而由於 Unix 是由 C 語言寫成的,因此,也就是說,你只要經過稍微的原始碼修改程式,就可以在不同的硬體架構上面執行這個作業系統!後來,由於 Unix 的方便性,因此很多的商業公司及學術機構就加入這個作業系統的研發羅。不過,也由於 Unix 的便利性與改寫容易,因此就造成了很多的不同版本的 Unix 羅,例如 ATT 的 System V 、 加州大學的 BSD 版、 IBM 的 AIX 等等。
          由於『作業系統的核心 ( Kernel ) 必須要跟硬體配合,以提供及控制硬體的資源進行良好的工作!』,而在早期每一家生產電腦硬體的公司還沒有所謂的『協定』的概念,所以每一個電腦公司出產的硬體自然就不相同羅!因此他們必須要為自己的電腦硬體開發合適的 Unix系統,所以,他們自行開發的 Unix 當然只能配合本身的硬體配備羅!例如在學術機構相當有名的 Sun 、 Cray 與 HP 就是這一種情況,他們開發出來的 Unix 並沒有辦法在其他的硬體架構下工作的! ( 我們都稱呼這種系統與配備為『超級電腦』 ) !由於沒有廠商針對個人電腦設計 Unix 系統,因此,在早期並沒有支援個人電腦的 Unix 作業系統的出現 ( 當然,這是由於早期的個人電腦並沒有現在這樣風行就是了! ) ,每一家公司自己出的 Unix 雖然在架構上面大同小異,但是卻真的僅能支援自身的硬體,所以羅,早先的 Unix 只能與伺服器 ( Server ) 或者是大型工作站 ( Workstation ) 劃上等號
          此外,由於版本太多了,而大家都是同樣來自於 Unix 這個老祖宗,當然也都稱自己是 Unix ,
          • 1984 年的 GNU 與 Free Software Foundation:
            Unix 在商業上面的問題讓許多對於 Unix 喜好者感到相當的憂心,其中一個就是有名的 Richard M. Stallman 先生。他認為, Unix 是一個相當好的作業系統,在這個系統上面,如果大家能夠將自己所學的貢獻出來,那堋這個系統將會更加的優異!所以,他也強調應該要有 Open Source 的概念,讓大家都能夠分享這一份的心得!他認為,有了 Open Source 之後,你的程式將有很多的人可以幫忙檢驗,將使得 Unix 社群更佳的茁壯。為了自己的理想, Stallman 在 1984 年實№創立了 與 自由軟體基金會 ( Free Software Foundation, FSF ),並創作了許多『自由軟體』供大眾來使用,此外,對於其作品以自由 ( free ) 的 GNU General Public License ( GPL )的授權模式提供大眾使用。這個 FSF 的核心觀念是『版權制度是促進社會進步的手段,版權本身不是自然權力。』對於 FSF 有興趣或者對於 GNU 想要更深入的 解時,請參考,裡面有更為深入的解說!而且,Stallman 的 GNU General Public License一直強調 Free這個字眼!他是這樣說的:『"Free software" is a matter of liberty, not price. To understand the concept, you should think of "free speech", not "free beer". "Free software" refers to the users freedom to run, copy, distribute, study, change, and improve the software』大意是說,自由軟體並不是指『免費』的,而是指具有『自由度, freedom』的軟體,什堋是自由度呢?也就是你在取得這個軟體之後,可以進行修改、進一步發表與複製在不同的電腦平臺上面。這無疑是個好訊息!因為如此一來,你所拿到的軟體可能原先只能在 Unix 上面跑,但是經過原始碼的修改之後,你將可以拿他在 Linux 或者是 Windows 上面來跑!Stallman 先生更直接對自由度下了這樣的說明:
                你可以根據任何你想要的提議 ( purpose ) 來跑這個 Free 的程式; 你可以在理解了這支 Free 的程式的運作之後,將他修改成你所想要的樣式與功能; 你可以將你自己修改過的 Free 的程式再次的發表,以幫助你的朋友們;
              • 你可以將這支 Free 的程式進行改良,並將改良過的程式公開發表,以造福社群!
                簡單的來說, GPL 授權具有幾個特點:
                    任何軟體掛上 GPL 授權之後,即為自由的軟體,任何人均可取得,同時,亦可取得其原始碼 ( Source Code ); 取得 GPL 授權之軟體後,任何人均可進行修改原始碼,以符合自己的喜好;
                  • 除此之外,經過修改的 Source Code 應回報給網路社會,提供大家來參考!
                    但請特別留意,並非掛上 GPL 之後的軟體就不可販賣,這個是不同的兩回事呦!舉個例子來說,在 Red Hat 的官方網站上面提供 Red Hat 釋出的 Linux 安裝光碟提供大眾下載,但是 Red Hat 本身依然有在賣 Linux 的套件,而且還賣的『很不便宜!』為何可以如此呢?呵呵!因為 Red Hat 他們賣的資料當中,含有相當大量經過整了的檔案資料,這些資料雖然在網路上面可以下載,然而花了這堋多的時間來整理這些資料,當然應該要給予相當程度的報酬所以,請留意喔!並非 GPL 不可用來營利
                    這個 GNU 對於後來的 Linux 有相當深遠的影響,由於 Stallman 先生髮展了 GNU 這個計畫中,主力在推出各種方便而優異的工具軟體,例如廣為大家所知的 Emacs 文書編輯器、GCC, BASH..然而沒有作業平臺怎堋使用這些軟體呢?然而,由於他倡導的自由軟體,讓後來的心血能很快的接觸原始碼來發展軟體,
                    • 1988 年的圖形介面 X-Free86 project:有鑑於圖形使用者介面 ( Graphical User Interface, GUI ) 的 求日益加重,在 1984 年由 MIT 與其他協力廠商首次發表了 X Window System ,並且更在 1988 年成立了非營利性質的 XFree86 這個組織。所謂的 XFree86 其實是 X window system 與 Free 及 x86 系統架構的整合名稱呢!而這個 XFree86 的 GUI 介面更在 Linux 的核心 1.0 版於 1994 年釋出時,整合於 Linux 作業系統當中!
                      • 1991 年 芬蘭大學生 Linus Torvalds 的一則簡訊:在後來的幾年內,由於電腦硬體工業的強力運作,以 intel 主導的 x86 系統架構的個人電腦大行其道,所以個人電腦算是相當流行的一個機器了!但在此時,人們使用的大多還是舊舊而且 要吃很多系統資源的 DOS 系列或其他的作業系統。 此時,有個芬蘭的郝爾辛基大學 (Helsinki )Linus Torvalds 學生做了件不尋常的事情! Linus 手邊有個 Minix 系統 ( 這也是 Unix 的分支 ) ,他對這個作業系統相當的有興趣!此外,由於當時他正好買了一部 386 的電腦,所以他就想將他移植到個人電腦 ( X86 架構 ) 來使用!好在由於 Stallman 提倡的 Open Source 風氣,他得以接觸到一些 source code ,而就經由這樣的一個想法,呵呵!他就很有心的讀取 Unix 的核心,並且去除較為繁複的核心程式,將他改寫成可以適用於一般個人電腦的 x86 系統上面,到了 1991年,他終於將 0.02 版的 hobby放到網路上面供大家下載,並且由於 hobby 受到大家的肯定,相當多的朋友一起投入這個工作中!終於到了 1994 年將第一個完整的核心 Version 1.0 釋出!並且造成目前的大流行.....由於 Linux kernel 的發展是由『虛擬團隊』所達成的,大家都是透過網路取得 Linux 的核心原始碼,經由自己精心改造後再回傳給 Linux 社群,進而一步一步的發展完成完整的 Linux 系統,至於 Torvalds 先生是這個集團中的發起者。由於這個群策群力的緣故, Torvalds 先生將 Linux 定為同樣造福大家的 GNU 授權模式!
                        • 企鵝的來源:
                          1994年發表 Linux 正式核心 1.0 的時候,大家要 Linus Torvalds 想一支吉祥物,怪怪的 Torvalds 突然想到小時候去動物園被一支企鵝追著滿地打滾 ̄還被咬了一口!既然想不到其他的吉祥物了,乾脆就以這支企鵝來當吉祥物算了!所以,呵呵!目前我們常常看到這一支企鵝就是這堋來的咯!

                          來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617542/viewspace-962044/,如需轉載,請註明出處,否則將追究法律責任。

                          相關文章