Linux發展史

Linux發展史

一、歷史

(一)、Unix

1、Unix操作系統是一個強大的多用戶、多任務操作系統,支持多種處理器架構。

2、最早由KenThompson(湯普遜)、Dennis Ritchie(丹尼斯·里奇,C語言之父,Unix之父)和Douglas McIlroy(麥克羅伊,程式設計師)于1969年在AT&T的貝爾實驗室開發。

3、目前它的商標權由國際開放標準組織所擁有,只有符合單一Unix規范的Unix系統才能使用Unix這個名稱,否則只能稱為類Unix(Unix-like。

(二)、GNU

GNU是自由軟件之父Richard Stallman在1984年組織開發的一個完全基于自由軟件的軟件體系,與此相應的有一分通用公共許可證General Public License簡稱GPL)。Linux以及與他有關的大量軟件是在GPL的推動下開發和發布的。

Richard Stallman 還創建了更多的軟件,如:GCC(GNU編譯器套件)、和GDB(UNIX調試工具),在他的倡導下,目前人們熟悉的一些軟件如BIND、Perl、Apache、TCP/IP等都成了自由軟件的經典之作。

(三)、BSD

BSD(Unix的衍生系統),比Linux早。BSD (Berkeley Software Distribution,伯克利軟件套件)是Unix的衍生系統,在1977至1995年間由加州大學伯克利分校開發和發布的。歷史上BSD曾經被認為是UNIX的一支——"BSD UNIX", 因為它和AT&T UNIX操作系統共享基礎代碼和設計。

(四)、Minix

Minix是一種基于微內核架構的類Unix計算機操作系統,由Andrew S. Tanenbaum發明。Minix最初發布于1987年,開放全部源代碼給大學教學和研究工作。2000年重新改為BSD授權,成為自由和開放源碼軟件。

(五)、Linux

1991年,由于計算機硬件工業的強力運作,以Intel主導的x86系統架構的個人計算機大行其道,此時,芬蘭赫爾辛基大學有個叫Linus Torvalds的學生,將0.02版的原始碼hobby放到網絡上面供大家下載,,終于將第一個完整的核心Version 1.0釋出,并且造成目前的大流行。Linus Torvalds將Linux定為同樣造福大家的GNU授權模式!

Linux是Linus Torvalds受到Minix的影響而作成的。在設計哲學上,Linux則和Minix大相逕庭。Minix在內核設計上采用微內核的原則,但Linux則和原始的Unix相同都采用宏內核的概念。在Linux發展之初,雙方還于1992年在新聞組上有過一場精彩的理念爭論。Minix的作者和支持者認為Linux的單內核構造是“向七十年代的大倒退”,而Linux的支持者認為Minix本身沒有實用性。

二、主要特性

(一)、基本思想Linux的基本思想有兩點:

1、一切都是文件。

2、每個軟件都有確定的用途。

其中第一條詳細來講就是系統中的所有都歸結為一個文件,包括:命令、硬件和軟件設備、操作系統、進程等等,對于操作系統內核而言,都被視為擁有各自特性或類型的文件。至于說Linux是基于Unix的,很大程度上也是因為這兩者的基本思想十分相近。

(二)、完全免費

Linux是一款免費的操作系統,用戶可以通過網絡或其它途徑免費獲得,并可以任意修改其源代碼。這是其它操作系統所做不到的。正是由于這一點,來自全世界的無數程序員參與了Linux的修改、編寫工作,程序員可以根據自己的興趣和靈感對其進行改變,這讓Linux吸收了無數程序員的精華,不斷壯大。

(三)、完全兼容POSIX1.0標準

這使得可以在Linux下通過相應的模擬器運行常見的DOS、Windows的程序,這為用戶從Windows轉到Linux奠定了基礎。許多用戶在考慮使用Linux時,就想到以前在Windows下常見的程序是否能正常運行,這一點就消除了他們的疑慮。

(四)、多用戶、多任務

Linux支持多用戶,各個用戶對于自己的文件設備有自己特殊的權利,保證了各用戶之間互不影響。多任務則是現在電腦最主要的一個特點,Linux可以使多個程序同時并獨立地運行。

(五)、良好的界面

Linux同時具有字符界面和圖形界面,在字符界面用戶可以通過鍵盤輸入相應的指令來進行操作。它同時也提供了類似Windows圖形界面的X-Window系統,用戶可以使用鼠標對其進行操作。在X-Window環境中就和在Windows中相似,可以說是一個Linux版的Windows。

(六)、支持多種平臺

Linux可以運行在多種硬件平臺上,如:具有x86、680×0、SPARC、Alpha等處理器的平臺。此外Linux還是一種嵌入式操作系統,可以運行在掌上電腦、機頂盒或游戲機上。2001年1月份發布的Linux 2.4版內核已經能夠完全支持Intel 64位芯片架構,同時Linux也支持多處理器技術。多個處理器同時工作,使系統性能大大提高。

三、Linux內核版本

