2013年9月21日 星期六

第一章、Linux是什麼

  • Linux是什麼

    Linux是核心系統呼叫介面那兩層。
    應用程式不算Linux!這點要特別注意喔! 



 
Torvalds寫出Linux的時候,該核心僅能『驅動386所有的硬體』而已!
由於不同的硬體的功能函數並不相同,
所以同一套作業系統是無法在不同的硬體平台上面運作的!

如果能參考硬體的功能函數並修改你的作業系統程式碼,
那改版後的作業系統就能夠在另一個硬體平台上面運作。
這個動作我們通常就稱為『軟體移植』!







2006年以前蘋果是請IBM公司開發硬體(Power CPU),蘋果則在該硬體架構上發展作業系統(MAC)。
2006年以後,蘋果轉而請Intel設計硬體架構,亦即架構轉為x86系統, 因此在2006年以後的蘋果若使用x86架構時,則『可能』可以安裝Windows作業系統了。

Linux由於是Open Source的作業系統,所以他可以被修改成適合在各種機器上面運行, 也就是說,Linux是具有『可移植性』,這可是很重要的一個功能喔!









  • GPL(GNU General Public License, GPL)
  一個軟體掛上了GPL版權宣告之後,他自然就成了自由軟體!這個軟體就具有底下的特色:
  • 取得軟體與原始碼:你可以根據自己的需求來執行這個自由軟體;
  • 複製:你可以自由的複製該軟體;
  • 修改:你可以將取得的原始碼進行程式修改工作,使之適合你的工作;
  • 再發行:你可以將你修改過的程式,再度的自由發行,而不會與原先的撰寫者衝突;
  • 回饋:你應該將你修改過的程式碼回饋於社群!
但請特別留意,你所修改的任何一個自由軟體都不應該也不能這樣:
  • 修改授權:你不能將一個GPL授權的自由軟體,在你修改後而將他取消GPL授權~
  • 單純販賣:你不能單純的販賣自由軟體。
自由軟體是可以販售的,不過,不可僅販售該軟體,應同時搭配售後服務與相關手冊!



  • 對386硬體的多工測試
要達到多工(multitasking)的環境,除了硬體(主要是CPU)需要能夠具有多工的特性外,作業系統也需要支援這個功能喔!

多工的作業系統中,每個程式被執行時,都會有一個最大CPU使用時間,若該工作運作的時間超過這個CPU使用時間時, 該工作就會先被丟出CPU的運作中,而再度的進入核心工作排程中等待下一次被CPU取用來運作。

因為Linux參考POSIX設計規範,於是相容於Unix作業系統,故亦可稱之為Unix Like的一種。

  • Linux的核心版本
 https://www.kernel.org/
2.6.18-92.el5
主版本.次版本.釋出版本-修改版本
  • 主、次版本為奇數:發展中版本(development)
  • 主、次版本為偶數:穩定版本(stable)
Linux核心版本與distribution (可完整安裝套件,Linux發佈商套件) 的版本並不相同
Linux : 3.11.1
CentOS : 6.4


Linux可完整安裝發佈套件



為了讓所有的Linux distributions開發不致於差異太大,且讓這些開發商在開發的時候有所依據,有Linux Standard Base (LSB)等標準來規範開發者,以及目錄架構的File system Hierarchy Standard (FHS)標準規範!

鳥哥認為distributions主要分為兩大系統,
一種是使用Red HatRPM方式安裝軟體的系統,Red Hat, Fedora, SuSE;
一種則是使用Debian的dpkg方式安裝軟體的系統,Debian, Ubuntu, B2D。



  • Linux在台灣
國人發起的CLE計畫: http://cle.linux.org.tw/ 開發很多的中文套件及翻譯了很多的英文文件,使得我們目前得以使用中文的Linux呢!
如果只想看看Linux的話,可以選擇可光碟開機進入Linux的Live CD版本, 亦即是KNOPPIX這個Linux distributions呢!台灣也有阿里巴巴兄維護的中文Live CD喔!

想要知道更多的Linux distributions的下載與使用資訊,可以參考:
鳥哥的建議
先學習以RPM套件管理為主:RHEL/Fedora/SuSE/CentOS等台灣使用者較多的版本, 更嚴謹的Linux版本:Debian
效能至上: Gentoo

Linux環境下的圖形介面不只有一種呢!
KDE(http://www.kde.org/)
GNOME(http://www.gnome.org)

  • Open Source (開放源碼)
Open source的代表授權為GNU的GPL授權及BSD

  • Close Source
相對於Open Source的軟體會釋出原始碼,Close source的程式則僅推出可執行的二進位程式(binary program)。

優點是有專人維護,你不需要去更動他;
缺點則是靈活度大打折扣,使用者無法變更該程式成為自己想要的樣式!

此外,若有木馬程式或者安全漏洞,將會花上相當長的一段時間來除錯!這也是所謂專利軟體(copyright)常見的軟體出售方式。
雖然專利軟體常常代表就是需要花錢去購買,不過有些專利軟體還是可以免費提供大眾使用的! 免費的專利軟體代表的授權模式有:
  • Freeware
    http://en.wikipedia.org/wiki/Freeware
    不同於Free software,Freeware為『免費軟體』而非『自由軟體!』雖然它是免費的軟體,但是不見得要公布其原始碼, 端看釋出者的意見囉!這個東西與Open Source畢竟是不太相同的東西喔!此外,目前很多標榜免費軟體的程式很多都有小問題! 例如假藉免費軟體的名義,實施使用者資料竊取的目的! 所以『來路不明的軟體請勿安裝!』
  • Shareware
    http://en.wikipedia.org/wiki/Shareware
    共享軟體這個名詞就有趣了!與免費軟體有點類似的是,Shareware在使用初期,它也是免費的,但是, 到了所謂的『試用期限』之後,你就必須要選擇『付費後繼續使用』或者『將它移除』的宿命~ 通常,這些共享軟體都會自行撰寫失效程式,讓你在試用期限之後就無法使用該軟體。


沒有留言:

張貼留言