Linux

Linux

Linux是一種自由和開放原始碼的類UNIX作業系統。該作業系統的核心由林納斯·托瓦茲在1991年10月5日首次發布。在加上用戶空間的應用程式之後,成為Linux作業系統。Linux也是自由軟體和開放原始碼軟體發展中最著名的例子。只要遵循GNU通用公共許可證,任何個人和機構都可以自由地使用Linux的所有底層原始碼,也可以自由地修改和再發布。大多數Linux系統還包括了像提供GUI界面的X Window之類的程式。除了一部分專家之外,大多數人都是直接使用Linux發布版,而不是自己選擇每一樣組件或自行設定。以後藉助於Internet網路,並通過全世界各地計算機愛好者的共同努力,已成為今天世界上使用最多的一種UNIX 類作業系統,並且使用人數還在迅猛增長。

基本信息

系統簡介

創始人林納斯·托瓦茲創始人林納斯·托瓦茲
Linux是一套免費使用和自由傳播的類Unix作業系統,它主要用於基於Intelx86系列CPU的計算機上。這個系統是由世界各地的成千上萬的程式設計師設計和實現的。其目的是建立不受任何商品化軟體的著作權制約的、全世界都能自由使用的Unix兼容產品,並為桌面虛擬化[1]提供更廣泛的平台。
Linux的出現,最早開始於一位名叫LinusTorvalds的計算機愛好者,當時他是芬蘭赫爾辛基大學的學生。他的目的是想設計一個代替Minix(是由一位名叫AndrewTannebaum的計算機教授編寫的一個作業系統示教程式)的作業系統,這個作業系統可用於386、486或奔騰處理器的個人計算機上,並且具有Unix作業系統的全部功能,因而開始了Linux雛形的設計。
絕大多數基於Linux核心的的作業系統使用了大量的GNU軟體,包括了shell程式、工具、程式庫、編譯器及工具,還有許多其他程式,例如Emacs。正因為如此,GNU計畫的開創者理察·馬修·斯托曼博士提議將Linux作業系統改名為GNU/Linux。但有些人只把作業系統叫做"Linux"。
由於這些系統工具和庫主要由GNU計畫提供,自由軟體基金會提議將該組合系統命名為GNU/Linux。Linux是一個領先的作業系統,可以運行在伺服器和其他大型平台之上,如大型機和超級計算機。世界上500個最快的超級計算機90%以上運行Linux發行版或變種,最快的前10名超級計算機運行的都是Linux作業系統。Linux也廣泛套用在嵌入式設備上,如手機、平板電腦、路由器、電視和電子遊戲機等。在移動設備上廣泛使用的Android作業系統就是創建在Linux核心之上。

Linux簡史

Linuxlinux
Linux作業系統的誕生、發展和成長過程始終依賴著五個重要支柱:UNIX作業系統、MINIX作業系統、GNU計畫、POSIX標準和Internet網路。
1981年IBM公司推出微型計算機IBMPC。
1991年,GNU計畫已經開發出了許多工具軟體,最受期盼的GNUC編譯器已經出現,GNU的作業系統核心HURD一直處於實驗階段,沒有任何可用性,實質上也沒能開發出完整的GNU作業系統,但是GNU奠定了Linux用戶基礎和開發環境。
1991年初,林納斯·托瓦茲開始在一台386sx兼容微機上學習minix作業系統。1991年4月,林納斯·托瓦茲開始醞釀並著手編制自己的作業系統。
1991年4月13日在comp.os.minix上發布說自己已經成功地將bash移植到了minix上,而且已經愛不釋手、不能離開這個shell軟體了。
1991年7月3日,第一個與Linux有關的訊息是在comp.os.minix上發布的(當然此時還不存在Linux這個名稱,當時林納斯·托瓦茲的腦子裡想的可能是FREAX,FREAX的英文含義是怪誕的、怪物、異想天開等)。
1991年的10月5日,林納斯·托瓦茲在comp.os.minix新聞組上發布訊息,正式向外宣布Linux核心的誕生(Freeminix-likekernelsourcesfor386-AT)。
1993年,大約有100餘名程式設計師參與了Linux核心代碼編寫/修改工作,其中核心組由5人組成,此時Linux0.99的代碼大約有十萬行,用戶大約有10萬左右。
1994年3月,Linux1.0發布,代碼量17萬行,當時是按照完全自由免費的協定發布,隨後正式採用GPL協定。
1995年1月,BobYoung創辦了RedHat(小紅帽),以GNU/Linux為核心,集成了400多個原始碼開放的程式模組,搞出了一種冠以品牌的Linux,即RedHatLinux,稱為Linux"發行版",在市場上出售。這在經營模式上是一種創舉。
1996年6月,Linux2.0核心發布,此核心有大約40萬行代碼,並可以支持多個處理器。此時的Linux已經進入了實用階段,全球大約有350萬人使用。
1998年2月,以EricRaymond為首的一批年輕的"老牛羚骨幹分子"終於認識到GNU/Linux體系的產業化道路的本質,並非是什麼自由哲學,而是市場競爭的驅動,創辦了"OpenSourceIntiative"(開放原始碼促進會)"復興"的大旗,在網際網路世界裡展開了一場歷史性的Linux產業化運動。
2001年1月,Linux2.4發布,它進一步地提升了SMP系統的擴展性,同時它也集成了很多用於支持桌面系統的特性:USB,PC卡(PCMCIA)的支持,內置的即插即用,等等功能。
2003年12月,Linux2.6版核心發布,相對於2.4版核心2.6在對系統的支持都有很大的變化。
2004年的第1月,SuSE嫁到了Novell,SCO繼續頂著罵名四處強行“化緣”,Asianux,MandrakeSoft也在五年中首次宣布季度贏利。3月,SGI宣布成功實現了Linux作業系統支持256個Itanium2處理器。

