Linux1:Linux概述

五月的倉頡發表於2015-11-01

Linux是什麼

這是一個Linux系列,本系列中的文章和其他系列中的文章有所不同,儘可能以講清楚每一個簡單的知識點為主,未必每一篇都是長篇大論,力求面面俱到。

學習Linux,首先我們得知道Linux是什麼。

人們實際上已經習慣了用Linux這個詞來形容整個基於Linux核心並且使用GNC工程化各種工具和資料庫的作業系統,但嚴格意義上來說,Linux這個詞語本身應當只表示Linux核心,它是一個由C語言編寫的,符合POSIX標準的類Unix作業系統,要下載最新版本的核心可以去http://www.kernel.org下載。

至於Linux核心,我們這麼理解這個問題。作業系統是一個用來和硬體打交道併為使用者程式提供一個有限服務集的低階支撐軟體。一個計算機系統是一個硬體和軟體的共生體,它們互相依賴,不可分割。計算機的硬體,含有外圍裝置、處理器、記憶體、硬碟和其他的電子裝置組成計算機的發動機,但是沒有軟體來操作和控制它,自身是不能工作的。完成這個控制工作的軟體就稱為作業系統,在Linux的屬於中被稱為核心,Linux核心的主要模組分為以下幾個部分:

  • 儲存管理
  • CPU和程式管理
  • 檔案系統
  • 裝置管理和驅動
  • 網路通訊
  • 系統初始化(引導)
  • 系統呼叫等

上面說了Linux是類Unix作業系統,最後說一下Linux和Uninx的區別:Unix本來是免費的,後來商業化了,Unix就不開源了,原來用Unix的就沒法用了,於是芬蘭的一個教授Linus Torvalds開發了一個完全開源且免費的作業系統,就是Linux。

 

Linux發行版

前面說了Linux是完全開源且免費的,由於Linux的優越性,一些組織或廠家,將Linux系統的核心與外圍實用程式軟體和文件包裝起來,並提供一些系統安裝介面和系統配置、設定與管理工具,就構成了一種發行版本(distribution),Linux的發行版本其實就是Linux核心再加上外圍實用程式組成的一個大軟體包而已。相對於Linux作業系統核心版本,發行版本的版本號隨釋出者的不同而不同,與Linux系統核心的版本號是相對獨立的。

但是所有的發行版本都使用的是同一個Linux核心,因此在核心曾不存在什麼相容性問題,每個發行版本都不一樣的感覺,只是在發行版本的最外層才有所體現,而絕不是Linux本身特別是核心不統一或者不相容。

Linux有非常多的發行版本,從性質上劃分,大體分為兩種:

  • 商業版本,由商業公司維護,以Redhat為代表
  • 免費發行版本,由開源社群維護,比較有代表性的有debian、centos、unbuntu

至於debian、centos、unbuntu如何取捨,反正我自己是在阿里雲上買了一臺作業系統為centos的伺服器來學習Linux,後面的文章也都會在我自己的伺服器上操作、分享。unbuntu有比較好的圖形介面,也正因為此,我感覺unbuntu最佳應用領域是桌面作業系統而不是伺服器作業系統,至於centos和debian二者其實都是非常好的,也都有非常多的商業公司生產環境上的伺服器使用這兩種系統,我選擇centos的原因主要是我們公司使用的伺服器也是centos系統的。

 

為什麼伺服器尤其大型伺服器都使用Linux系統

本文相對簡單,最後談一談伺服器尤其是大型伺服器一般都使用Linux系統的幾點原因:

  • 成本低,Linux作業系統是免費的
  • 安全性好,Linux採取了許多的安全措施,包括對讀寫許可權控制、帶保護的子系統、審計跟蹤、核心授權等,為網路多使用者環境中的使用者提供了必要的安全保障
  • 網路功能強大,Linux在通訊和網路功能方面優於其他作業系統
  • 開源性,這意味著管理員可以對系統隨意進行定製

因此,作為一個優秀的程式設計師,不僅要把程式碼寫好,把基於Linux核心的伺服器用好也是非常重要的。

相關文章