那麼作業系統裡面含有什麼東西呢?簡單的來說,作業系統主要分為兩個東西,一個是『核心』、一個是『一堆核心提供的工具』我們以使用者常使用的 Windows 電腦來做一個簡單的說明好了。大家應該都使用過 Windows 電腦裡面的檔案總管吧?那麼當你開啟檔案總管的時候,他是否會顯示你硬碟當中的資料?
這個顯示硬碟裡面的資料,就是『核心』幫你做的,但是,你要核心去顯示硬碟哪一個目錄下的資料,則是由『檔案總管』這個『工具』幫你達成的!這樣可以理解嗎?再來,如果您曾經使用過 Windows 2000 或 Windows XP 的話,那就更好了!你就應該聽過有所謂的『FAT32 與 NTFS 檔案格式』吧?
在 Windows 98 這個早期的 Windows 版本中,他並無法讀取或者是找到 Windows XP 的 NTFS 檔案格式的硬碟,為什麼呢?因為他的『核心』本來就不認識 NTFS 啊!所以,即使你有檔案總管,但是由於核心根本不認識 NTFS ,所以,檔案總管也是沒有能力幫你達到你想要做的事情!這樣應該就更清楚了吧?
沒錯!你的整個硬體是由核心來管理的,而如果核心不認識你的硬體,那麼你將無法使用該硬體設備,例如上面提到的 NTFS 檔案格式的硬碟!核心就是『 Kernel 』,他是一個作業系統的最底層的東西,由他來掌管整個硬體資源的工作狀態,而 Linux 有 Linux 自己的核心, Windows 也有他自己的核心。
要談到 Linux 如何學習之前,我們得就 Linux 目前的一般應用來說明一下,才好理解您需要什麼樣的學習方式!
桌上型電腦:
所謂的桌上型電腦就是一般使用者在螢幕前面工作時候的常見的作業系統了!我們稱之為『Desktop』系統,就是簡稱的桌上型電腦了!說到桌上型電腦就不能不提一下 X-Window System 。
由前一章提到的 Unix 與 Linux 的歷史中,我們知道在 1986 年美美的視窗畫面就已經在 Unix 上面出現過了,那個時候視窗畫面被簡稱為 X 系統,而後來到了 1994 年的時候正式被整合在 Linux 裡頭!至於微軟的 Windows 則是在 1995 年才出現!
所謂的 X Window System 就是以 XFree86 這個計畫釋出的 X11 這個視窗軟體為管理顯示核心的一套視窗介面的軟體,我們常常簡稱他為圖形使用者介面( Graphical User Interface )。
這個 XFree86 只是 Linux 核心上面的一套軟體而已,他主要的工作就是管理圖形介面輸出的時候,幾乎所有顯示相關的硬體的控制,例如顯示卡、螢幕、鍵盤、滑鼠、等等,都是 XFree86 管理的!或者,我們可以稱 XFree86 為 X-Window System 的伺服器,簡稱為 X Server 。
至於我們所看到的美美的視窗畫面,則是使用 X Server 提供的顯示相關硬體的功能,來達到圖形顯示的『視窗管理員( Window Mananger, WM )』所發揮的能力啦!這也就是說, WM 是掛在 X Server 上面來運作的一套顯示視窗介面的軟體,例如我們常見的 KDE, GNOME 等等都是 WM。
那麼這個桌上型電腦平時都在幹些什麼?簡單的說,桌上型電腦的日常工作是:
上網瀏覽;
文書處理;
網路介面之公文處理系統;
辦公室軟體( Office Software )處理資料;
收發電子郵件;
大致上就是這些工作囉!在這些工作中, Linux 有美麗的圖形介面 X Window System 提供良好的使用者介面 ( GUI ) ,此外,目前發展中的 WM 也都具有中文化的功能!
至於 Office 軟體則有類似 Open Office 的軟體支援,所以,基本上在桌上型電腦型態的使用中, Linux 已經足以應付大部分的上班族群的工作了。
例如我們研究室目前就要將 Sun Unix 上面執行的大型模式移轉到 Linux 上面,據美國環保署內部人員的測試,發現 Linux 不但比較便宜 ( X86 系統嘛! )而且速度還比較快呢!
網路伺服器:
承襲了 Unix 的良好傳統, Linux 上面的網路功能特別的強大!此外,由於 GNU 計畫,讓 Linux 上面的伺服器軟體幾乎都是免費的!因此,做為一部網路伺服器,例如 WWW, Mail Server, File Server, FTP Server 等等, Linux 絕對是上上之選!
而要讓這些嵌入式系統能夠動作,自然就需要製作一套簡單的作業系統囉,這個時候,可修改核心讓功能變簡單的 Linux 則是很好的選擇。因此,近年來有相當多的嵌入式系統選擇 Linux 做為發展的平台呢!
什麼?學 Linux 還得要玩硬體?!』呵呵!沒錯!Linux 與微軟 Windows 在硬體之認知上有相當大不同的差異!其實由前面『 Linux 是什麼 』那個章節中您或許已經知道了, Linux 其實主要就是那個『核心』囉,而『核心』的功能就是在管理硬體囉,所以,作業系統與硬體本來就具有很高的相關性的!
此外,由於每個人的主機用途都不一樣,例如有的人把 Linux 主機當作頻寬分享的工具,有的人將 Linux 主機當作桌上型電腦在使用,這些不一樣的用途所需要的硬體要求都不相同!我們舉個另外的簡單的例子來說明,家裡有小孩,或者自己仍然算是小孩的朋友大概都知道,『要用來打 Game 的 "遊戲機電腦" 所需要的配備一定比辦公室用的 "工作機電腦" 配備更高檔』,為什麼呢?
中央處理器 ( CPU ) :CPU 是一部電腦內的心臟啦!因為不論你做什麼事情都需要 CPU 來加以運作的!(雖然有時工作量大、有時工作量小!),在 586 以前的電腦( 包含 386, 486, 與 586 ) ,CPU 的規格蠻固定的!只要是 586 ,那麼全部的 586 CPU 都是同一規格的,你可以使用任何一家的 586 CPU 來安裝到你的系統中。
不過,近年來 CPU 的規格變化的很大,光是一個 Intel 就有4種以上的規格,再加上他的最大對手 AMD 也有至少兩種以上的 CPU 規格,哇!光是 CPU 規格就有夠熱鬧呢!目前( 2003/02 )最熱門的 CPU 規格應該是 Intel 的 P-III ( Socket 370 )、 P4 以及 AMD 的 K7 ( Socket A ),各個 CPU 都有其賣點,我們不談哪一個好用,而是得來瞭解一下 CPU 的速度問題。
CPU 有所謂的『倍頻』與『外頻』,外頻是所有系統的周邊設備運作時候的速度,至於倍頻則是 CPU 本身運算時候加上去的一個運算速度!兩者相乘才是 CPU 的時脈。不過,由於周邊設備並沒有這麼快的速度,所以,一些周邊設備需要將外頻除上一個數字,才可以進行溝通。
例如一般 PCI 介面的正常速度是 33 ,所以,如果你的 CPU 外頻是 133 時,麼周邊設備的速度就要再除以 4 才能跟系統溝通!一般來說,越快的時脈代表越快的 CPU 運算速度。以 Intel 的 PIII 時脈 933 MHz 為例,
CPU 外頻與倍頻: 133(外頻) X 7(倍頻) MHz
RAM 頻率:通常與 CPU 之外頻相同,為 133 MHz
PCI 介面( 包含網路卡、音效卡等等的介面喔 ) 133/4=33 MHz
AGP 介面 : 133 / 2 = 66 MHz (這是 AGP 正常的頻率喔!)
記憶體 ( RAM ):記憶體對於系統來說,真是一個重要的傢伙,怎麼說呢?剛剛提到,電腦真正運作的核心是 CPU ,但是真正『餵給』 CPU 運算資料的,那就是記憶體 (RAM) 啦!所以你的作業系統的核心啦、軟硬體的驅動程式啦、所有你要讀取的檔案啦等等的,都需要先讀入記憶體之後,才餵給 CPU 來進行資料的運作!
硬碟與存取裝置:目前最常見的主流存取介面應該是 IDE 介面吧!所以,所有的開發商都是依據 IDE 這個介面來開發他們的硬體裝置的!通常一塊主機板上面有兩個 IDE 介面(參考上圖),而每個 IDE 介面接的排線上又有兩個插槽,所以,正常來說,應該至少會有四個可以使用的 IDE 裝置!
這些裝置包含了硬碟、光碟、燒錄機等等的周邊儲存裝置。由於一個 IDE 插槽可以接兩個 IDE 介面的裝置,那麼系統怎麼知道那個是那個?此時就需要 IDE 裝置的跳針 (Jumper) 來設定了!你可以在一個 IDE 介面接的兩個裝置上面,以排線接一個 Master 以及一個 Slave 的裝置!而 Master 與 Slave 可以在任何一個 IDE 裝置上面找到的!
也就是說,如果你有兩顆硬碟,那麼你可以將任何一顆調成 Master ,但是另外一顆則必須為 Slave 才行!否則 IDE 介面會無法分辦,而造成系統的當機喔!至於硬碟的一些相關資料我們在後面的章節再來提!
至於 P4 則晶片組與 CPU 之間則可以提升四倍的時脈速度,遺憾的是,晶片組能支援的規格,只有一種,並無法支援所有的規格,也就是說,你的 Intel 晶片組的主機板,只能支援 Intel 的 CPU 與晶片組能溝通的記憶體規格;
CPU、記憶體與晶片組(就是主機板啦)在選購的時候需要一起考慮,因為晶片組(主機板)能夠支援的 CPU 只有一種規格,而晶片組對記憶體的支援通常也僅支援一種規格,所以,當你選擇 Intel 的主機板晶片組時,那就不能使用 AMD 的 CPU 囉!這在購買的時候要特別小心您主機板上晶片組所能支援的規格喔!
基本上,如果你的 Linux 是做為終端機之用 ( 也就是當作你的工作機,並不對 Internet 提供其他服務 ),並且也不玩 X-Window 的話,那麼由於 Linux 所需要的硬體資源是很低的,只要你有 Pentun-133 以上等級的機器就可以跑得很順暢囉!
所以,若你手上有升級後要汰換的設備,千萬別急著丟掉,可以嘗試著組裝一下,然後來玩玩 Linux 呀! 但是,萬一您的 Linux 機器是預計用來作為您公司內部的 mail server 或者是您學校的 Web server, proxy server 時,或者是要玩 X-Window 的話,那麼你就必須要選擇高檔一點的電腦配備了,尤其是 RAM 的大小、顯示卡的記憶體容量與 硬碟 的空間容量!
外,由於 Linux 是近來才崛起的梁山泊好漢,而且參與開發 Linux 核心者是一些『公益團體』呵呵!所以他可以支援的硬體相對的是比 Windows 少上很多的!如果你手上的設備是很舊 ( 老古董的兩倍數光碟機... ) ,或者很新 ( 最新的一些高效能 CPU,還有高檔顯示卡 Geforce 4 Ti等等的設備 ) 的咚咚,是非常有可能無法進行 Linux 的安裝的!
因此,你需要瞭解一下你的硬體。要瞭解你的硬體是否被 Linux 支援,除了在每一版的 kernel 的文件資料中查詢之外,你可以到下面這個網站上去看看,相信會有所幫助的!
台灣 Linux/FreeBSD 硬體支援資料庫
Red Hat Linux 的硬體支援
底下我們稍微談一下 Linux 至少所需要的硬體配備是如何吧!假設一台 Linux 主機,他主要的功能是用來作為 NAT 主機,所謂的 NAT 主機也就是類似『IP分享器』 的功能,而且用這台 NAT 主機的 PC 數並不多,那你只需要 Pentun-166, 32MB RAM, 及一塊不太特殊的顯示卡及網路卡也就夠了!當然,硬體的需求與你服務的對象多寡是有相當的相關性的!
Hard disk ( 硬碟 ):最好有 2GB 以上。當然是越大越好,最好至少為 3GB 的硬碟!(註:同樣的,目前的 Linux 提供的資料太多了!所以某些出版商提供的 Linux 在選擇完整安裝之後,硬碟竟然佔用了 4.5 GB 左右的空間,相當的可怕!不過,如果您已經學會了 Linux 的話,那麼事實上,透過選擇的套件內容,將不需要用到這麼多硬碟空間,尤其不玩 X-Window 的話,硬碟空間幾乎可以減少一半以上。)
不過,還是得提醒一下,如果您的 Linux 是用來架設大流量的網站時,那麼好一點的網路卡將是不能節省的花費!如果能夠使用 Intel 或是 3Com 的網路卡,那將是不錯的選擇呀!
光碟、軟碟、鍵盤與滑鼠:不要太舊的就可以了。基本上除了鍵盤之外,其他的裝置都是非必備的,以 VBird 為例,在安裝 Linux 的時候先拿別部電腦的光碟機、軟碟機與滑鼠來安裝,等到安裝完畢之後,關機,將所有的裝置拔掉,只要剩下硬碟與電源供應器就可以啦!等到所有的設定都完成之後,連螢幕都可以搬走了!剩下的 Linux 會自動搞定!因為通常伺服器這東西最需要的就是穩定,而穩定的最理想狀態就是平時沒事不要去動他是最好的!