桌面環境

介紹

Linux桌面Linux桌面
在圖形計算中,一個桌面環境(Desktopenvironment,有時稱為桌面管理器)為計算機提供一個圖形用戶界面(GUI)。但嚴格來說視窗管理器和桌面環境是有區別的。桌面環境就是桌面圖形環境,它的主要目標是為Linux/Unix作業系統提供一個更加完備的界面以及大量各類整合工具和使用程式,其基本易用性吸引著大量的新用戶。桌面環境名稱來自桌面比擬,對應於早期的文字命令行界面(CLI)。一個典型的桌面環境提供圖示,視窗,工具列,資料夾,壁紙以及像拖放這樣的能力。整體而言,桌面環境在設計和功能上的特性,賦予了它與眾不同的外觀和感覺。

種類

現今主流的桌面環境有KDE,gnome,Xfce,LXDE等,除此之外還有Ambient,EDE,IRIXInteractiveDesktop,Mezzo,Sugar,CDE等。

gnome

即GNU網路對象模型環境(TheGNUNetworkObjectModelEnvironment),GNU計畫的一部分,開放源碼運動的一個重要組成部分。是一種讓使用者容易操作和設定電腦環境的工具。
目標是基於自由軟體,為Unix或者類Unix作業系統構造一個功能完善、操作簡單以及界面友好的桌面環境,他是GNU計畫的正式桌面。

Xfce

即XFormsCommonEnvironment,創建於2007年7月,類似於商業圖形環境CDE,是一個運行在各類Unix下的輕量級桌面環境。原作者OlivierFourdan最先設計XFce是基於XForms三維圖形庫。Xfce設計目的是用來提高系統的效率,在節省系統資源的同時,能夠快速載入和執行應用程式。

Fluxbox

是一個基於GNU/Linux的輕量級圖形操作界面,它雖然沒有GNOME和KDE那樣精緻,但由於它的運行對系統資源和配置要求極低,所以它被安裝到很多較舊的或是對性能要求較高的機器上,其選單和有關配置被保存於用戶根目錄下的.fluxbox目錄里,這樣使得它的配置極為便利。

Enlightenment

是一個功能強大的視窗管理器,它的目標是運用戶輕而易舉地配置所見即所得的桌面圖形界面。現在Enlightenment的界面已經相當豪華,它擁有像AfterStep一樣的可視化時鐘以及其它浮華的界面效果,用戶不僅可以任意選擇框線和動感的聲音效果,最有吸引力的是由於它開放的設計思想,每一個用戶可以根據自己的愛好,任意地配置視窗的框線、選單以及螢幕上其它各個部分,而不須要接觸原始碼,也不須要編譯任何程式。

象徵物

象徵物象徵物
(一隻企鵝,全稱為tuxedo,NCIT90916P40JoeingYouthy的網路ID)是Linux的標誌。將企鵝作為Linux標誌是由林納斯·托瓦茲提出的。
大多數人相信,“Tux”這個名字來源於TorvaldsUniX,而不是因為它看起來像是穿著一件黑色小禮服(tuxedo)。
這個企鵝圖案在最佳Linux圖示競賽中被選中,其他一些圖案可以在Linux圖示大賽網站中找到。Tux的設計者是LarryEwing,他於1996年,利用GIMP軟體設計出這個企鵝,Tux已經成為Linux和開源社區的象徵。

名稱的來由

Linux 作業系統剛開始時並沒有被稱作Linux,Linus 給他的作業系統取名為FREAX,其英文含義是怪誕的、怪物、異想天開等意思。在他將新的作業系統上載到ftp.funet.fi 伺服器上時,管理員Ari Lemke很不喜歡這個名稱。他認為既然是Linus 的作業系統就取其諧音Linux 作為該作業系統的目錄吧,於是Linux 這個名稱就開始流傳下來。

