Linux介紹

Linux簡介


Linux是一種自由和開放源代碼的類UNIX操作系統。該操作系統的內核由林納斯·托瓦茲在1991年10月5日首次發布。在加上用戶空間的應用程序之后,成為Linux操作系統。Linux也是自由軟件和開放源代碼軟件發展中最著名的例子。只要遵循GNU通用公共許可證,任何個人和機構都可以自由地使用Linux的所有底層源代碼,也可以自由地修改和再發布。大多數Linux系統還包括像提供GUI的X Window之類的程序。除了一部分專家之外,大多數人都是直接使用Linux發行版,而不是自己選擇每一樣組件或自行設置。 
嚴格來講,術語Linux只表示操作系統內核本身,但通常采用Linux內核來表達該意思。Linux則常用來指基于Linux內核的完整操作系統,包括GUI組件和許多其他實用工具。由于這些支持用戶空間的系統工具和庫主要由理查德·斯托曼于1983年發起的GNU計劃提供,自由軟件基金會提議將該組合系統命名為GNU/Linux,但Linux不屬于GNU計劃,這個名稱并沒有得到社區的一致認同。 
Linux最初是作為支持英特爾x86架構的個人電腦的一個自由操作系統。目前Linux已經被移植到更多的計算機硬件平臺,遠遠超出其他任何操作系統。Linux可以運行在服務器和其他大型平臺之上,如大型主機和超級計算機。世界上500個最快的超級計算機90%以上運行Linux發行版或變種,包括最快的前10名超級電腦運行的都是基于Linux內核的操作系統。Linux也廣泛應用在嵌入式系統上,如手機(Mobile Phone)、平板電腦(Tablet)、路由器(Router)、電視(TV)和電子游戲機等。在移動設備上廣泛使用的Android操作系統就是創建在Linux內核之上。 
通常情況下,Linux被打包成供個人計算機和服務器使用的Linux發行版,一些流行的主流Linux發布版,包括Debian(及其派生版本Ubuntu、Linux Mint)、Fedora(及其相關版本Red Hat Enterprise Linux、CentOS)和openSUSE等。Linux發行版包含Linux內核和支撐內核的實用程序和庫,通常還帶有大量可以滿足各類需求的應用程序。個人計算機使用的Linux發行版通常包含X Window和一個相應的桌面環境,如GNOME或KDE。桌面Linux操作系統常用的應用程序,包括Firefox網頁瀏覽器、LibreOffice辦公軟件、GIMP圖像處理工具等。由于Linux是自由軟件,任何人都可以創建一個匹配自己需求的Linux發行版。

目錄

  • 命名爭論

  •  歷史 
        UNIX 
        GNU 
        BSD 
        MINIX 
        MINIX與Linux 
        Linux 
        發展現狀 

  • 系統架構 

  • Linux發行版 
        組成 
        流行的版本

  •  評價 
        正面 
        負面

命名爭論


“GNU/Linux”是GNU計劃的支持者與開發者,特別是其創立者理查德·斯托曼對于以Linux內核為內核并包含了GNU操作系統軟件包的操作系統的稱呼。由于此類操作系統使用了眾多GNU程序,其中包括Bash(Shell程序)、庫、編譯器(Compiler)等等的許多其他程序。理查德·斯托曼認為應該將該操作系統稱為“GNU/Linux”比較恰當。 
一個 CD-ROM 的提供商發現在他們的“Linux 發行版”中,GNU 軟件所占最大的比重,大約占全部源代碼的28%,且還包括一些關鍵的部件,如果沒有這些部件,系統就無法工作。而Linux 本身占大約3%。正因為如此,GNU計劃的開創者理查德·馬修·斯托曼推薦將Linux操作系統稱為GNU/Linux或GNU+Linux。但多數人仍然習慣性地使用“Linux”。 
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視窗系統。

歷史


UNIX 
UNIX操作系統(英語:UNIX),是美國AT&T公司貝爾實驗室于1969年完成的操作系統。最早由肯·湯普遜(Ken Thompson),丹尼斯·里奇(Dennis Ritchie),道格拉斯·麥克羅伊(Douglas McIlroy),和喬伊·歐桑納于1969年在AT&T貝爾實驗室開發。于1971年首次發布,最初是完全用匯編語言編寫,這在當時是一種普遍的做法。后來,在1973年用一個重要的開拓性的方法,Unix被丹尼斯·里奇用編程語言C(內核和I/O例外)重新編寫。高級語言編寫的操作系統具有更佳的兼容性,能更容易地移植到不同的計算機平臺。

