Linux筆記-Linux操作系統的特點、優點和架構
什麼是Linux?
Linux是一套免費使用和自由傳播的類Unix操作系統,它主要用於基於Intel x86系列CPU的計算機上。這個系統是由全世界各地的成千上萬的程序員設計和實現的,其目的是建立不受任何商品化軟體的版權制約且全世界都能自由使用的Unix兼容產品。
Linux簡史
Linux的出現,最早開始於一位名叫Linus
Torvalds的計算機業餘愛好者,當時他是芬蘭赫爾辛基大學的學生,他的目的是設計一個代替Minix(是由一位名叫Andrew Tannebaum的計算機教授編寫的一個操作系統示教程序)的操作系統,這個操作系統可用於386、486或奔騰處理器的個人計算機上,並且具有Unix操作系統的全部功能,這就開始了Linux雛形的設計。Linux特點
Linux以其高效性和靈活性著稱,它能夠在PC計算機上實現全部的Unix特性,具有多用戶、多任務的能力。Linux是在GNU公共許可許可權下免費獲得的,是一個符合POSIX標準的操作系統。
Linux優點
Linux也是很多計算機愛好者喜歡的,主要原因是:
(1)提供學習、探索以及修改計算機操作系統內核的機會。
操作系統是計算機必不可少的系統軟體,是整個計算機系統的靈魂。每個操作系統都是一個複雜的計算機程序集,它提供操作過程的協議或行為準則;沒有操作系統,計算機就無法工作,就不能解釋和執行用戶輸入的命令或運行簡單的程序。
(2)可以節省大量的資金。
Linux是目前惟一可免費獲得的、為PC機平台上的多個用戶提供多任務、多進程功能的操作系統,這是人們喜歡使用它的主要原因。就PC機平台而言,Linux提供了比其他任何操作系統都要強大的功能,Linux還可以使用戶遠離各種商品化軟體提供者促銷廣告的誘惑,再也不用承受每過一段時間就花錢去升級之苦,因此可以節省大量用於購買或升級應用程序的資金。
(3)豐富的應用軟體。
Linux不僅為用戶提供了強大的操作系統功能,而且還提供了豐富的應用軟體。用戶不但可以從Internet上下載Linux及其源代碼,而且還可以從Internet上下載許多Linux的應用程序。可以說,Linux本身包含的應用程序以及移植到Linux上的應用程序包羅萬象,任何一位用戶都能從有關Linux的網站上找到適合自己特殊需要的應用程序及其源代碼,用戶就可以根據自己的需要下載源代碼,以便修改和擴充操作系統或應用程序的功能。這對Windows 2000、Windows 98、MS-DOS或OS/2等商品化操作系統來說是無法做到的。
(4)使工作方式方便。
儘管Linux只是由計算機愛好者們開發的,但它在很多方面還是相當穩定的,從而為用戶學習和使用目前世界上最流行的Unix操作系統提供了便利的機會。現在有許多CD-ROM供應商和軟體公司(如RedHat、紅旗和Turbo Linux等)支持Linux操作系統。Linux成為Unix系統在個人計算機上的一個代用品,並能用於替代那些較為昂貴的系統。因此,如果一個用戶在公司上班時在Unix系統上編程,或者在工作中是一位Unix的系統管理員,他就可以在家裡安裝一套Unix的兼容系統,即Linux系統,在家中使用Linux就能夠完成一些工作任務。
(5)提供功能強大而穩定的網路服務。
Linux最優秀的功能莫過於其網路功能。首先,它可以支持眾多的網路協議,比如TCP/IP協議、SPX/IPX協議、NETBEUI協議、X.25協議等;其次,Linux可以提供非常廣泛的網路服務,比如WWW、FTP、E-mail、Telnet、NFS、DHCP、Samba、防火牆以及企業的群組服務等,這些功能為Linux提供了無與倫比的網路親和性。
Linux操作系統的架構
Linux一般有四個部分:內核、shell、文件結構和實用工具。
1.內核
內核是系統的心臟,是運行程序和管理像磁碟和印表機等硬體設備的核心程序。
2.shell
Shell是系統的用戶界面,它提供了用戶與內核進行交互操作的一種介面。Shell是一個命令解釋器,它解釋由用戶輸入的命令並把它們送到內核去執行。
Shell有自己的用於對命令進行編程的編程語言,它允許用戶編寫由shell命令組成的程序。
3.文件結構
文件結構是文件存放在磁碟等存儲設備上的組織方法,主要體現在對文件和目錄的組織上。
目錄提供了管理文件的一個方便而有效的途徑,不但能夠從一個目錄切換到另一個目錄,而且可以設置目錄、文件的極限及文件的共享程度。
Linux目錄採用多級樹形結構,用戶可以瀏覽整個系統,可以進入任何一個已授權進入的目錄,並訪問那裡的文件。
4.實用工具
標準的Linux系統都有一套叫做實用工具的程序,它們是專門的程序,例如編輯器、執行標準的計算操作等。另外,用戶也可以產生自己的工具。
一般來講,實用工具可分為以下三類。
(1) 編輯器:用於編輯文件。Linux的編輯器主要有vi、emacs、pico等。
(2) 過濾器:用於接收並過濾數據。
Linux的過濾器(Filter)讀取從用戶文件或其他地方輸入的數據,經檢查和處理後輸出結果。從這個意義上說,它們過濾了經過它們的數據。
Linux有不同類型的過濾器,一些過濾器用行編輯命令輸出一個被編輯的文件;另外一些過濾器是按模式尋找文件並以這種模式輸出部分數據; 還有一些執行字處理操作,檢測一個文件中的格式,輸出一個格式化的文件。
過濾器的輸入可以是一個文件,也可以是用戶從鍵盤鍵入的數據,還可以是另一個過濾器的輸出。過濾器可以相互連接,因此,一個過濾器的輸出可能是另一個過濾器的輸入。在有些情況下,用戶可以編寫自己的過濾器程序。
(3) 交互程序:允許用戶發送信息或接收來自其他用戶的信息。交互程序是用戶與機器的信息介面。Linux是一個多用戶系統,它必須和所有的用戶保持聯繫。
信息可以由系統上的不同用戶發送或接收。
信息的發送有兩種方式:一種方式是與其他用戶一對一地進行對話,另一種方式是一個用戶對多個用戶同時進行通訊,即所謂廣播式通訊。
推薦閱讀:
※Linux系統各種目錄的作用
※可以將一個網頁應用「打包」成一個桌面應用嗎?
※如何選購用於ArchLinux的筆記本?
※Linux性能優化10:理解Linux調度模型
※新手入門應如何選擇 ARM 開發板?