(1)、Linux內核使用三種不同的版本編號方式。

   用于1.0版本之前(包括1.0)。第一個版本是0.01,緊接著是0.02、0.03、0.10、0.11、0.12、0.95、0.96、0.97、0.98、0.99和之后的1.0。

   用于1.0之后到2.6,數字由三部分“A.B.C”,A代表主版本號,B代表次主版本號,C代表較小的末版本號。只有在內核發生很大變化時(歷史上只發生過兩次,1994年的1.0、1996年的2.0),A才變化??梢酝ㄟ^數字B來判斷Linux是否穩定,偶數的B代表穩定版,奇數的B代表開發版。C代表一些bug修復,安全更新,新特性和驅動的次數。

   以版本2.4.0為例,2代表主版本號,4代表次版本號,0代表改動較小的末版本號。在版本號中,序號的第二位為偶數的版本表明這是一個可以使用的穩定版本,如2.2.5,而序號的第二位為奇數的版本一般有一些新的東西加入,是個不一定很穩定的測試版本,如2.3.1。這樣穩定版本來源于上一個測試版升級版本號,而一個穩定版本發展到完全成熟后就不再發展。

   從2004年2.6.0版本開始,使用一種“time-based”的方式。3.0版本之前,是一種“A.B.C.D”的格式。這些年里,前兩個數字A.B即“2.6”保持不變,C隨著新版本的發布而增加,D代表一些bug修復、安全更新、添加新特性和驅動的次數。3.0版本之后是“A.B.C”格式,B隨著新版本的發布而增加,C代表一些bug修復、安全更新、新特性和驅動的次數。

   第三種方式中不再使用偶數代表穩定版,奇數代表開發版這樣的命名方式。舉個例子:3.7.0代表的不是開發版,而是穩定版!

(2)、Linux發行版

Linux主要作為Linux發行版(通常被稱為”distro”)的一部分而使用。這些發行版由個人、松散組織的團隊、以及商業機構和志愿者組織編寫。它們通常包括了其他的系統軟件和應用軟件,以及一個用來簡化系統初始安裝的安裝工具,和讓軟件安裝升級的集成管理器。大多數系統還包括了像提供GUI界面的XFree86之類的曾經運行于BSD的程序。一個典型的Linux發行版包括:Linux內核、一些GNU程序庫和工具、命令行shell、圖形界面的X Window系統和相應的桌面環境,如:KDE或GNOME,并包含數千種從辦公套件、編譯器、文本編輯器到科學工具的應用軟件。

由于發展的Linux公司實在太多了,例如著名的Red Hat、OpenLinux、Mandrake 、Debian、SuSE等。所以很多人都很擔心,如此一來每個 distribution(安裝套件)是否都不相同呢?這就不需要擔心了,由于各個distribution都是架構在Linux Kernel下來發展屬于自己公司風格的distribution,因此大家都遵守Linux Standard Base ( LSB 的規范,也就是說,各個distribution其實都差不多,用到的都是Linux Kernel,只是各個distribution里面所使用的各套件可能并不完全相同而已)。

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

(0)
tangfeifeitangfeifei
上一篇 2016-10-14
下一篇 2016-10-14

相關推薦

  • Linux磁盤、文件系統管理

    對Linux而言,其哲學思想之一就是一切皆文件,因此Linux之上所有設備的操作都是通過文件接口來實現的,也就是說在訪問設備的時候就如同訪問一個文件一樣,因為他們使用的都是文件系統接口。  設備也分種類,如:     1、塊設備:block 其存取單位是“塊”,如硬盤    &n…

    Linux干貨 2016-08-29
  • 什么是網站流量、UV、PV、IP

    什么是網站流量,什么叫網站流量?     通常說的網站流量(traffic)是指網站的訪問量,是用來描述訪問一個網站的用戶數量以及用戶所瀏覽的網頁數量等指標,常用的統計指標包括網站的獨立用戶數量、總用戶數量(含重復訪問者)、網頁瀏覽數量、每個用戶的頁面瀏覽數量、用戶在網站的平均停留時間等。     …

    Linux干貨 2015-03-20
  • find命令用法詳解

    find

    2017-10-29
  • Linux 第九天: 練習和作業

    Linux 第九天: 練習和作業       編寫腳本/root/bin/systeminfo.sh 顯示當前主機系統信息 包括主機名 ipv4地址 操作系統版本 內核版本 CPU信號 內存大小 硬盤大小 server_ip=`ifconfig|grep'inet\b'|grep -v '…

    Linux干貨 2016-08-15
  • Centos7基于虛擬主機的Lamp配置bbs、Blog、PhpMyAdmin應用程序

    Centos7實現基于虛擬主機的各應用程序搭建: 一、配置三個基于名稱的虛擬主機;      (a) discuzX      (b) wordpress      (c) https: phpMyAdmin 1.安裝Lamp環境及安裝mo…

    Linux干貨 2016-10-09
  • 文本處理工具sed習題

    1、刪除/etc/grub2.cfg文件中所有以空白開頭的行行首空白字符 [root@wzc date]# sed -n 's/^[[:space:]]\+//p' /etc/grub2.cfg load_env set default="${next_entry}&q…

    Linux干貨 2016-08-12
欧美性久久久久