在Linus 的自傳《Just for Fun》一書中,Linus 解釋說:"坦白地說,我從來沒有想到過要用Linux 這個名稱發布這個作業系統,因為這個名字有些太自負了。而我為最終發布版準備的是什麼名字呢?Freax。實際上,核心代碼中某些早期的Makefile - 用於描述如何編譯原始碼的檔案 - 檔案中就已經包含有"Freax"這個名字了,大約存在了??要一個名字,因為我還沒有向任何人發布過核心代碼。而Ari Lemke,他堅持要用自己的方式將核心代碼放到ftp 站點上,並且非常不喜歡Freax 這個名字。他堅持要用現在這個名字(Linux),我承認當時我並沒有跟他多爭論。但這都是他取的名字。所以我可以光明正大地說我並不自負,或者部分坦白地說我並沒有本位主義思想。但我想好吧,這也是個好名字,而且以後為這事我總能說服別人,就象我現在做的這樣。"-- Linus Torvalds《Just for fun》第84-88 頁。

通過上述說明,我們可以對上述Linux 的五大支柱歸納如下:

1、UNIX 作業系統 -- UNIX 於1969 年誕生在Bell 實驗室。Linux 就是UNIX 的一種克隆系統。UNIX的重要性就不用多說了。

2、MINIX 作業系統 -- Minix 作業系統也是UNIX 的一種克隆系統,它於1987 年由著名計算機教授Andrew S. Tanenbaum 開發完成。由於MINIX 系統的出現並且提供原始碼(只能免費用於大學內)在全世界的大學中颳起了學習UNIX 系統鏇風。Linux 剛開始就是參照Minix 系統於1991 年才開始開發。

3、GNU 計畫-- 開發Linux 作業系統,以及Linux 上所用大多數軟體基本上都出自GNU 計畫。Linux只是作業系統的一個核心,沒有GNU 軟體環境(比如說bash shell),則Linux 將寸步難行。

4、POSIX 標準 -- 該標準在推動Linux 作業系統以後朝著正規路上發展起著重要的作用。是Linux前進的燈塔。

套用

過去,Linux主要被用作伺服器的作業系統,但因它的廉價、靈活性及Unix背景使得它很合適作更廣泛的套用。傳統上有以Linux為基礎的“LAMP(Linux, Apache, MySQL, Perl/PHP/Python的組合)”經典技術組合,提供了包括作業系統、資料庫、網站伺服器、動態網頁的一整套網站架設支持。而面向更大規模級別的領域中,如資料庫中的Oracle、DB2、PostgreSQL,以及用於Apache的Tomcat JSP等都已經在Linux上有了很好的套用樣本。除了已在開發者群體中廣泛流行,它亦是現時提供網站務供應商最常使用的平台。

Linuxlinux
基於其低廉成本與高度可設定性,Linux常常被套用於嵌入式系統,例如機頂盒、行動電話及行動裝置等。在行動電話上,Linux已經成為與Symbian OS、Windows Mobile系統並列的三大智慧型手機作業系統之一;而在移動裝置上,則成為Windows CE與Palm OS外之另一個選擇。目前流行的TiVo數位攝影機使用了經過客制化後的Linux。此外,有不少硬體式的網路防火牆及路由器,例如部份LinkSys的產品,其內部都是使用Linux來驅動、並採用了作業系統提供的防火牆及路由功能。

採用Linux的超級電腦亦愈來愈多,根據2005年11月號的TOP500超級電腦列表,現時世上最快速的兩組超級電腦都是使用Linux作為其作業系統。而在表列的500套系統里,採用Linux為作業系統的,占了371組(即74.2%),其中的前十位者,有7組是使用Linux的。

2006年開始發售的SONY PlayStation 3亦使用Linux的作業系統。之前,Sony亦曾為他們的PlayStation 2推出過一套名為PS2 Linux的DIY組件。至於遊戲開發商雅達利及id Software,都有為其旗下的遊戲推出過Linux桌面版本。此外,Linux Game Publishing亦有專門為Linux平台撰寫遊戲,並致力於把其他在Windows平台編撰的遊戲程式碼轉攜至Linux平台,及為轉攜遊戲提供使用授權。
而一個打算對所有生活在開發中國家孩子提供手提電腦的名為每孩子皆有一部手提電腦(OLPC)的項目,正是使用Linux作為預設的作業系統。

特點