GNU

Richard_Matthew_Stallman_cropped.jpeg

理查德·馬修·斯托曼(Richard M. Stallman),GNU計劃的創立者。

1983年,理查德·馬修·斯托曼創立GNU計劃。這個計劃有一個目標,是為了發展一個完全自由的類Unix操作系統。自1984年發起這個計劃以來,在1985年,理查德·馬修·斯托曼發起自由軟件基金會并且在1989年撰寫GPL。1990年代早期,GNU開始大量的產生或收集各種系統所必備的組件,像是——庫、編譯器、調試工具、文本編輯器、網頁服務器,以及一個Unix的用戶界面(Unix shell)——但是像一些底層環境,如硬件驅動、守護進程運行內核(kernel)仍然不完整和陷于停頓,GNU計劃中是在馬赫微核(Mach microkernel)的架構之上開發系統內核,也就是所謂的GNU Hurd,但是這個基于Mach的設計異常復雜,發展進度則相對緩慢。林納斯·托瓦茲曾說過如果GNU內核在1991年時可以用,他不會自己去寫一個。

BSD 
386BSD因為法律問題直到1992年還沒有發布,NetBSD和FreeBSD是386BSD的后裔,早于Linux。林納斯·托瓦茲曾說,當時如果有可用的386BSD,他就可能不會編寫Linux。

MINIX 
MINIX是一個輕量小型并采用微內核(Micro-Kernel)架構的類Unix操作系統,是安德魯·斯圖爾特·塔能鮑姆為在計算機科學用作教學而設計的。

MINIX與Linux 
1991年,林納斯·托瓦茲在赫爾辛基大學上學時,對操作系統很好奇。他對MINIX只允許在教育上使用很不滿(在當時MINIX不允許被用作任何商業使用),于是他便開始寫他自己的操作系統,這就是后來的Linux內核。

Linux 
在1991年,林納斯·托瓦茲開始在MINIX上開發Linux內核,為MINIX寫的軟件也可以在Linux內核上使用。后來使用GNU軟件代替MINIX的軟件,因為使用從GNU系統來的源代碼可以自由使用,這對Linux的發展是有益。使用GNU GPL協議的源代碼可以被其他項目所使用,只要這些項目使用同樣的協議發布。為了讓Linux可以在商業上使用,林納斯·托瓦茲決定更改他原來的協議(這個協議會限制商業使用),以GNU GPL協議來代替。之后許多開發者致力融合GNU元素到Linux中,做出一個有完整功能的、自由的操作系統。 
Linux的第一個版本在1991年9月被大學FTP server管理員Ari Lemmke發布在Internet上,最初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. 
1994年3月,Linux1.0版正式發布,Marc Ewing成立Red Hat軟件公司,成為最著名的Linux經銷商之一。

Unix_timeline.en.svg.png

Unix & Linux歷史源流

早期Linux的開機管理程序(boot loader)使用LILO(Linux Loader),早期的LILO存在著一些難以容忍的缺陷,例如無法識別1024柱面以后的硬盤空間,后來的GRUB(GRand Unified Bootloader)克服這些缺點,具有‘動態搜索內核文件’的功能,可以讓用戶在開機的時候,自行編輯開機設置系統文件,通過ext2或ext3文件系統中加載Linux Kernel(GRUB通過不同的文件系統驅動可以識別幾乎所有Linux支持的文件系統,因此可以使用很多文件系統來格式化內核文件所在的扇區,并不局限于ext文件系統)。 
Linux的標志和吉祥物是一只名字叫做Tux的企鵝,標志的由來是因為Linus在澳洲時曾被一只動物園里的企鵝咬了一口,便選擇企鵝作為Linux的標志。更容易被接受的說法是:企鵝代表南極,而南極又是全世界所共有的一塊陸地。這也就代表Linux是所有人的Linux。

發展現狀 
今天由Linus Torvalds帶領下,眾多開發共同參與開發和維護Linux內核。理查德·斯托曼領導的自由軟件基金會,繼續提供大量支持Linux內核的GNU組件。一些個人和企業開發的第三方的非GNU組件也提供對Linux內核的支持,這些第三方組件包括大量的作品,有內核模塊和用戶應用程序和庫等內容。Linux社區或企業都推出一些重要的Linux發行版,包括Linux內核、GNU組件、非GNU組件,以及其他形式的的軟件包管理系統軟件。


系統架構


