Linux是一種自由和開放原始碼的類UNIX作業系統。該作業系統的內核由林納斯·托瓦茲在1991年10月5日首次發佈[7][8],再加上用戶空間的應用程式之後,就成為了Linux作業系統。Linux也是自由軟件和開放原始碼軟件發展中最著名的例子。只要遵循GNU 通用公共許可證(GPL),任何個人和機構都可以自由地使用Linux的所有底層原始碼,也可以自由地修改和再發佈。大多數Linux系統還包括像提供GUI的X Window之類的程式。除了一部分專家之外,大多數人都是直接使用Linux 發行版,而不是自己選擇每一樣組件或自行設置。
開發者 | 社區貢獻者,包括創始人林納斯·托瓦茲 |
---|---|
程式語言 | C語言和少量匯編語言、Rust語言(自6.1版開始) [1] |
作業系統家族 | 類Unix系統 |
運作狀態 | 支援中 |
原始碼模式 | 自由及開放原始碼軟件 |
首次發佈 | 1991年的0.01版(代號「Freax」) |
目前版本 | |
最新預覽 | Kernel: 6.2-rc5[4](2023年1月21日 )[±] |
市場取向 | 桌面、伺服器、嵌入式裝置、流動裝置等 |
支援的語言 | 多種 |
支援平台 | Alpha, ARC, ARM, Hexagon, Itanium, m68k, MicroBlaze, MIPS, Nios II, OpenRISC, PA-RISC, PowerPC, RISC-V, S390, SuperH、SPARC, x86(含x86-64), Xtensa等 |
內核類別 | 整塊性核心 |
預設用戶介面 | 命令列、圖形(X Window系統,Wayland)等多種 |
許可證 | GPL等多種[5]("Linux"商標由林納斯·托瓦茲持有,由Linux基金會管理。)[6] |
官方網站 | www.kernel.org |
Linux嚴格來說是單指作業系統的內核,因作業系統中包含了許多用戶圖形介面和其他實用工具。如今Linux常用來指基於Linux的完整作業系統,內核則改以Linux內核稱之。由於這些支援用戶空間的系統工具和庫主要由理察·斯托曼於1983年發起的GNU計劃提供,自由軟件基金會提議將其組合系統命名為GNU/Linux[9][10],但Linux不屬於GNU計劃,這個名稱並沒有得到社群的一致認同。
Linux最初是作為支援英特爾x86架構的個人電腦的一個自由作業系統。目前Linux已經被移植到更多的電腦硬件平台,遠遠超出其他任何作業系統。Linux可以執行在伺服器和其他大型平台之上,如大型電腦和超級電腦。世界上500個最快的超級電腦已100%執行Linux套件或變種[11]。Linux也廣泛應用在嵌入式系統上,如手機(Mobile Phone)、平板電腦(Tablet)、路由器(Router)、電視(TV)和電子遊戲機等。在流動裝置上廣泛使用的Android作業系統就是建立在Linux內核之上。
通常情況下,Linux被打包成供個人電腦和伺服器使用的Linux套件,一些流行的主流Linux發佈版,包括Debian(及其衍生版本Ubuntu、Linux Mint)、Fedora(及其相關版本Red Hat Enterprise Linux)和openSUSE等。Linux套件包含Linux內核和支撐內核的實用程式和庫,通常還帶有大量可以滿足各類需求的應用程式。個人電腦使用的Linux套件通常包含X Window和一個相應的桌面環境,如GNOME或KDE。桌面Linux作業系統常用的應用程式,包括Firefox網頁瀏覽器、LibreOffice辦公軟件、GIMP圖像處理工具等。由於Linux是自由軟件,任何人都可以建立一個符合自己需求的Linux套件。
歷史
UNIX作業系統(英語:UNIX),是美國AT&T公司貝爾實驗室於1969年完成的作業系統。最早由肯·湯普遜(Ken Thompson),丹尼斯·里奇(Dennis Ritchie),道格拉斯·麥克羅伊(Douglas McIlroy),和喬伊·歐桑納於1969年在AT&T貝爾實驗室開發。於1971年首次發佈,最初是完全用匯編語言編寫。後來,在1973年用一個重要的開拓性的方法,Unix被丹尼斯·里奇用程式語言C(內核和I/O例外)重新編寫[12]。高階語言編寫的作業系統具有更佳的相容性,能更容易地移植到不同的電腦平台。
1983年,理察·馬修·斯托曼創立GNU計劃。這個計劃有一個目標,是為了發展一個完全自由的類Unix作業系統。自1984年發起這個計劃以來[13],在1985年,理察·馬修·斯托曼發起自由軟件基金會並且在1989年撰寫GPL。1990年代早期,GNU開始大量地產生或收集各種系統所必備的元件,像是——函式庫、編譯器、偵錯工具、文字編輯器,以及一個Unix的用戶介面(Unix shell)——但是像一些底層環境,如硬件驅動、守護進程、系統內核(kernel)仍然不完整和陷於停頓,GNU計劃中是在Mach微內核的架構之上開發系統內核,也就是所謂的GNU Hurd,但是這個基於Mach的設計異常複雜,發展進度則相對緩慢。[14]林納斯·托瓦茲曾說過如果GNU內核在1991年時可以用,他不會自己去寫一個。[15]
386BSD涉及的法律問題直到1992年還沒有解決,NetBSD和FreeBSD是386BSD的後裔,早於Linux。林納斯·托瓦茲曾說,當時如果有可用的386BSD,他就可能不會編寫Linux。[16]
MINIX是一個輕量小型並採用微內核(Micro-Kernel)架構的類Unix作業系統,是安德魯·斯圖爾特·塔能鮑姆為在電腦科學用作教學而設計的。
1991年,林納斯·托瓦茲在赫爾辛基大學上學時,對作業系統很好奇[17]。他對MINIX只允許在教育上使用很不滿(在當時MINIX不允許被用作任何商業使用),於是他便開始寫他自己的作業系統,這就是後來的Linux內核。
林納斯·托瓦茲開始在MINIX上開發Linux內核,為MINIX寫的軟件也可以在Linux內核上使用。[18]後來使用GNU軟件代替MINIX的軟件,因為使用從GNU系統來的原始碼可以自由使用,這對Linux的發展有益。使用GNU GPL協定的原始碼可以被其他項目所使用,只要這些項目使用同樣的協定發佈。為了讓Linux可以在商業上使用,林納斯·托瓦茲決定更改他原來的協定(這個協定會限制商業使用),以GNU GPL協定來代替。[19]之後許多開發者致力融合GNU元素到Linux中,做出一個有完整功能的、自由的作業系統。[14]
Linux的第一個版本在1991年9月被大學FTP server管理員Ari Lemmke發佈在互聯網上,最初Torvalds稱這個內核的名稱為"Freax",意思是自由("free")和奇異("freak")的結合字,並且附上"X"這個常用的字母,以配合所謂的類Unix的系統。但是FTP伺服器管理員嫌原來的命名「Freax」的名稱不好聽,把內核的稱呼改成「Linux」,當時僅有10000行程式碼,仍必須執行於Minix作業系統之上,並且必須使用硬碟開機;隨後在10月份第二個版本(0.02版)發佈,同時這位芬蘭赫爾辛基的大學生在comp.os.minix上發佈一則訊息
Hello everybody out there using minix- I'm doing a (free) operation system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones.
使用minix的各位,大家好。我正在為386(486)AT相容機製作一個(免費的/自由的) 作業系統(僅僅是個人愛好,不會像GNU那樣完善、專業)。
Linux的標誌和吉祥物是一隻名字叫做Tux的企鵝,標誌的由來是因為Linus在澳洲時曾被一座動物園裏的小藍企鵝咬了一口[20],便選擇企鵝作為Linux的標誌,但更容易被接受的說法是:企鵝代表南極,而南極又是全世界所共有的一塊陸地。這也就代表Linux是所有人的Linux。
1994年3月,Linux1.0版正式發佈,Marc Ewing成立Red Hat軟件公司,成為最著名的Linux經銷商之一。早期Linux的開機管理程式(boot loader)使用LILO(Linux Loader),早期的LILO存在着一些難以容忍的缺陷,例如無法識別1024柱面以後的硬碟空間,後來的GRUB(GRand Unified Bootloader)克服這些缺點,具有『動態搜尋內核檔案』的功能,可以讓用戶在開機的時候,自行編輯開機設置系統檔案,透過ext2或ext3檔案系統中載入Linux Kernel(GRUB通過不同的檔案系統驅動可以識別幾乎所有Linux支援的檔案系統,因此可以使用很多檔案系統來格式化內核檔案所在的磁區,並不侷限於ext檔案系統)。
今天由Linus Torvalds帶領下,眾多開發人員共同參與開發和維護Linux內核。[21]理察·斯托曼領導的自由軟件基金會,繼續提供大量支援Linux內核的GNU組件。[22]一些個人和企業開發的第三方的非GNU組件也提供對Linux內核的支援,這些第三方組件包括大量的作品,有內核模組和用戶應用程式和庫等內容。Linux社區或企業都推出一些重要的Linux套件,包括Linux內核、GNU組件、非GNU組件,以及其他形式的軟件套件管理系統軟件。
系統架構
基於Linux的系統是一個模組化的類Unix作業系統。Linux作業系統的大部分設計思想來源於20世紀70年代到80年代的Unix作業系統所建立的基本設計思想。Linux系統使用整塊性核心,由Linux內核負責處理行程控制、網絡,以及外圍裝置和檔案系統的訪問。在系統執行的時候,裝置驅動程式要麼與內核直接整合,要麼以載入模組形式添加。
Linux具有裝置獨立性,它內核具有高度適應能力,從而給系統提供了更進階的功能。GNU用戶介面組件是大多數Linux作業系統的重要組成部分,提供常用的C函式庫,Shell,還有許多常見的Unix實用工具,可以完成許多基本的作業系統任務。大多數Linux系統使用的圖形化使用者介面建立在X Window系統之上,由X窗口(XWindow)系統通過軟件工具及架構協定來建立作業系統所用的圖形化使用者介面。
已安裝Linux作業系統包含的一些組件:
Linux發行版
Linux發行版指的就是通常所說的「Linux作業系統」,它一般是由一些組織、團體、公司或者個人製作並發行的。Linux內核主要作為Linux發行版的一部分而使用。通常來講,一個Linux發行版包括Linux內核,以及將整個軟件安裝到電腦上的一套安裝工具,還有各種GNU軟件,和其他的一些自由軟件,在一些Linux發行版中可能會包含一些專有軟件。發行版為許多不同的目的而製作,包括對不同電腦硬件結構的支援,對普通用戶或開發者使用方式的調整,針對實時應用或嵌入式系統的開發等等。目前,超過三百個發行版被積極的開發,最普遍被使用的發行版有大約十多個。較為知名的有Debian、Ubuntu、Fedora、Red Hat Enterprise Linux、Arch Linux和openSUSE等。[23]
一個典型的發行版包括:Linux內核,GNU函式庫和各種系統工具,命令列Shell,圖形介面底層的X Window系統和上層的桌面環境等。桌面環境有如KDE或GNOME等,並包含數千種從辦公套件,編譯器,文字編輯器,小遊戲,兒童教育軟件,到科學工具的應用軟件。
很多發行版含有LiveCD的方式,就是不需要安裝,放入系統光碟或其它媒介進行啟動,就能夠在不改變現有系統的情況下使用。比較著名的有MX Linux、PCLinuxOS等。LiveCD的相關技術進步至此,很多的發行版本身的安裝光碟也有LiveCD的功能。
Linux的應用
今天各種場合都有使用各種Linux套件,從嵌入式裝置到超級電腦(Super Computer),[24][25]並且在伺服器領域確定了地位,通常伺服器使用LAMP組合。[26]基於其低廉成本與高度可設置性,Linux常常被應用於嵌入式系統,例如機頂盒、流動電話及流動裝置等。在流動電話上,基於Linux的Android已經成為IOS的主要競爭者;而在流動裝置上,則成為Windows CE與Palm OS之外另一個選擇。目前流行的TiVo數碼攝影機使用了經過客製化後的Linux。此外,有不少硬件式的網絡防火牆及路由器,例如部份LinkSys的產品,其內部都是使用Linux來驅動、並採用了作業系統提供的防火牆及路由功能。
大多數廣泛使用的自由軟件都有Windows平台版本和相應的Linux版本,例如LibreOffice、Mozilla Firefox、Apache OpenOffice、Pidgin、VLC、GIMP、Blender;部分流行的專有軟件也有相應的Linux版本,如Adobe Flash Player、Adobe Reader、Google Earth、Nero Burning ROM、Opera、Maple、MATLAB、Skype、Maya、SPSS、Google Chrome。
目前仍有較多能在Windows或Mac OS上執行的應用軟件沒有Linux的版本,不過在Linux平台上通常可以找到類似功能的應用軟件。Linux使用的增多也使得Windows開源軟件(Open Source)向Linux移植,比如Filezilla。Linux下也有相當多不能在Windows平台下執行的軟件,主要是依靠X Window系統和其他Windows無法利用的資源,或者是因為穩定性等其他方面的考慮並不準備支援Windows。
另外,相當多的Windows應用程式可以通過Wine和一些基於Wine的項目如CrossOver正常運行和工作。如Microsoft Office、Adobe Photoshop、暴雪娛樂的遊戲、Picasa其中對於Photoshop的Crossover(Wine)相容性工作有Disney、DreamWorks、Pixar投資支援,等。Google大力參與Wine項目改進,Picasa的GNU/Linux版本也是經Wine測試的Windows平台編譯版本。[27]
Linux發行版同樣在NetBook市場很受歡迎,像ASUS Eee PC和Acer Aspire One,銷售時安裝有訂製的Linux發行版。
Linux套件一直被用來作為伺服器的作業系統,並且已經在該領域中佔據重要地位。根據2006年9月Netcraft的報告顯示,十個最大型的網絡寄存公司有八個公司基於Linux套件執行其Web伺服器。
Linux套件是構成LAMP(Linux,Apache,MySQL,Perl / PHP / Python)的重要部分,現在更為常見的是 LNMP(N指Nginx);極低的硬件需求使 LAMP/LNMP 成為一個常見的網站寄存平台,在開發者中普遍使用。對應Windows則有XAMPP。
由於其Linux內核對非統一主記憶體訪問(NUMA)的原生支援,Linux套件也經常被作為超級電腦的作業系統。2010年11月公佈的超級電腦前500強,有459個(91.8%)執行Linux套件[28]。曾經是世界上最強大的超級電腦[29]——IBM的紅杉(IBM Sequoia),已於2011年交付勞倫斯利福摩爾國家實驗室,並於2012年6月開始運作,也是選擇Linux作為作業系統。[30]
在智能電話、平板電腦等流動裝置方面,Linux也得到重要發展,基於Linux內核的Android作業系統已經超越Apple的iOS作業系統,成為當今全球最流行的智能電話作業系統。在2010年第三季度,銷售全球的全部智能電話中使用Android的佔據25.5%(所有的基於Linux的手機作業系統在這段時間為27.6%)。
從2007年起,手機和掌上電腦上執行基於Linux的作業系統變得更加普遍,例如:OpenMoko的Neo1973、摩托羅拉的ROKR E8。Palm(後來被HP公司收購)推出了一個新的基於Linux的webOS作業系統,並使用在新生產的Palm Pre智能電話上。
Maemo是諾基亞基於Linux Kernel、X11、QT技術開發的手機系統。裝置包括平板如諾基亞 N800、諾基亞 N810(maemo4)、較為人熟知的是 N900(maemo5)。
MeeGo為Maemo的繼任者,由諾基亞和英特爾於2010年2月聯合推出,諾基亞也推出了使用MeeGo作業系統的N9手機。2011年9月28日,繼諾基亞宣佈放棄開發MeeGo之後,英特爾也正式宣佈將MeeGo與LiMo合併成為新的系統Tizen。Jolla Mobile公司成立並推出了由MeeGo發展而來的Sailfish作業系統。
Firefox OS [31]為Mozilla於2012年推出基於Linux內核的作業系統。
Linux的低成本、強大的客製化功能以及良好的移植效能,使得Linux在嵌入式系統方面也得到廣泛應用。流行的TiVo數碼影片錄像機還採用了客製化的Linux,思科在網絡防火牆和路由器也使用了客製化的Linux。Korg OASYS、Korg的KRONOS、雅馬哈的YAMAHA MOTIF XS/Motif XF音樂工作站、雅馬哈的S90XS/S70XS、雅馬哈MOX6/MOX8次合成器、雅馬哈MOTIF-RACK XS音源模組,以及Roland RD-700GX數碼鋼琴均執行Linux。Linux也用於舞臺燈光控制系統,如WholeHogIII控制台。
Linux發行版在各地和各國政府中日益受到歡迎。有訊息指出,俄羅斯軍方正在創建自己的Linux發行版,並已有G.H.ost項目作為成果。印度Kerala州甚至已經規定所有州立高中的電腦都必須運行Linux。中國專門使用Linux作為其龍芯處理器家族的操作系統,以實現技術獨立。在西班牙,一些地區開發了自己的Linux發行版,在教育和官方機構中被廣泛使用,例如埃斯特雷馬杜拉的gnuLinEx和安達盧西亞的Guadalinex。法國和德國也開始採用Linux。朝鮮的Red Star OS,從2002年開始開發,基於Fedora Linux的一個版本。
市場普及和份額
傳統的Linux用戶一般都是專業人士。他們願意安裝並設置自己的作業系統,往往比其他作業系統的用戶花更多的時間在安裝並設置自己的作業系統。這些用戶有時被稱作「黑客」或是「極客」。使用Linux主要的成本為移植、培訓和學習的費用,早期由於會使用Linux的人較少,並且在軟件設計時並未考慮非專業者的使用,導致這方面費用極高。但這方面的費用已經隨着Linux的日益普及和Linux上的軟件越來越多、越來越方便而降低,但專業仍是使用Linux的主要成本。
Linux在歐洲、美國和日本的流行程度較高,歐美地區還發行Linux平台的遊戲和其他家用軟件。Linux開源社群方面也是以歐洲、美國、日本等發達國家的人士居多。在家庭與企業中使用Linux套件的情況越來越多。[32][33][34][35][36][37][38]整個亞洲,比較缺乏對Linux的支援,硬件和應用程式皆只考量微軟作業系統設計的需求。例如:Internet Explorer及ActiveX需求、Microsoft Office相容性、網絡遊戲以及一般用戶都傾向於使用Windows。轉換作業系統的開銷在於,自由開源意識形態與商業用途的衝突、缺乏強而有力的推廣廠商、缺乏對特殊的硬件和應用程式的支援、電腦技術人員不願再花費時間重覆學習、對已有平台的依賴,是制約Linux被採納的主要因素。
然而隨着Linux慢慢開始流行,有些原始裝置製造商(OEM)開始在其銷售的電腦上預裝上Linux,Linux的用戶中也有了普通電腦用戶,Linux系統也開始慢慢出現在個人電腦作業系統市場。儘管目前大部分的手提電腦搭載Windows系統,目前仍有一些手提電腦預設搭載Linux系統,如Musicha 音創手提電腦預設搭載Ubuntu Mate。近年來,Linux下常見的部份軟件也開始不斷向Windows移植。有如KDE SC、Cinepaint正在進行向Windows的移植。
很多開源軟件的定量研究聚焦在市場佔有率(雖然多數不算作市場中的商品)和可靠性,包括數不清的Linux分析報告。Linux份額成長迅速。IDC的2008年第二季度報告指出,Linux在所有伺服器市場的市佔率已經達到29%,比該研究機構在2007年的調查大幅增加了12個百分點。這個估計數字基於Linux伺服器的銷售額。所以,Linux的市佔率是不可小覷的。Netcraft報告,在2010年二月,每10台可靠的伺服器中Linux發行版佔6台,FreeBSD佔2台,Windows佔1台。而Debian、CentOS兩個至關重要的發行版並不銷售。
Linux在政府中也很受歡迎,巴西聯邦政府因支援Linux而世界聞名。[39][40]有新聞報導俄羅斯軍隊自己製造的Linux發行版,做為G.H.ost項目已經取得成果。[41]印度的喀拉拉邦計劃在向全聯邦的高中推廣使用Linux。[42][43]中華人民共和國為取得技術獨立,在龍芯過程中排他性地使用Linux。[44] 在西班牙的一些地區開發了自己的Linux發行版,並且在政府與教育領域廣泛使用,如埃斯特雷馬杜拉地區的gnuLinEx和安達盧西亞地區的Guadalinex。葡萄牙同樣使用自己的Linux發行版Caixa Mágica,用於Magalhães手提電腦[45]和e-escola政府軟件。[46]法國和德國同樣開始逐步採用Linux。[47]
每個孩子一台手提電腦這一項目正在催生新的更為龐大的Linux用戶群,計劃將包括發展中國家的幾億學童、他們的家庭和社區。在2007年,已經有六個國家訂購了至少每個國家一百萬台以上免費發放給學生。Google、Red Hat和eBay是該項目的主要支持者。
版權,商標和命名
Linux的註冊商標是Linus Torvalds所有的。這是由於在1996年,一個名字叫做William R. Della Croce的律師開始向各個Linux發佈商發信,聲明他擁有Linux商標的所有權,並且要求各個發佈商支付版稅,這些發行商集體進行上訴,要求將該註冊商標重新分配給Linus Torvalds。Linus Torvalds一再聲明Linux是自由且免費的,他本人可以賣掉,但Linux絕不能賣。
「GNU/Linux」此名稱是GNU計劃的支持者與開發者,特別是其創立者理察·斯托曼對於Linux作業系統的主張。由於此類作業系統使用了眾多GNU程式,包含Bash(Shell程式)、函式庫、編譯器等等作為Linux內核上的系統套件,理察·斯托曼認為應該將該作業系統稱為「GNU/Linux」或「GNU+Linux」較為恰當,但現今多數人仍稱其為Linux。就1997年之前的Linux來看,一間CD-ROM的供應商所提供的資料顯示在他們的「Linux 發行版」中,GNU 軟件所佔最大的比重,大約佔全部原始碼的28%,且還包括一些關鍵的部件,如果沒有這些部件,系統就無法工作,而Linux 本身佔大約3%。[48]
Linux社群中的一些成員,如埃里克·雷蒙、林納斯·托瓦茲等人,偏好Linux的名稱,認為Linux朗朗上口,短而好記,拒絕使用「GNU/Linux」作為作業系統名稱。並且認為Linux並不屬於GNU計劃的一部份,斯托曼直到1990年代中期Linux開始流行後才要求更名。有部分Linux套件,如Debian,採用了「GNU/Linux」的稱呼。但大多數商業Linux套件依然將作業系統稱為Linux。而有些人則認為「作業系統」一詞指的只是系統的內核(Kernel),其他程式都只能算是應用軟件,因而,該作業系統應叫Linux,但Linux系統套件是在Linux內核的基礎上加入各種GNU軟件套件集合而成的。
在這兩個主要名稱之外,也有其他名稱的提議。1992年,Yggdrasil Linux主張命名為Linux/GNU/X,因為除了GNU計劃軟件之外,很多Linux還採用了X視窗系統。
評價
- 開放原始碼的Linux可以讓知識延續下去,新興的軟件公司可以從開放原始碼上快速、低價的建立專業能力,豐富市場的競爭,防止獨霸軟件巨獸的存在。
- 個人使用很少有版權問題,絕大多數都是免費使用,幾乎無所謂盜版問題。
- 新的Linux發行版大多數軟件都有伺服器的服務,只要點擊就可以自動下載、安裝經過認證的軟件,不需要到市面購買、安裝。
- Linux學習的投資有效時間較長。舊版軟件、系統都還是存在,有原始碼可以衍生、分支,維護週期普遍比Windows長很多。就算被放棄,還是可以憑藉原始碼衍生。新的軟件更新發展多樣化,容易養成用戶習慣掌握原理,而不是養成操作習慣。
- 強大的Shell及指令碼支援,容易組合出符合需求的環境或創造自動程式。
- 預設安全設置相對於目前主流的Windows作業系統安全很多。[49]Windows作業系統為了非專業用戶降低了預設安全性的設置,導致系統容易受到木馬、病毒的侵害。盜版的Windows更糟糕,可能隨盜版作業系統捆綁木馬、惡意程式,部分預設超級用戶(Administrator)登入、關閉安全更新等問題導致安全性更差。
參考文獻
參見
外部連結
Wikiwand in your browser!
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.