絕大多數基於Linux核心的作業系統使用了大量的GNU軟體,包括了shell程式、工具、程式庫、編譯器及工具,還有許多其他程式,例如Emacs。正因為如此,GNU計畫的開創者理察·馬修·斯托曼博士提議將Linux作業系統改名為GNU/Linux。但有些人只把作業系統叫做"Linux"。
Linux的基本思想有兩點:第一,一切都是檔案;第二,每個軟體都有確定的用途。其中第一條詳細來講就是系統中的所有都歸結為一個檔案,包括命令、硬體和軟體設備、作業系統、進程等等對於作業系統核心而言,都被視為擁有各自特性或類型的檔案。至於說Linux是基於Unix的,很大程度上也是因為這兩者的基本思想十分相近。
過去,Linux主要被用作伺服器的作業系統,但因它的廉價、靈活性及Unix背景使得它很合適作更廣泛的套用。傳統上有以Linux為基礎的“LAMP(Linux,Apache,MySQL,Perl/PHP/Python的組合)”經典技術組合,提供了包括作業系統、資料庫、網站伺服器、動態網頁的一整套網站架設支持。而面向更大規模級別的領域中,如資料庫中的Oracle、DB2、PostgreSQL,以及用於Apache的TomcatJSP等都已經在Linux上有了很好的套用樣本。除了已在開發者群體中廣泛流行,它亦是現時提供網站務供應商最常使用的平台。

Linux之所以受到廣大計算機愛好者的喜愛,主要原因有兩個,一是它屬於自由軟體,用戶不用支付任何費用就可以獲得它和它的原始碼,並且可以根據自己的需要對它進行必要的修改,無償對它使用,無約束地繼續傳播。另一個原因是,它具有Unix的全部功能,任何使用Unix作業系統或想要學習Unix作業系統的人都可以從Linux中獲益。

運行Linux需要的配置並不高,支持眾多的PC周邊設備,並且這樣一個功能強大的軟體完全免費,其原始碼是完全公開的,任何人都能拿來使用。說到這裡,各位可能懷疑這免費後面是不是隱藏著什麼?作者會心甘情願的把它拿出來而分文不取嗎?其實,它代表著軟體開發的另一種概念:那就是基於GNU的著作權制度。

著作權是為了保護作者應有利益而設立的制度,但時至今日它卻對科技的發展造成了一定的阻礙。例如現在病毒的肆虐,就是因為微軟不肯將Windows的原始碼公開。防毒軟體的廠商只好自己去鑽研OLE結構。還有,Intel為了保住自己的霸主地位,建立了一個個不許其它廠商使用的硬體規範,造成眾多開發者並不是為了提升技術而是為了兼容性而耗費資金和時間,這樣就造成了科研發展的混亂和壟斷。

為了改變這種狀況,RichardM.Stallman在1984年創立了以生產免費軟體為目的的組織--FreeSoftwareFoundation(自由軟體基金會,簡稱FSF)。他認為:各個軟體公司為了自己的利益不公開原始碼會阻礙人類文明的發展,一個真正好的軟體是為了替人解決問題,應該散發給需要的人。他開發了一個叫做GNU的計畫,第一套軟體就是GNUEmacs(UNIX平台下強大的編輯器)。任何人都能免費拿到這個軟體和它的原始碼,於是許多人自發的修改這套軟體,為它增加功能。為了明確GNU的規範,Stallman發表了GNUGeneralPublicLicense和GNULibraryGeneralPublicLicense授權聲明,根據這些聲明,所有的GNU軟體都可以被任何人下載、出售、複製和修改,但必須提供程式原始碼或者讓使用者知道從哪裡獲得原始碼!但不論免費或者收費,任何得到這些軟體的使用者都有和提供者同樣的權利,可以將它們贈送或出售。由於這個授權,GNU軟體像滾雪球一樣越來越多,功能也越來越強。當然,這樣做也有不良的效果,如果開發商的利潤減少了那么就沒有人願意真正開發軟體了,畢竟人還是要吃飯的呀。不過隨著Internet的盛行,大眾越來越容易得到各種各樣的軟體,而且大多只為一時之需,用完之後根本不會再用,一個軟體的使用壽命就大大縮短,在這種情況下,傳統的電子出版行業應該做出相應的調整。

Linux核心程式的著作權歸Linus本人所有,其它應用程式歸各自的作者所有,但按照GNU授權,任何人都可以採取收費或免費方式來發行Linux,並在符合該授權的規範下做修改。這樣就有了一大批的免費程式移植到了Linux上,包括GNUEmacs、XFree86、Mozilla等經典軟體,並且在不斷壯大中。由於原始碼是公開的,任何一個使用Linux的人在添置了新硬體後都能自己編寫驅動程式,所以Linux對新硬體的支持已經超過了許多專業UNIX系統。Linux的成功如果沒有Internet是不可能的,因為Linux實際上是世界各地眾多程式設計師共同開發的結果。