基于Linux的系統是一個模塊化的類Unix操作系統。Linux操作系統的大部分設計思想來源于20世紀70年代到80年代的Unix操作系統所創建的基本設計思想。Linux系統使用宏內核,由Linux內核負責處理進程控制、網絡,以及外圍設備和文件系統的訪問。在系統運行的時候,設備驅動程序要么與內核直接集成,要么以加載模塊形式添加。 
Linux具有設備獨立性,它內核具有高度適應能力,從而給系統提供了更高級的功能。GNU用戶界面組件是大多數Linux操作系統的重要組成部分,提供常用的C函數庫,shell,還有許多常見的Unix實用工具,可以完成許多基本的操作系統任務。大多數Linux系統使用的圖形用戶界面創建在X窗口系統之上,由X窗口(XWindows)系統通過軟件工具及架構協議來創建操作系統所用的圖形用戶界面。 
已安裝Linux操作系統包含的一些組件: 

  •         啟動程序——例如GRUB或LILO。該程序在計算機開機啟動的時候運行,并將Linux內核加載到內存中。

  •         init程序。init是由Linux內核創建的第一個進程,稱為根進程,所有的系統進程都是它的子進程,即所有的進程都是通過init啟動。init啟動的進程如系統服務和登錄提示(圖形或終端模式的選擇)。 

  •           軟件庫包含代碼,可以通過運行的進程。在Linux系統上使用ELF格式來執行文件,負責管理庫使用的動態鏈接器是“ld-linux.so”。Linux系統上最常用的軟件庫是GNU C庫。

  •          用戶界面程序,如命令行shell或窗口環境。


Linux發行版


Linux 發行版(英語:Linux distribution,也被叫做GNU/Linux 發行版),為一般用戶預先集成好的Linux操作系統及各種應用軟件。一般用戶不需要重新編譯,在直接安裝之后,只需要小幅度更改設置就可以使用,通常以軟件包管理系統來進行應用軟件的管理。Linux發行版通常包含了包括桌面環境、辦公包、媒體播放器、數據庫等應用軟件。這些操作系統通常由Linux內核、以及來自GNU計劃的大量的函數庫,和基于X Window的圖形界面。有些發行版考慮到容量大小而沒有預裝 X Window,而使用更加輕量級的軟件,如:busybox, uclibc 或 dietlibc?,F在有超過300個Linux發行版(Linux發行版列表)。大部分都正處于活躍的開發中,不斷地改進。 
由于大多數軟件包是自由軟件和開源軟件,所以Linux發行版的形式多種多樣——從功能齊全的桌面系統以及服務器系統到小型系統 (通常在嵌入式設備,或者啟動軟盤)。除了一些定制軟件 (如安裝和配置工具),發行版通常只是將特定的應用軟件安裝在一堆函數庫和內核上,以滿足特定用戶的需求。 
這些發行版可以分為商業發行版,比如Fedora(Red Hat)、openSUSE(Novell)、Ubuntu(Canonical公司)和Mandriva Linux;和社區發行版,它們由自由軟件社區提供支持,如Debian和Gentoo;也有發行版既不是商業發行版也不是社區發行版,其中最有名的是Slackware。

組成 
一個典型的Linux桌面發行版包括一個Linux 內核,來自GNU的工具和庫,和附加的軟件、文檔,還有一個窗口系統,窗口管理器,和一個桌面環境。大部分包括的軟件是自由軟件/開源軟件,它們同時以二進制可執行文件和源代碼形式發布,只要用戶愿意,還允許修改和重新編譯源代碼。還有一些可能是專有軟件而不提供源代碼。 
許多發行版像其他現代操作系統一樣提供了一個安裝系統定制的發行版像Gentoo Linux, T2 和 Linux From Scratch 提供所有軟件的源代碼以及最基本的內核、編譯器、定制工具、安裝工具等的可執行文件。安裝程序針對用戶不同的CPU編譯成不同的文件。

流行的發行版


評價

正面 

  • 開放源代碼的Linux可以讓知識延續下去,新興的軟件公司可以從開放源代碼上快速、低價的創建專業能力,豐富市場的競爭,防止獨霸軟件巨獸的存在。

  • 個人使用很少有版權問題,絕大多數都是免費使用,幾乎無所謂盜版問題。

  • 新的Linux發行版大多數軟件都有服務器的服務,只要點擊就可以自動下載、安裝經過認證的軟件,不需要到市面購買、安裝。

  • Linux學習的投資有效時間較長。舊版軟件、系統都還是存在,有源代碼可以派生、分支,維護周期普遍比Windows長很多。就算被放棄,還是可以憑借源代碼派生。新的軟件更新發展多樣化,容易養成用戶習慣掌握原理,而不是養成操作習慣。

  • 強大的Shell腳本支持,容易組合出匹配需求的環境或創造自動程序。

  • 默認安全設置相對于目前主流的Windows操作系統安全很多。Windows操作系統為了非專業用戶降低了默認安全性的設置,導致系統容易受到木馬、病毒的侵害。盜版的Windows更糟糕,可能隨盜版操作系統捆綁木馬、惡意程序,部分默認超級用戶(Administrator)登錄、關閉安全更新等問題導致安全性更差。