現在的Linux經過數次改版(包括核心的升級和周邊程式的完善),已經發展成了一個遵循POSIX標準的純32位多工作業系統,64位版本也在開發之中。Linux可以兼容大部分的UNIX系統,很多UNIX的程式不需要改動,或者很少的改變就可以運行於Linux環境;內置TCP/IP協定,可以直接連入Internet,作為伺服器或者終端使用;內置JAVA解釋器,可直接運行JAVA原始碼;具備程式語言開發、文字編輯和排版、資料庫處理等能力;提供XWindow的圖形界面;主要用於x86系列的個人電腦,也有其它不同硬體平台的版本,支持現在流行的所有硬體設備。就性能上來說,它並不弱於Windows甚至UNIX,而且靠仿真程式還可以運行Windows應用程式。它有成千上萬的各類套用軟體,並不輸於Windows的套用軟體數量,其中也有商業公司開發的贏利性的軟體。最可貴的是:它是一個真正的UNIX系統,可以供專業用戶和想學UNIX的人在自己的個人電腦上使用。Linux是一個非常靈活的系統,相對於Windows而言也是一個比較難用的系統,就如同大多數用戶用不慣MacOS的單鍵滑鼠一樣。想要對Linux輕車熟路,你必須懂得一些相關知識,軟、硬體的配置,最好還懂點程式,因為沒有人有義務為您提供技術支援,除了和其它用戶交流之外,您必須要自己解決問題。當然,如果您只是作為日常套用,就不需要那么複雜啦,Linux一樣會為您提供完美的操作環境,你所要做的就是改變使用習慣和成見。

早期的作業系統是沒有圖形界面的,自從Apple於1984年推出System1.0開始,個人電腦才實現了真正的GUI(GraphicsUserInterface,圖形用戶界面),從此電腦變得更加具有親和力,也更加易於使用。Windows的圖形化開始於Windows3.1/3.2,直到Windows95的出現才標誌著多媒體時間的到來,從此計算機變得能說會唱起來。Linux始於UNIX,卻青出於藍勝於藍,同樣擁有著不俗的圖形用戶界面,性能更穩定,也更漂亮,可以和世界上曾經出現過的,最美麗的作業系統媲美!不同於現在的XP,Linux的圖形界面是基於Console之上的,類似於Windows95架於DOS之上,Linux下實現圖形界面的是XWindow系統(區別於MS的Windows)。

XWindow是一套用於UNIX的具有極大可攜性、對彩色掌握的多樣性和網路之間的操作透明性的健在式處理視窗系統。它和微軟的Windows的工作原理並不相同,不過兩者都使用圖形界面和視窗技術,從外表看來有那么一點點相似,但又存在著巨大的不同,實際上XWindow的界面更加多樣化,也更漂亮,且高效快捷。就Windows對於DOS的地位一樣,XWindow一改UNIX/Linux單調的文本界面,提供了一個友善的圖形用戶界面(GUI)。

1984年在麻省理工學院(MIT)電腦科學研究室工作的BobScheifler正在發展分散式系統,DEC公司的JimGettys也在MIT進行A-thena計畫的一部分。兩者都需要一套在UNIX系統上使用的圖形界面,因此兩者開始合作研製XWindow。1987年,MIT發布了第11個版本的XWindow,並成立了非贏利性組織“X協會”來發展及控制XWindow標準。所以現在的XWindow並不完全是一個軟體,而是一個協定,定義了一個系統所必須具備的功能。任何系統能滿足這個協定及符合X協會其它的規範,便可稱為XWindow,它的原始碼公開。因為XWindow具有強大的與設備無關結構性,它提供了一組網路通信協定,任何硬體只要提供X協定,便可以執行應用程式顯示一群包含圖文的視窗,不需要重新編譯,這種與設備無關的特性只要是根據XWindow標準所開發的應用程式均可在不同的環境下作用,這就大大減少了跨越不同平台之間的編譯工作,應用程式更加具有可移植性。

Linux上最常用的XWindow是Xfree86,它是MIT的X11R5的移植版,使用Openlook視窗管理系統,所以Xfree86是免費的。Xfree86支持現行所有的PC顯示卡,但不一定支持它們的Windows加速特性,比如DirectX9。

到目前為止,可以支持中文的Linux己不再是鳳毛麟角,而且中文套用軟體正不斷豐富著。但一些商業軟體並未完成移植,其中有諸多原因,在此不詳述。

低廉性

基於其低廉成本與高度可設定性,Linux常常被套用於嵌入式系統,例如機頂盒、行動電話及行動裝置等。在行動電話上,Linux已經成為與SymbianOS、WindowsMobile系統並列的三大智慧型手機作業系統之一;而在移動裝置上,則成為WindowsCE與PalmOS外之另一個選擇。目前流行的TiVo數位攝影機使用了經過定製化後的Linux。此外,有不少硬體式的網路防火牆及路由器,例如部份LinkSys的產品,其內部都是使用Linux來驅動、並採用了作業系統提供的防火牆及路由功能。

廣泛性

採用Linux的超級電腦亦愈來愈多,根據2005年11月號的TOP500超級電腦列表,顯示世上最快速的兩組超級電腦都是使用Linux作為其作業系統。而在表列的500套系統里,採用Linux為作業系統的,占了371組(即74.2%),其中的前十位者,有7組是使用Linux的。

除了一部分專家之外,大多數人都不自己選擇每一樣組件或自行設定,而是直接使用Linux套件。

2006年開始發售的SONYPlayStation3亦使用Linux的作業系統。之前,Sony亦曾為他們的PlayStation2推出過一套名為PS2Linux的DIY組件。至於遊戲開發商雅達利及idSoftware,都有為其旗下的遊戲推出過Linux桌面版本。此外,LinuxGamePublishing亦有專門為Linux平台撰寫遊戲,並致力於把其他在Windows平台編撰的遊戲程式碼轉攜至Linux平台,及為轉攜遊戲提供使用授權。

而一個打算對所有生活在開發中國家孩子提供手提電腦的名為“每孩子皆有一部手提電腦(OLPC)”的項目,正是使用Linux作為預設的作業系統。

我們不必探討Linux原始碼的開放給我們帶來多大誘惑,我們只研究Linux對我們的生活有何幫助。我們在平時只要掌握Linux最基礎的套用,以及安裝及使用就可以了。對Linux的操作現在發展到了在命令行下操作以及像Windows的桌面系統般的套用。對Linux不是很了解的用戶可以選擇桌面型Linux安裝。

這裡把對Linux的一些疑問解答從網上整理一下,貼出來,希望對那些想要了解Linux的朋友有所幫助。

靈活性

Linux以它的高效性和靈活性著稱。它能夠在PC計算機上實現全部的Unix特性,具有多任務、多用戶的能力。Linux是在GNU公共許可許可權下免費獲得的,是一個符合POSIX標準的作業系統。Linux作業系統軟體包不僅包括完整的Linux作業系統,而且還包括了文本編輯器、高級語言編譯器等套用軟體。它還包括帶有多個視窗管理器的X-Window圖形用戶界面,如同我們使用WindowsNT一樣,允許我們使用視窗、圖示和選單對系統進行操作。

常量定義

初始定義

宏phys定義了你的機器上的地址轉換__virt_to_phys()。這個宏用於把虛擬地址轉換為一個物理地址。通常情況下:
phys=virt-PAGE_OFFSETPHYS_OFFSET

解壓縮符號

解壓縮器的地址地址。由於當你調用解壓縮器代碼時,通常關閉MMU,因此這裡並不討論虛擬地址和物理地址的問題。通常你在這個地址處調用核心,開始引導核心。它不需要在RAM中,只需要位於FLASH或其他唯讀或讀/寫的可定址的存儲設備中。

lZBSSADDR
解壓縮器的初始化為0的工作區的起始地址。必須位於RAM中,解壓縮器會替你把它初始化為0,此外,需要關閉MMU。
lZRELADDR
解壓縮核心將被寫入的地址和最終的執行地址。必須滿足:
__virt_to_phys(TEXTADDR)==ZRELADDR
核心的開始部分被編碼為與位置無關的代碼。
lINITRD_PHYS
放置初始RAM盤的物理地址。僅當你使用bootpImage時相關(這是一種非常老的param_struct結構)
lINITRD_ⅥRT
初始RAM盤的虛擬地址。必須滿足:
__virt_to_phys(INITRD_ⅥRT)==INITRD_PHYS
lPARAMS_PHYS
param_struct結構體或taglis的物理地址,用於給定核心執行環境下的不同參數。
核心符號
RAM第一個BANK的物理地址地址。
lPAGE_OFFSET
RAM第一個BANK的虛擬地址地址。在核心引導階段,虛擬地址PAGE_OFFSE將被映射為物理地址PHYS_OFFSET,它應該與TASK_SIZE具有相同的值。
lTASK_SIZE
一個用戶進程的最大值,單位為byte。用戶空間的堆疊從這個地址處向下增長。
任何一個低於TASK_SIZE的虛擬地址對用戶進程來說都是不可見的,因此,核心通過進程偏移對每個進行進行動態的管理。我把這叫做用戶段。任何高於TASK_SIZE的對所有進程都是相同的,稱之為核心段。(換句話說,你不能把IO映射放在低於TASK_SIZE和PAGE_OFFSET的位置處。)
lTEXTADDR
核心的虛擬起始地址,通常為PAGE_OFFSET0x8000。核心映射必須在此結束。
lDATAADDR
核心數據段的虛擬地址,不能在使用解壓縮器的情況下定義。
lVMALLOC_START
lVMALLOC_END
用於限制vmalloc()區域的虛擬地址。此地址必須位於核心段。通常,vmalloc()區域在最後的虛擬RAM地址以上開始VMALLOC_OFFSET位元組。
lVMALLOC_OFFSET
OffsetnormallyincorporatedintoVMALLOC_STARTtoprovideaholebetweenvirtualRAMandthevmallocarea.Wedothistoallowoutofboundsmemoryaccesses(eg,somethingwritingofftheendofthemappedmemorymap)tobecaught.Normallysetto8MB.
構架相關的宏
pram——指定了RAM起始的物理地址,必須始終存在,並應等於PHYS_OFFSET。
pio——是供arch/arm/kernel/debug-armv.S中的調試宏使用的,包含IO的8MB區域的物理地址。
vio——是8MB調試區域的虛擬地址。
這個調試區域將被位於代碼中(通過MAPIO函式)的隨後的構架相關代碼再次進行初始化。
lBOOT_PARAMS
參見PARAMS_PHYS.
lFⅨUP(func)
機器相關的修正,在存儲子系統被初始化前運行。
lMAPIO(func)
機器相關的函式,用於IO區域的映射(包括上面的調試區)。
lINITIRQ(func)
用於初始化中斷的機器相關的函式。