負面

  • BSD的開發人員曾經批評過Linux內核開發人員過于重視新功能的添加而不是踏踏實實的把代碼寫好、整理好。

  • Solaris系統管理員則認為SMF、ZFS、DTrace等Solaris特有工具使得Solaris比Linux更加優秀。

  • Minix愛好者認為微內核是將來技術發展的方向,Linux在技術上是落伍陳舊的。(參見塔能鮑姆-林納斯辯論

  • 軟硬件支持性較差。大部分的軟、硬件廠商沒有或者不會優先開發Linux平臺的版本,或者Linux平臺的版本功能較少,致使可用的應用程序、硬件周邊支持性相較于WindowsMac平臺差。

  • 相當多的發行版(超過200個以上),使程序開發者無法針對所有發行版做測試,使用Linux平臺的應用軟件安裝在非主流發行版可能遭遇預料之外的問題或甚至于無法使用。

  • Linux系統及相關應用軟件主要是由黑客程序員及其它Linux愛好者共同合作開發出來的,所以缺少了商業軟件基于商業利益而調整操作界面使之更適合不同用戶的行為。對Linux使用方式的不習慣,以及不同軟件操作方式缺乏一致性使得用戶產生Linux系統難以使用的感受。

原創文章,作者:N24_Daniel,如若轉載,請注明出處:http://www.www58058.com/55237

(0)
N24_DanielN24_Daniel
上一篇 2016-10-28
下一篇 2016-10-28

相關推薦

  • Linux發展史

    Linux發展史 Linux的簡單介紹 Linux操作系統誕生于1991 年,是一套免費使用和自由傳播的類Unix操作系統。Linux存在著許多不同的Linux發行版本。嚴格意義上的Linux系統應該是GUN/Linux(kernel+Application)而Linux本身只表示Linux系統內核,但實際上人們已經習慣了用Linux稱呼GUN/Linux系…

    Linux干貨 2016-10-13
  • 路徑別名的配置

    創建bbs目錄,在里面創建html文件 [root@bluee logs]# cd /www/htdocs [root@bluee htdocs]# ls index.html [root@bluee htdocs]# mkdir bbs [root@bluee htdocs]# vim bbs/index.html [root@bluee htdocs]#…

    Linux干貨 2016-08-05
  • Tomcat安裝及簡單配置

    安裝jdk: [root@stu ~]# rpm -ivh jdk-7u9-linux-x64.rpm #此為安裝官方的版本(c6已經使用了openjdk)報錯不用關心 查看安裝位置: [root@stu ~]# rpm -ql jdk 目錄: [root@stu&nb…

    Linux干貨 2016-07-19
  • vim編輯器

    vim編輯器: 文本編輯器:文本,純文本,ASCII text;Unicode; 文本編輯種類:                 行編輯器:sed                全屏編輯器:…

    2017-04-17
  • Linux文件類型以及顏色標識

    1、Linux文件類型介紹   Linux系統不同于window系統,兩者文件類型也有很大的差異。Linux文件類型和Linux文件的文件名所代表的意義是兩個不同的概念。我們通過一般應用程序而創建的比如file.txt、file.tar.gz,這些文件雖然要用不同的程序來打開,但放在Linux文件類型中衡量的話,大多是常規文件(也被稱為普…

    Linux干貨 2016-10-17
  • Linux終端類型

    前言 終端是一個很重要的外設,用過終端設備的人都知道如果設備類型不對就會有亂字符,也可用仿真終端軟件如netterm試驗一下,Linux的終端信息放在 /usr/share/terminfo下,在這個目錄的子目錄v下就有許多的如vt100,vt102,vt200等,看一下就知道了。 終端類型的區別與概念 1、 pty(虛擬終端): 但是如果我們遠程telne…

    Linux干貨 2016-10-14

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-11-02 16:03

    加入了一些自己的理解,不錯,希望可以將這段發展史熟知,加油,加油!

欧美性久久久久