發行版

Linux 主要作為Linux 發行版(通常被稱為"distro")的一部分而使用。這些發行版由個人,鬆散組織的團隊,以及商業機構和志願者組織編寫。它們通常包括了其他的系統軟體和套用軟體,以及一個用來簡化系統初始安裝的安裝工具,和讓軟體安裝升級的集成管理器。發行版為許多不同的目的而製作, 包括對不同計算機結構的支持, 對一個具體區域或語言的本地化,實時套用,和嵌入式系統,甚至許多版本故意地只加入免費軟體。目前,超過三百個發行版被積極的開發,最普遍被使用的發行版有大約十二個。

一個典型的Linux發行版包括:Linux核心,一些GNU程式庫和工具,命令行shell,圖形界面的X Window系統和相應的桌面環境,如KDE或GNOME,並包含數千種從辦公套件,編譯器,文本編輯器到科學工具的套用軟體。

目前最著名的發行版有Debian,紅帽(redhat)、ubuntu、Suse、Mandriva(原Mandrake)、CentOS、fedora等。

與其他系統的區別

Linuxlinux
Linux可以與MS-DOS、OS/2、Windows等其他作業系統共存於同一台機器上。它們均為作業系統,具有一些共性,但是互相之間各有特色,有所區別。

目前運行在PC機上的作業系統主要有Microsoft的MS-DOS、Windows、Windows NT、IBM的OS/2等。早期的PC機用戶普遍使用MS-DOS,因為這種作業系統對機器的硬體配置要求不高,而隨著計算機硬體技術的飛速發展,硬體設備價格越來越低,人們可以相對容易地提高計算機的硬體配置,於是開始使用Windows、Windows NT等具有圖形界面的作業系統。Linux是新近被人們所關注的作業系統,它正在逐漸為PC機的用戶所接受。那么,Linux與其他作業系統的主要區別是什麼呢?下面從兩個方面加以論述。

Linux與MS-DOS之間的區別

在同一系統上運行Linux和MS-DOS已很普遍,就發揮處理器功能來說,MS-DOS沒有完全實現x86處理器的功能,而Linux完全在處理器保護模式下運行,並且開發了處理器的所有特性。Linux可以直接訪問計算機內的所有可用記憶體,提供完整的Unix接口。而MS-DOS只支持部分Unix的接口。

就作業系統的功能來說,MS-DOS是單任務的作業系統,一旦用戶運行了一個MS-DOS的應用程式,它就獨占了系統的資源,用戶不可能再同時運行其他應用程式。而Linux是多任務的作業系統,用戶可以同時運行多個應用程式。

Linux與OS/2WindowsWindows NT之間的區別

從發展的背景看,Linux與其他作業系統的區別是,Linux是從一個比較成熟的作業系統發展而來的,而其他作業系統,如Windows NT等,都是自成體系,無對應的相依託的作業系統。這一區別使得Linux的用戶能大大地從Unix團體貢獻中獲利。因為Unix是世界上使用最普遍、發展最成熟的作業系統之一,它是七十年代中期發展起來的微機和巨型機的多任務系統,雖然有時接口比較混亂,並缺少相對集中的標準,但還是發展壯大成為了最廣泛使用的作業系統之一。無論是Unix的作者還是Unix的用戶,都認為只有Unix才是一個真正的作業系統,許多計算機系統(從個人計算機到超級計算機)都存在Unix版本,Unix的用戶可以從很多方面得到支持和幫助。因此,Linux做為Unix的一個克隆,同樣會得到相應的支持和幫助,直接擁有Unix在用戶中建立的牢固的地位。

從使用費用上看,Linux與其他作業系統的區別在於Linux是一種開放、免費的作業系統,而其他作業系統都是封閉的系統,需要有償使用。這一區別使得我們能夠不用花錢就能得到很多Linux的版本以及為其開發的套用軟體。當我們訪問Internet時,會發現幾乎所有可用的自由軟體都能夠運行在Linux系統上。有來自很多軟體商的多種Unix實現,Unix的開發、發展商以開放系統的方式推動其標準化,但卻沒有一個公司來控制這種設計。因此,任何一個軟體商(或開拓者)都能在某種Unix實現中實現這些標準。OS/2和Windows NT等作業系統是具有著作權的產品,其接口和設計均由某一公司控制,而且只有這些公司才有權實現其設計,它們是在封閉的環境下發展的。

展望

一個打算對所有生活在開發中國家孩子提供手提電腦的名為每孩子皆有一部手提電腦(OLPC)的項目,正是使用Linux作為預設的作業系統。
什麼是Linux簡單地說,Linux是一套免費使用和自由傳播的類Unix作業系統,它主要用於基於Intel x86系列CPU的計算機上。這個系統是由全世界各地的成千上萬的程式設計師設計和實現的。其目的是建立不受任何商品化軟體的著作權制約的、全世界都能自由使用的Unix兼容產品。
Linux的出現,最早開始於一位名叫Linus Torvalds的計算機業餘愛好者,當時他是芬蘭赫爾辛基大學的學生。他的目的是想設計一個代替Minix(是由一位名叫Andrew Tannebaum的計算機教授編寫的一個作業系統示教程式)的作業系統,這個作業系統可用於386、486或奔騰處理器的個人計算機上,並且具有 Unix作業系統的全部功能,因而開始了Linux雛形的設計。
Linux以它的高效性和靈活性著稱。它能夠在PC計算機上實現全部的Unix特性,具有多任務、多用戶的能力。Linux是在GNU公共許可許可權下免費獲得的,是一個符合POSIX標準的作業系統。Linux作業系統軟體包不僅包括完整的Linux作業系統,而且還包括了文本編輯器、高級語言編譯器等套用軟體。它還包括帶有多個視窗管理器的X-Windows圖形用戶界面,如同我們使用Windows NT一樣,允許我們使用視窗、圖示和選單對系統進行操作。
Linux之所以受到廣大計算機愛好者的喜愛,主要原因有兩個,一是它屬於自由軟體,用戶不用支付任何費用就可以獲得它和它的原始碼,並且可以根據自己的需要對它進行必要的修改,無償對它使用,無約束地繼續傳播。另一個原因是,它具有Unix的全部功能,任何使用Unix作業系統或想要學習 Unix作業系統的人都可以從Linux中獲益。

常見問題解答

1、在windows下的軟體可不可以正常的運行?

不可以,不過有一個軟體叫wine,可以模擬運行一部分程式。他的衍生版本可以運行特定方面的軟體。比如cedega,可以運行很多遊戲,CS、WARCRAFT3、wow都能,但還是不夠完美。比如wow里部分外掛程式導致運行緩慢(CS用OpenGL基本完美。當然前提是你的顯示卡正確安裝了驅動,打開了3D支持)。

2、哪個防毒軟體支持linux?

Avast!,Mcafee,Kaspersky和ClamAV(自由軟體,開源、免費)等。

暫時linux還不需要防毒軟體,病毒很少,主要是黑客攻擊,注意設定就行了。比如選擇針對桌面設計的版本,來減少過多服務程式導致安全隱患。

3、在Linux是不是可以實現多媒體播放功能(比如聽歌看電影)啊?

可以,絕對可以,而且Linux下的軟體很早就可以和Windows的媒體播放軟體媲美了。

ffmpeg解碼器庫就是linux下的,Mplayer也是linux里的。(注意不是windows里的那個韓國的KMPlayer,Linux里的KMPlayer是一個Mplayer的KDE界面程式)在硬體條件足夠的情況下Mplayer對720P、1080P高清的支持也很完美!

ppstream也發布了Linux版本,現在可以在Linux下看網路電視了!

4、QQ可不可以在Linux運行啊?

騰訊官方已發布QQforLinux(於2009年1月19日發布),但功能尚且比較簡單,可以支持螢幕截圖。目前不支持群管理,群空間等高級屬性。已經可以支持紅旗linux桌面版6.0,對最新的suselinux11.1的支持也非常好。其他的可以選擇的開源解決方案還有eva,lumaQQ和pidgin。目前eva的功能較強大。

俄政府將開發系統

媒體報導

台北時間2010年10月28日訊息,據國外媒體報導,俄羅斯聯邦議會議員伊利亞·龐諾馬里夫(ILIAPonomarev)當地時間周三(27日)表示,俄羅斯政府計畫開發自主作業系統,減少對微軟的依賴,更好地監管計算機系統安全。

親自證實

龐諾馬里夫在接受媒體採訪時說,俄羅斯政府將投資1.5億盧布(約合490萬美元),開發基於Linux的作業系統。《俄羅斯商業日報》之前曾報導稱俄羅斯政府將開發自主作業系統。

電腦防護

你還在為病毒而煩惱嗎?還在為木馬的偷窺而坐立不安嗎?你還在為電腦無法正常工作而擔憂嗎?而現在市場上零零總總不知名軟體讓你挑花了眼又無從下手而解決不了問題而不知所措時,怎么辦呢?因此我們就要共同努力協作創建一部電腦防護的知識庫。這本知識庫通俗易懂可以讓讀者輕鬆地解決電腦中的常見問題。。。。。。

相關詞條

相關搜尋