Linux操作系統(tǒng)課件(完整版)_第1頁
Linux操作系統(tǒng)課件(完整版)_第2頁
Linux操作系統(tǒng)課件(完整版)_第3頁
Linux操作系統(tǒng)課件(完整版)_第4頁
Linux操作系統(tǒng)課件(完整版)_第5頁
已閱讀5頁,還剩662頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、第1章 認識Linux操作系統(tǒng)操作系統(tǒng)Linux操作系統(tǒng)概述 Linux操作系統(tǒng)安裝操作系統(tǒng) Linux操作系統(tǒng)概述點擊查看本小節(jié)知識架構 Linux操作系統(tǒng)安裝點擊查看本小節(jié)知識架構 點擊查看本小節(jié)知識架構 了解了解掌握了解學習目標了解操作系統(tǒng)的基本概念1掌握Linux操作系統(tǒng)的安裝方法42了解嵌入式操作系統(tǒng)3了解Linux操作系統(tǒng)的發(fā)展學習物聯(lián)網(wǎng)開發(fā)與應用,首先需要認識嵌入式操作系統(tǒng)。Linux是發(fā)展最快、應用最為廣泛的嵌入式操作系統(tǒng)之一。Linux操作系統(tǒng)本身的各種特性使其成為嵌入式開發(fā)的首選。如今,它已經(jīng)走過早期的試用階段,逐漸成為了嵌入式開發(fā)的主流。本章將圍繞Lin

2、ux操作系統(tǒng)展開討論,希望讀者可以通過本章學習,對Linux操作系統(tǒng)有更深的認識。1.1 操作系統(tǒng)1.1.1操作系統(tǒng)概述返回目錄1.1.2嵌入式操作系統(tǒng)操作系統(tǒng)(Operating System,OS)通常指的是對計算機硬件與軟件進行管理控制的計算機程序。它是可以直接運行在硬件平臺上的核心系統(tǒng)軟件,其他軟件則可以在操作系統(tǒng)的基礎上完成運行。通俗地說,操作系統(tǒng)是用戶和計算機之間的紐帶,也是計算機硬件和其他軟件之間的橋梁。操作系統(tǒng)實現(xiàn)了配置內(nèi)存和控制輸入、輸出設備等計算機硬件管理,也實現(xiàn)了控制程序運行,為應用軟件提供支持,分配數(shù)據(jù)資源等軟件管理?,F(xiàn)代操作系統(tǒng)提供了各式各樣的用戶界面,使用戶可以有更

3、好的使用與體驗。1.1.1 操作系統(tǒng)概述1.1 操作系統(tǒng)操作系統(tǒng)根據(jù)用戶界面的使用環(huán)境和功能特征的不同可分為多種類型,其中3種基本類型是批處理操作系統(tǒng)、分時操作系統(tǒng)、實時操作系統(tǒng)。1.1.1 操作系統(tǒng)概述1.1 操作系統(tǒng)操作系統(tǒng)與軟硬件的關系如圖所示。1.1.1 操作系統(tǒng)概述1.1 操作系統(tǒng)1.批處理操作系統(tǒng)1946年第一臺通用計算機誕生,此時還沒有操作系統(tǒng)的概念,采用手工操作計算機,用戶將與程序和數(shù)據(jù)對應的穿孔紙帶裝進輸入機,然后啟動輸入機把程序和數(shù)據(jù)輸入到計算機內(nèi)存,接著通過控制臺啟動程序?qū)?shù)據(jù)進行運行。計算完畢后,打印輸出計算結(jié)果,用戶可以取走結(jié)果,并卸下紙帶(或卡片)。以便下一個用戶繼

4、續(xù)使用。圖所示為世界上第一臺計算機與打孔紙帶。1.1.1 操作系統(tǒng)概述1.1 操作系統(tǒng)20世紀50年代后期,出現(xiàn)了人機矛盾,即手工操作比不上計算機的高速度,嚴重影響了系統(tǒng)資源的利用率。解決的辦法就是擺脫手工操作,實現(xiàn)自動化作業(yè),于是就出現(xiàn)了批處理操作系統(tǒng)(Batch Processing)。批處理操作系統(tǒng)的工作模式是將許多用戶的作業(yè)組成一批作業(yè)。在計算機和輸入機之間增加一個存儲設備磁帶,通過監(jiān)督程序的控制,計算機自動將輸入機上的成批用戶作業(yè)讀入磁帶,然后依次把磁帶上的用戶作業(yè)讀入內(nèi)存并執(zhí)行,計算結(jié)果向輸出機輸出,如圖所示。然后監(jiān)督程序從輸入機上讀入另一批作業(yè),重復上述步驟。 1.1.1 操作系

5、統(tǒng)概述1.1 操作系統(tǒng)監(jiān)督程序不斷地處理作業(yè),實現(xiàn)了作業(yè)到作業(yè)的自動轉(zhuǎn)接,有效解決了人機矛盾,提高了計算機的利用率。在作業(yè)輸入和結(jié)果輸出時,主機不進行任何工作。由于輸入機、輸出機完成工作的速度較慢,極容易導致主機處于“忙等”狀態(tài)。為了避免出現(xiàn)主機速度與輸入輸出設備速度不匹配的情況,引入了脫機批處理系統(tǒng),即輸入輸出脫離主機控制,如圖所示。1.1.1 操作系統(tǒng)概述1.1 操作系統(tǒng)在圖中可以看到,輸入機、輸出機與磁帶之間接入了衛(wèi)星機,衛(wèi)星機既可以從輸入機上讀取用戶作業(yè)并放到輸入磁帶上,又可以從輸出磁帶上讀取執(zhí)行結(jié)果并傳給輸出機。這樣,主機不直接與慢速的輸入機、輸出機建立聯(lián)系,而是與速度相對較快的磁帶

6、建立連接,有效緩解了主機與設備的矛盾。脫機批處理系統(tǒng)在20世紀60年代應用十分廣泛。2.分時操作系統(tǒng)分時操作系統(tǒng)(Time Sharing)的工作方式是一臺主機連接若干個終端,每個用戶可以在自己的終端上聯(lián)機使用主機。1.1.1 操作系統(tǒng)概述1.1 操作系統(tǒng)用戶交互式地向系統(tǒng)提出命令請求,系統(tǒng)接收每個用戶的命令,將處理機的運行時間分成很短的時間片,按時間片輪流把處理機分配給各用戶的聯(lián)機作業(yè)。如果某一個作業(yè)在一個時間片內(nèi)不能完成,則該作業(yè)暫時中斷,把處理機讓給其他作業(yè)使用,等待下一輪時再繼續(xù)使用。操作系統(tǒng)以時間片為單位,輪流供每個終端用戶使用。由于計算機速度很快,作業(yè)輪轉(zhuǎn)也很快,因此每個用戶輪流使

7、用一個時間片卻不會感覺到有別的用戶存在。分時操作系統(tǒng)有多路性、交互性、獨立性、及時性的特征。(1)多路性:多個用戶同時使用一臺主機。從微觀的角度來看是各用戶輪流使用主機,從宏觀的角度來看是各用戶并行工作使用主機。(2)交互性:用戶可以根據(jù)系統(tǒng)對請求的響應結(jié)果,進一步向系統(tǒng)提出新的請求,從而實現(xiàn)用戶與系統(tǒng)的人機交互工作模式。1.1.1 操作系統(tǒng)概述1.1 操作系統(tǒng)(3)獨立性:用戶之間是相互獨立的,操作互不干擾。(4)及時性:系統(tǒng)可對用戶的輸入做出及時的響應。多用戶分時操作系統(tǒng)是當今計算機系統(tǒng)中最為普遍的一類操作系統(tǒng)。其主要目標就是對用戶及時響應,避免用戶等待的時間過長。3.實時操作系統(tǒng)批處理系

8、統(tǒng)和分時系統(tǒng)雖然能獲得較令人滿意的資源利用率和系統(tǒng)響應時間,但是不能滿足實時控制和實時信息處理的應用需求。實時操作系統(tǒng)的出現(xiàn),很好地解決了這些問題。實時操作系統(tǒng)(Real Time Operating System,RTOS)使計算機能及時響應外部事件的請求,在嚴格規(guī)定的時間內(nèi)完成對該事件的處理,并控制所有實時設備和實時任務協(xié)調(diào)一致地工作。1.1.1 操作系統(tǒng)概述1.1 操作系統(tǒng)實時操作系統(tǒng)的主要特點是及時響應、高可靠性。(1)及時響應指的是每個信息接收、分析處理和發(fā)送的過程必須嚴格在規(guī)定的時間內(nèi)完成。(2)高可靠性指的是采取多級容錯措施來保證系統(tǒng)的安全及數(shù)據(jù)的安全。到了20世紀80年代,大規(guī)

9、模集成電路工藝技術的快速發(fā)展,微處理器的出現(xiàn),使計算機不僅迎來了個人計算機的時代,而且向計算機網(wǎng)絡、分布式處理、智能化的方向發(fā)展。4.個人計算機操作系統(tǒng)個人計算機操作系統(tǒng)是一種單用戶、多任務的操作系統(tǒng)。其特點是計算機在某一段時間內(nèi)為單用戶服務。用戶無須進行專業(yè)學習,個人計算機操作系統(tǒng)功能簡單。一般會采用圖形界面人機交互的工作方式。1.1.1 操作系統(tǒng)概述1.1 操作系統(tǒng)5.網(wǎng)絡操作系統(tǒng)網(wǎng)絡操作系統(tǒng)基于計算機網(wǎng)絡,是在各種計算機操作系統(tǒng)上按網(wǎng)絡體系結(jié)構協(xié)議標準開發(fā)的軟件套件,包括網(wǎng)絡管理、通信、安全、資源共享等各種網(wǎng)絡應用。其目標是相互通信及資源共享。6.分布式操作系統(tǒng)分布式操作系統(tǒng)(Distr

10、ibuted System)通過通信網(wǎng)絡將不同地域的數(shù)據(jù)處理系統(tǒng)或計算機系統(tǒng)連接起來,使它們實現(xiàn)信息互換和資源共享,協(xié)同完成任務。7.嵌入式操作系統(tǒng)嵌入式操作系統(tǒng)(Embedded Operating System,EOS)是運行在嵌入式系統(tǒng)環(huán)境中,對整個嵌入式系統(tǒng)以及它所操作的各種部件裝置進行統(tǒng)一調(diào)度、分配的系統(tǒng)軟件。1.1.1 操作系統(tǒng)概述1.1 操作系統(tǒng)通過以上描述可知,操作系統(tǒng)位于底層硬件和用戶之間,用戶可以通過操作系統(tǒng)的用戶界面輸入命令,操作系統(tǒng)則對命令進行解釋,驅(qū)動硬件設備,實現(xiàn)人機交互,如圖所示。1.1.2 嵌入式操作系統(tǒng)1.1 操作系統(tǒng)1.1.1節(jié)主要介紹操作系統(tǒng)的發(fā)展以及它們

11、各自的特點,最后簡單地描述了嵌入式操作系統(tǒng)的概念。嵌入式操作系統(tǒng)的概念比較抽象,因此本節(jié)將對其做進一步解釋。認識嵌入式操作系統(tǒng),首先需要理解的是嵌入式系統(tǒng)。嵌入式操作系統(tǒng)與嵌入式系統(tǒng)是完全不同的兩個概念,切勿混為一談。嵌入式系統(tǒng)指的是以應用為中心,以計算機技術為基礎,軟硬件可裁剪,適用于應用系統(tǒng),對功能、可靠性、成本、體積、功耗等有特殊要求的專用計算機系統(tǒng)。1.1.2 嵌入式操作系統(tǒng)1.1 操作系統(tǒng)這里提到的軟硬件可裁剪,指的是根據(jù)不同的硬件平臺的功能需求,對系統(tǒng)軟件部分進行定制,以達到系統(tǒng)軟件剛好適配硬件平臺的狀態(tài),因此也可以稱之為實現(xiàn)操作系統(tǒng)的最優(yōu)化定制。例如,生活中有時會遇到對安卓系統(tǒng)的

12、手機進行刷機(類似于Windows裝系統(tǒng))的情況。在將安卓系統(tǒng)燒寫(移植)到手機之前,需要考慮該系統(tǒng)能否支持手機中的各種硬件模塊。假設某款手機中并沒有支持藍牙的硬件模塊,不具備藍牙傳送的功能,因此,操作系統(tǒng)就不需要實現(xiàn)藍牙的功能代碼(接口驅(qū)動代碼、協(xié)議代碼等)。如果手機需要支持Wi-Fi功能,那么操作系統(tǒng)中則必須存在Wi-Fi模塊的功能代碼,以此來實現(xiàn)對硬件的支持與控制。1.1.2 嵌入式操作系統(tǒng)1.1 操作系統(tǒng)綜上所述,嵌入式系統(tǒng)指的是軟硬件結(jié)合的整個框架體系,上層應用實現(xiàn)與用戶的交互,下層內(nèi)核實現(xiàn)對硬件設備的控制。最終實現(xiàn)用戶與硬件產(chǎn)品的交互,嵌入式系統(tǒng)不斷地發(fā)展,越來越智能化,從而達到產(chǎn)

13、品改善人類生活體驗的目的。圖所示為嵌入式系統(tǒng)的整體框架。1.1.2 嵌入式操作系統(tǒng)1.1 操作系統(tǒng)圖展示的只是嵌入式系統(tǒng)的一小部分,嵌入式系統(tǒng)還可以容納更多的外圍接口,以及各種傳感器,結(jié)合無線傳輸?shù)燃夹g,實現(xiàn)整個網(wǎng)絡架構的應用場景覆蓋。因此嵌入式系統(tǒng)是一個很龐大的體系。而嵌入式操作系統(tǒng)是指用于嵌入式系統(tǒng)的操作系統(tǒng),運行在嵌入式硬件平臺的系統(tǒng)軟件部分。嵌入式操作系統(tǒng)負責嵌入式系統(tǒng)全部軟、硬件的資源分配以及任務調(diào)度等活動,是整個嵌入式系統(tǒng)的核心組件。20世紀80年代開始出現(xiàn)商用嵌入式操作系統(tǒng),它們大部分是為專有系統(tǒng)而開發(fā)的。隨著嵌入式領域的發(fā)展,各種各樣的嵌入式操作系統(tǒng)相繼問世,出現(xiàn)了越來越多的商

14、用嵌入式操作系統(tǒng),包括大量開發(fā)源代碼的嵌入式操作系統(tǒng)。著名的嵌入式操作系統(tǒng)有Linux、c/OS、VxWorks、QNX等。1.1.2 嵌入式操作系統(tǒng)1.1 操作系統(tǒng)1.LinuxLinux已經(jīng)成為了全球第二大操作系統(tǒng),Linux是一套免費使用和自由傳播的類UNIX操作系統(tǒng),基于POSIX和UNIX的多用戶、多任務。Linux存在著不同的版本,但它們都使用了Linux內(nèi)核。例如:RTLinux實現(xiàn)了實時的Linux;cLinux去掉了Linux的內(nèi)存管理單元(Memory Management Unit,MMU),可以支持沒有MMU的處理器。2.c/OSc/OS是一種典型的實時操作系統(tǒng)。目前流

15、行的是第二版本,即c/OS II。其開發(fā)者為美國嵌入式系統(tǒng)領域的專家拉伯羅斯(Jean J.Labrosse)。該系統(tǒng)主要提供任務調(diào)度和管理、內(nèi)存管理、通信、時間管理等功能。其特點是開放源代碼、占用空間小、實時性能優(yōu)良、可擴展性強等。1.1.2 嵌入式操作系統(tǒng)1.1 操作系統(tǒng)3.VxworksVxWorks是美國WindRiver公司的產(chǎn)品,是目前嵌入式系統(tǒng)領域中應用比較廣泛的操作系統(tǒng)。VxWorks實時操作系統(tǒng)由相對獨立、短小精悍的目標模塊組成,用戶可以根據(jù)需要選擇適當?shù)哪K來配置系統(tǒng)。提供了基于優(yōu)先級的任務調(diào)度、通信、中斷、定時器、內(nèi)存管理等功能,并且具有簡明易懂的用戶接口。該系統(tǒng)主要應用

16、于單板機、交換機、路由器等。4.QNXQNX是加拿大QNX軟件系統(tǒng)有限公司開發(fā)的一款實時操作系統(tǒng)。QNX的體系結(jié)構決定了其具有非常好的伸縮性,用戶可以把應用程序代碼和內(nèi)核編譯到一起;其次該系統(tǒng)具有很好的移植性,廣泛應用于醫(yī)療儀器設備、交通運輸、安全防衛(wèi)、POS機、零售機等關鍵型應用領域。1.1.2 嵌入式操作系統(tǒng)1.1 操作系統(tǒng)嵌入式操作系統(tǒng)的選擇是開發(fā)過程中比較關鍵的一步,這將直接影響整個工程的進度以及后期的維護。首先,選擇一款操作系統(tǒng)需要考慮其能否支持硬件;其次需要考慮開發(fā)調(diào)試的工具;最后要考慮的問題是該系統(tǒng)能否滿足應用需求,如果該系統(tǒng)開發(fā)的接口太少,則上層應用層很難進行二次開發(fā)。因此,選

17、擇一款既能滿足應用需求,性價比又可達到最佳的嵌入式操作系統(tǒng),是十分重要的。1.2 Linux操作系統(tǒng)概述1.2.1Linux操作系統(tǒng)的歷史返回目錄1.2.2Linux操作系統(tǒng)的優(yōu)勢1.2.3Linux操作系統(tǒng)的發(fā)行版本1.2.1 Linux操作系統(tǒng)的歷史1.2 Linux操作系統(tǒng)概述20世紀60年代時,大部分計算采用的是批處理的方式。直到1965年,美國AT&T公司貝爾實驗室(AT&T Bell Labs)加入通用電器公司(General Eletric)和麻省理工學院(Massachusetts Institute of Technology,MIT)合作的計劃,開發(fā)出一套多任務、多用戶的分

18、時操作系統(tǒng),即MULTICS(Multiplexed Information and Compuing Service)操作系統(tǒng)。但是由于MULTICS項目比較復雜,目標太大,導致進展太慢,最終計劃被停。1969年,貝爾實驗室決定退出這個項目。當時實驗室有個工程師叫肯 湯普森(Ken Thompson,UNIX系統(tǒng)之父),他在MULTICS上開發(fā)一個名為“星際旅行(Space Traval)”的游戲,運行在GE-635的計算機上,但是運行速度很慢。于是肯 湯普森準備將該游戲移植到一臺PDP-7的機器上,而這臺機器沒有操作系統(tǒng),于是他決定為PDP-7開發(fā)操作系統(tǒng)。1.2.1 Linux操作系統(tǒng)的

19、歷史1.2 Linux操作系統(tǒng)概述圖所示為PDP-7計算機。后來天才工程師丹尼斯 里奇(Dennis Ritchie,C語言之父)加入了肯 湯普森的開發(fā)項目。1970年,PDP-7只能支持兩個使用者,當時布萊恩 柯林漢(Brian Kernighan)開玩笑稱他們的系統(tǒng)為“UNiplexed Information and Computing Service”,縮寫為“UNICS”,后來大家取其諧音,稱其為“UNIX”。1970年,肯 湯普森以BCPL語言為基礎,設計出簡單且接近硬件的B語言(取BCPL的首字母),并且編寫了第一個UNIX操作系統(tǒng)。因此,1970年也被稱為“UNIX元年”。截止

20、到目前,計算機中仍在使用1970年1月1日作為記錄時間的原點。1.2.1 Linux操作系統(tǒng)的歷史1.2 Linux操作系統(tǒng)概述1972年,丹尼斯 里奇在B語言的基礎上設計出一種新的語言,取BCPL的第二個字母作為語言的名字,即現(xiàn)在的C語言。1973年,C語言的主體完成。此時肯 湯普森和丹尼斯 里奇為了解決匯編語言移植困難的“痛點”,使用C語言重寫了UNIX的第三版內(nèi)核。至此,UNIX系統(tǒng)進入了一個新的時刻,為日后UNIX的普及發(fā)展打下了堅實的基礎。1.2.1 Linux操作系統(tǒng)的歷史1.2 Linux操作系統(tǒng)概述1974年,肯 湯普森和丹尼斯 里奇發(fā)表了名為“UNIX分時系統(tǒng)”的文章。使得U

21、NIX操作系統(tǒng)正式與外界見面,學術界表現(xiàn)出廣泛興趣并希望索取源碼。所以,UNIX第五版本就以“僅用于教育目的”之名提供給各大學教學使用。1978年,加州大學伯克利分析在UNIX進行改進,推出了自己的UNIX版本:BSD(Berkeley Softwore Distribution)版本。同時AT&T公司成立了USG(UNIX Support Group,UNIX支持小組),將UNIX變成了商業(yè)化的產(chǎn)品。自此產(chǎn)生了UNIX的兩個版本線,如圖所示。1.2.1 Linux操作系統(tǒng)的歷史1.2 Linux操作系統(tǒng)概述很明顯,BSD的UNIX與AT&T的UNIX競爭引發(fā)了UNIX之戰(zhàn),軟件開發(fā)人員可以根

22、據(jù)自己的需求對UNIX系統(tǒng)的源碼進行裁剪,因此UNIX系統(tǒng)出現(xiàn)了各種各樣的變種。而此時AT&T的商業(yè)運作(即私有化軟件,不對外公開源代碼),令許多UNIX的愛好者與開發(fā)者感到憂慮,他們認為商業(yè)化的種種限制并不利于產(chǎn)品的發(fā)展,相反還可能產(chǎn)生諸多問題。此時一個名為理查德 斯托曼(Richard Stallman)的重要人物出現(xiàn)了,他認為UNIX系統(tǒng)應該是一套完全自由開放的操作系統(tǒng)。一個好的操作系統(tǒng),應該讓更多的愛好者與開發(fā)者參與進來,貢獻自己的所學,才能讓操作系統(tǒng)變得更加優(yōu)異。1.2.1 Linux操作系統(tǒng)的歷史1.2 Linux操作系統(tǒng)概述1984年,理查德 斯托曼啟動了一個宏偉的計劃,即GNU

23、(GNU is not UNIX的遞歸縮寫)計劃。這個計劃的目的是創(chuàng)造一套自由的類UNIX操作系統(tǒng)。這個系統(tǒng)使用與UNIX相同的接口,系統(tǒng)本身和其上的軟件都是自由開發(fā)的,可以被免費獲取、修改、傳播。每個人都可以獲得系統(tǒng)的全部的源代碼,并且對源代碼進行修改完善。圖所示為理查德 斯托曼和GNU計劃標志。理查德 斯托曼于1985年創(chuàng)建了自由軟件基金會,并且于1989年起草了廣為使用的GNU通用公共協(xié)議證書(GPL協(xié)議),以此協(xié)議保證GNU計劃中的所有軟件的自由性。1.2.1 Linux操作系統(tǒng)的歷史1.2 Linux操作系統(tǒng)概述1990年,GNU計劃已經(jīng)初具規(guī)模,其中誕生了很多優(yōu)秀的軟件(世界各地的

24、黑客無償提供,自由軟件基金會雇傭程序員開發(fā)),如函數(shù)庫(Libraries)、文本編輯器(Text Editors)、網(wǎng)站服務器(Web Server)、使用者窗口(UNIX Shell)等。Stallman也參與其中,開發(fā)了GCC、GDB等重要軟件。此時GNU一直沒有開發(fā)出操作系統(tǒng)的核心組件內(nèi)核(Kernel)。1991年,芬蘭赫爾辛基大學的學生林 納 斯 托 瓦 茲(Linus Torvals,Linux之父)為了能在家里的PC上使用與學校一樣的操作系統(tǒng),開始編寫自己的類UNIX操作系統(tǒng)。1.2.1 Linux操作系統(tǒng)的歷史1.2 Linux操作系統(tǒng)概述同年8月,林納斯 托瓦茲在comp.

25、os.minix新聞組中首次發(fā)布了Linux內(nèi)核的第一個公共版本,并上傳自己的操作系統(tǒng)代碼到ftp.funet.fi服務器。最初編寫的操作系統(tǒng)取名為FREAX,并且只適用于Intel 386處理器。該服務器的管理員阿里 萊姆克(Ari Lemke)覺得操作系統(tǒng)既然是Linus編寫的,又是類UNIX操作系統(tǒng),不如就叫Linux。1.2.1 Linux操作系統(tǒng)的歷史1.2 Linux操作系統(tǒng)概述在自由軟件之父理查德 斯托曼精神的感召下,林納斯 托瓦茲很快以Linux的名字把這款類Unix的操作系統(tǒng)加入自由軟件基金會的GNU計劃中,并通過GPL的通用性授權,允許用戶銷售、復制并且改動程序。而參與修改

26、程序的用戶也必須免費公開修改后的代碼。圖所示,為林納斯 托瓦茲和Linux標志。1.2.1 Linux操作系統(tǒng)的歷史1.2 Linux操作系統(tǒng)概述狹義地講,原始的Linux只是一個操作系統(tǒng)的內(nèi)核。如果將Linux操作系統(tǒng)比作英雄,那么林納斯 托瓦茲的Linux就是英雄的心臟。然而生活中,人們習慣于將Linux指代整個操作系統(tǒng),即包括內(nèi)核、上層軟件及服務(函數(shù)庫、編譯器、編輯器等)的整體系統(tǒng)。關于系統(tǒng)的關系如圖所示。因此,在后續(xù)章節(jié)的描述中,Linux操作系統(tǒng)的內(nèi)核則稱為Linux內(nèi)核。1.2.2 Linux操作系統(tǒng)的優(yōu)勢1.2 Linux操作系統(tǒng)概述1.2.1節(jié)主要介紹了Linux操作系統(tǒng)的發(fā)

27、展歷史。Linux操作系統(tǒng)是一個開發(fā)自由的系統(tǒng),用戶可以通過網(wǎng)絡或其他途徑免費獲得,并可以任意修改其源代碼,這是其他嵌入式操作系統(tǒng)做不到的。下面介紹Linux操作系統(tǒng)作為嵌入式操作系統(tǒng)的優(yōu)勢。1.低成本開發(fā)Linux操作系統(tǒng)源代碼開放,允許任何人獲取并修改。通過Linux操作系統(tǒng)進行開發(fā)的軟件同樣需要遵守GPL協(xié)議,公布其源代碼。這樣做一方面降低了開發(fā)的成本;另一方面又可以提高開發(fā)產(chǎn)品的效率,并且可以獲得社區(qū)的支持。2.可以應用于多種硬件平臺Linux操作系統(tǒng)可以支持X86、PowerPC、ARM、MIPS等多種體系結(jié)構,并且已經(jīng)被移植到多種硬件平臺。1.2.2 Linux操作系統(tǒng)的優(yōu)勢1.2

28、 Linux操作系統(tǒng)概述Linux操作系統(tǒng)實現(xiàn)了一個統(tǒng)一的框架對硬件進行管理,從而保證從一個硬件平臺到另一個硬件平臺的改動與上層的應用無關。3.可定制的內(nèi)核Linux內(nèi)核采用模塊定制的方式開發(fā),可以根據(jù)嵌入式硬件平臺的個性需求進行定制,實時地將模塊插入內(nèi)核或從內(nèi)核中移除。經(jīng)過裁剪的Linux內(nèi)核最小可達到150KB以下。4.多用戶多任務Linux操作系統(tǒng)是真正的多用戶多任務的操作系統(tǒng)。多個用戶可以共享系統(tǒng)資源。多任務是現(xiàn)代計算機的一個重要特點,由于Linux操作系統(tǒng)調(diào)度每一個進程都可以平等地訪問處理器,因此它能同時執(zhí)行多個程序,而且各個程序的運行是相互獨立的。1.2.2 Linux操作系統(tǒng)的優(yōu)

29、勢1.2 Linux操作系統(tǒng)概述5.良好的網(wǎng)絡功能Linux操作系統(tǒng)內(nèi)置了豐富的免費網(wǎng)絡服務器軟件、數(shù)據(jù)庫、網(wǎng)頁的開發(fā)工具,如Apache、SSH、MySQL、PHP等。因此Linux操作系統(tǒng)可擔任全方位的網(wǎng)絡服務器。Linux操作系統(tǒng)是首先實現(xiàn)TCP/IP協(xié)議棧的操作系統(tǒng),其內(nèi)核結(jié)構在網(wǎng)絡方面是非常完整的。對依賴于網(wǎng)絡的嵌入式設備來說是很好的選擇。1.2.3 Linux操作系統(tǒng)的發(fā)行版本1.2 Linux操作系統(tǒng)概述Linus Torvalds開發(fā)的Linux操作系統(tǒng)只是一個內(nèi)核,而非一個完整的操作系統(tǒng),而內(nèi)核是一個集設備驅(qū)動、文件系統(tǒng)、進程管理、內(nèi)存管理、網(wǎng)絡協(xié)議等功能的系統(tǒng)軟件。雖然GN

30、U大量生產(chǎn)和收集系統(tǒng)必備的各種組件,但眾多公司在Linux內(nèi)核源碼的基礎上,將各種軟件和文檔包裝起來并提供系統(tǒng)安裝界面和系統(tǒng)配置,設定與管理工具,進而整合出的Linux發(fā)行版(Distribution),才真正推動了Linux操作系統(tǒng)的應用,從而讓更多的人開始關注Linux操作系統(tǒng)。除去非商業(yè)組織Debian開發(fā)的Debian GNU/Linux外,美國的Red Hat公司發(fā)行了Red Hat Linux,法國的Mandrake公司發(fā)行了Mandrake Linux,德國的SUSE公司發(fā)行了SUSE Linux。國內(nèi)眾多公司也發(fā)行了中文版的Linux,如紅旗Linux。Linux目前已經(jīng)有20

31、0多個發(fā)行版本。其中常見的UNIX/類UNIX版本有Solaris、IBM AIX、Red Hat、Fedora Core、SUSE、Debian、Ubuntu、FreeBSD、OpenBSD等。1.2.3 Linux操作系統(tǒng)的發(fā)行版本1.2 Linux操作系統(tǒng)概述下面將對Ubuntu、Red Hat、Debian這三種具有代表性的Linux發(fā)行版進行介紹。1.DebianDebian GNU/Linux是一個非常特殊的版本。1993年,伊恩 默多克(Ian Murdock)發(fā)起Debian計劃,它的開發(fā)模式和Linux操作系統(tǒng)及其他開源代碼操作系統(tǒng)的模式一樣,由志愿者通過互聯(lián)網(wǎng)合作開發(fā)。De

32、bian開發(fā)者所創(chuàng)建的操作系統(tǒng)中的絕大部分基礎工具來源于GNU計劃,因此“Debian”常指Debian GNU/Linux。Debian帶來了超過51000個軟件包(為了能在用戶的計算機上輕松安裝,這些軟件包都已經(jīng)被編譯包裝為一種方便的格式),一個軟件包管理器(Advanced Packaging Tool,PAPT),這些全都是自由軟件。如圖所示,為Debian系統(tǒng)標志。1.2.3 Linux操作系統(tǒng)的發(fā)行版本1.2 Linux操作系統(tǒng)概述Debian系統(tǒng)分為3個版本,分別為穩(wěn)定版(Stable)、測試版(Testing)、不穩(wěn)定版(Unstable)。發(fā)布的版本為穩(wěn)定版,測試版經(jīng)過測試證

33、明無誤后會成為新的穩(wěn)定版。2.UbuntuUbuntu(烏班圖)是一個以桌面應用為主的Linux操作系統(tǒng)。其名稱來源于非洲南部祖魯語或豪薩語的“ubuntu”一詞,意思是“人性”、“人道待人”,是非洲的一種價值觀。類似于儒家的“仁愛”思想。Ubuntu是基于Debian GNU/Linux和GNOME桌面環(huán)境開發(fā)的。從11.04版本起,Ubuntu發(fā)行版放棄了Gnome桌面環(huán)境,改為使用Unity(基于GNOME桌面環(huán)境的用戶界面,由Canonical開發(fā))。Ubuntu的目標在于為一般用戶提供一個最新、穩(wěn)定且主要由自由軟件構建而成的操作系統(tǒng)。2013年,Ubuntu正式發(fā)布面向智能手機的移動

34、操作系統(tǒng)。1.2.3 Linux操作系統(tǒng)的發(fā)行版本1.2 Linux操作系統(tǒng)概述圖所示為Ubuntu系統(tǒng)標志。3.Red HatRed Hat(紅帽)公司創(chuàng)建于1993年,創(chuàng)始人是鮑勃 揚(Bob Young)和馬克 尤因(Marc Ewing),是目前世界上最資深的Linux廠商。目前Red Hat系統(tǒng)分為兩個系列:一個是由Red Hat公司提供收費技術支持和更新的Red Hat Enterprise Linux(RHEL,Red Hat企業(yè)版)和CentOS(RHEL的社區(qū)克隆版本,免費版本);另一個是由Red Hat桌面版發(fā)展起來的免費版本Fedora Core。圖所示為Red Hat系

35、統(tǒng)標志。1.2.3 Linux操作系統(tǒng)的發(fā)行版本1.2 Linux操作系統(tǒng)概述Linux操作系統(tǒng)的發(fā)行版本很多,讀者在進行系統(tǒng)開發(fā)學習時,可根據(jù)自己的需求選擇適合的版本。Linux操作系統(tǒng)版本選取如表所示。1.3 Linux操作系統(tǒng)安裝1.3.1安裝虛擬機返回目錄1.3.2安裝Ubuntu系統(tǒng)1.3.3安裝虛擬機工具1.3.1 安裝虛擬機1.3 Linux操作系統(tǒng)安裝在安裝使用Linux操作系統(tǒng)之前,首先需要考慮為操作系統(tǒng)尋找一個可以使之運行的硬件平臺。在這里,不建議初學者將Linux操作系統(tǒng)直接安裝到計算機的硬盤而替代生活中常用的Windows操作系統(tǒng),因為Linux操作系統(tǒng)的一些工具的使用

36、方式與Windows操作系統(tǒng)不同,對初學者來說不太友好。基于上述情況,建議在Windows操作系統(tǒng)上安裝一個虛擬機軟件,然后將Linux操作系統(tǒng)運行在虛擬機上。在這里需要說明的是,虛擬機(Virtual Machine,VM)的作用為通過軟件模擬實現(xiàn)完整硬件系統(tǒng)的功能。也就是由虛擬機模擬一個硬件平臺,然后將Linux操作系統(tǒng)運行在這個虛擬的“硬件平臺”上。虛擬機如同容器,可將操作系統(tǒng)放置到這個容器中。這樣看來,運行Linux操作系統(tǒng)并不會影響Windows系統(tǒng)的使用,學習起來十分方便。1.3.1 安裝虛擬機1.3 Linux操作系統(tǒng)安裝目前流行的虛擬機軟件有VMware(VMware ACE)

37、、VirtualBox、Virtual PC。這里選用虛擬機VMware Workstation 15 Player 作為安裝演示對象,如圖所示。1.3.1 安裝虛擬機1.3 Linux操作系統(tǒng)安裝1.虛擬機安裝(1)首先進入VMware官方網(wǎng)站,獲取虛擬機資源,如圖所示。1.3.1 安裝虛擬機1.3 Linux操作系統(tǒng)安裝(2)單擊圖中所示的“下載”選項,進入下載頁面,如圖所示。1.3.1 安裝虛擬機1.3 Linux操作系統(tǒng)安裝(3)如圖所示,可以選擇下載“免費產(chǎn)品試用版和演示”中的“Workstation Pro”版本,試用版本身不免費,有使用期限,因此不建議讀者使用。如圖所示。本次選擇

38、“免費產(chǎn)品下載”中的“Workstation Player”版本,直接單擊即可開始下載。1.3.1 安裝虛擬機1.3 Linux操作系統(tǒng)安裝(4)圖所示為Workstation 15 Player簡介與下載選項,選擇Windows版本,即在Windows環(huán)境中安裝虛擬機。(5)雙擊下載好的VMware Workstation 15 Player安裝程序。啟動安裝之后,如遇到重啟計算機提示,則選擇重新啟動。重啟計算機后,再次運行該安裝軟件即可進入安裝界面。如圖所示,單擊“下一步”按鈕即可。1.3.1 安裝虛擬機1.3 Linux操作系統(tǒng)安裝(6)選擇同意用戶許可協(xié)議,單擊“下一步”按鈕,如圖所示

39、。(7)安裝路徑可以選擇默認,也可以根據(jù)情況選擇自定義安裝路徑,需要說明的是,安裝路徑名不建議出現(xiàn)中文名。安裝路徑選擇完成后,進入用戶體驗設置界面。界面中的選項可勾選或者不選,如圖所示。1.3.1 安裝虛擬機1.3 Linux操作系統(tǒng)安裝(8)選擇是否創(chuàng)建快捷方式,然后,單擊“下一步”按鈕,如圖所示。(9)自動完成相關組件的安裝,此過程無須干預,如圖所示。1.3.1 安裝虛擬機1.3 Linux操作系統(tǒng)安裝(10)虛擬機組件安裝完成后,出現(xiàn)提示,單擊“完成”按鈕即可,如圖所示。1.3.1 安裝虛擬機1.3 Linux操作系統(tǒng)安裝(11)安裝向?qū)瓿珊?,運行虛擬機,則進入密鑰驗證界面,選擇“免費

40、將VMware Workstation 15 Player用于非商業(yè)用途”,單擊“繼續(xù)”按鈕即可,如圖所示。1.3.1 安裝虛擬機1.3 Linux操作系統(tǒng)安裝2.創(chuàng)建虛擬機(1)虛擬機安裝完畢后,則需要開始創(chuàng)建虛擬機。啟動VMware Workstation 15 Player軟件,單擊“創(chuàng)建新虛擬機”,如圖所示。1.3.1 安裝虛擬機1.3 Linux操作系統(tǒng)安裝(2)進入新建虛擬機向?qū)Ы缑?,選擇“稍后安裝操作系統(tǒng)”,先創(chuàng)建一個空的虛擬機。通俗地說,即先為Linux操作系統(tǒng)創(chuàng)建一個容器,然后再將操作系統(tǒng)裝入容器中。如圖所示,完成選擇后,單擊“下一步”按鈕。1.3.1 安裝虛擬機1.3 Li

41、nux操作系統(tǒng)安裝(3)進入選擇客戶機操作系統(tǒng),即預先設置虛擬機中運行的操作系統(tǒng)類型??蛻魴C操作系統(tǒng)默認選擇為Linux,版本為Ubuntu64位,因此可直接單擊“下一步”按鈕,如圖所示。1.3.1 安裝虛擬機1.3 Linux操作系統(tǒng)安裝(4)選擇命名虛擬機,并設置此虛擬機存放的位置。本次將虛擬機命名為“Ubuntu16.04”,位置選擇為“E:ubuntuubuntu16.04”,需要注意的是此處設置的位置為自定義目錄,讀者可根據(jù)情況自行設定。如圖所示,單擊“下一步”按鈕。1.3.1 安裝虛擬機1.3 Linux操作系統(tǒng)安裝(5)指定磁盤容量,即設置Linux操作系統(tǒng)使用的硬盤大小。通俗地

42、說,即設置存放Linux操作系統(tǒng)的“容器”大小。設置完成后,單擊“下一步”按鈕。如圖所示。1.3.1 安裝虛擬機1.3 Linux操作系統(tǒng)安裝(6)創(chuàng)建完成,顯示創(chuàng)建虛擬機的詳細信息,如圖所示,單擊“完成”按鈕即可。1.3.1 安裝虛擬機1.3 Linux操作系統(tǒng)安裝(7)創(chuàng)建虛擬機成功之后,顯示編輯運行界面,如圖所示。此時只是創(chuàng)建了虛擬機(只是創(chuàng)建了一個“容器”),沒有安裝操作系統(tǒng)。因此,接下來將展示如何在虛擬機中安裝Ubuntu系統(tǒng)。1.3.2 安裝Ubuntu系統(tǒng)1.3 Linux操作系統(tǒng)安裝本節(jié)將在新創(chuàng)建的虛擬機環(huán)境下安裝Ubuntu系統(tǒng)。(1)在圖所示的界面中,選擇“編輯虛擬機設置”

43、,進入虛擬機設置界面,如圖所示。1.3.2 安裝Ubuntu系統(tǒng)1.3 Linux操作系統(tǒng)安裝(2)選擇“CD/DVD(SATA)”選項,在“連接”欄中選擇已經(jīng)下載好的ISO鏡像文件即Ubuntu系統(tǒng)鏡像,讀者可以在Ubuntu官方網(wǎng)站下載,但是一般下載時間較長。因此也可選擇搜索鏡像站點,從鏡像站點中下載。本次將展示用已經(jīng)下載的鏡像直接安裝。如圖所示,選擇已有鏡像,然后單擊“確定”按鈕。1.3.2 安裝Ubuntu系統(tǒng)1.3 Linux操作系統(tǒng)安裝(3)選擇“播放虛擬機”,如圖所示。1.3.2 安裝Ubuntu系統(tǒng)1.3 Linux操作系統(tǒng)安裝(4)進入Ubuntu系統(tǒng)的安裝配置界面,進行系統(tǒng)

44、語言設置,選擇“English”后,單擊“Install Ubuntu”按鈕,如圖所示。1.3.2 安裝Ubuntu系統(tǒng)1.3 Linux操作系統(tǒng)安裝(5)可以選擇跳過更新提示與安裝第三方軟件推送,單擊“Continue”按鈕,如圖所示。(6)選擇地區(qū)。1.3.2 安裝Ubuntu系統(tǒng)1.3 Linux操作系統(tǒng)安裝(7)鍵盤布局選擇“English(US)”,如圖所示。(8)設置用戶名、主機名與密碼,單擊“Continue”按鈕,如圖所示。1.3.2 安裝Ubuntu系統(tǒng)1.3 Linux操作系統(tǒng)安裝(9)安裝等待界面,如圖所示。(10)如遇到系統(tǒng)提示重啟,則選擇重啟,進入載入畫面,如圖所示,

45、按下Enter鍵。1.3.2 安裝Ubuntu系統(tǒng)1.3 Linux操作系統(tǒng)安裝(11)進入用戶登錄界面,輸入密碼即可完成登錄,如圖所示。(12)進入Ubuntu系統(tǒng)桌面,表示安裝成功,如圖所示。1.3.3 安裝虛擬機工具1.3 Linux操作系統(tǒng)安裝安裝虛擬機工具使虛擬機可以使用一些十分重要的功能。例如,建立共享文件夾。本節(jié)將展示如何安裝虛擬機工具。(1)打開VMware Workstation 15 Player菜單欄,選擇“管理”,單擊“安裝VMware Tools”,如圖所示。1.3.3 安裝虛擬機工具1.3 Linux操作系統(tǒng)安裝(2)選擇“下載并安裝”,如圖所示。1.3.3 安裝虛

46、擬機工具1.3 Linux操作系統(tǒng)安裝(3)等待一段時間,如圖所示。注意,在安裝之前需要禁用物理機上的防火墻,否則防火墻程序可能會阻止VMware Workstation更新程序訪問更新服務器。1.3.3 安裝虛擬機工具1.3 Linux操作系統(tǒng)安裝(4)下載完畢,系統(tǒng)將自動跳轉(zhuǎn),找到虛擬機工具的壓縮包,右鍵單擊虛擬機工具的壓縮包,在彈出的快捷菜單中選擇“Copy To”菜單項,將壓縮包復制到家(用戶主)目錄中(即/home/用戶名)。如圖所示。1.3.3 安裝虛擬機工具1.3 Linux操作系統(tǒng)安裝(5)如圖所示,單擊“Home”選擇家目錄,再單擊“Select”按鈕即可將壓縮包復制到家目錄

47、中。(6)退出當前界面,進入家目錄,準備安裝虛擬機工具。如圖所示。1.3.3 安裝虛擬機工具1.3 Linux操作系統(tǒng)安裝(7)在Ubuntu系統(tǒng)桌面上單擊右鍵,在彈出的快捷菜單中選擇“Open Terminal”菜單項打開系統(tǒng)控制終端。如圖所示。1.3.3 安裝虛擬機工具1.3 Linux操作系統(tǒng)安裝(8)在終端中輸入Shell命令ls(后續(xù)章節(jié)講解),即可查看到當前家目錄中虛擬機壓縮包。使用命令tar對壓縮包進行解壓,如圖所示。1.3.3 安裝虛擬機工具1.3 Linux操作系統(tǒng)安裝(9)解壓結(jié)束后,產(chǎn)生解壓后的文件夾。使用命令cd可進入該目錄,使用命令ls可查看當前目錄下的文件,如圖所示

48、。1.3.3 安裝虛擬機工具1.3 Linux操作系統(tǒng)安裝(10)在命令前加入sudo,表示臨時獲得管理員權限。以管理員身份執(zhí)行目錄中的VMware-install.pl文件(. / + 文件名),在執(zhí)行過程中,如遇到是否判斷,按Y表示選擇“是”,如遇到需要確認的信息,直接按Enter鍵,選擇默認即可,如圖所示。1.3.3 安裝虛擬機工具1.3 Linux操作系統(tǒng)安裝(12)安裝完成,重新啟動虛擬機,如圖所示。至此,虛擬機工具安裝成功。本章作為全書的第1章以概念為主。重點介紹了操作系統(tǒng)、嵌入式操作系統(tǒng)、Linux操作系統(tǒng)的問題,然后介紹了Linux操作系統(tǒng)Ubuntu的安裝以及虛擬機的安裝和配

49、置工作。讀者需要理解操作系統(tǒng)、嵌入式操作系統(tǒng)、Linux操作系統(tǒng)的關系與區(qū)別,才能更好地明確方向,有助于后續(xù)的學習。通過Linux操作系統(tǒng)的安裝,讀者可培養(yǎng)獨立搭建環(huán)境的能力,以適應在開發(fā)中遇到的各種狀況。本章小結(jié)第2章 Linux操作系統(tǒng)的使用初識終端認識Shell Linux操作系統(tǒng)命令初識終端 認識Shell點擊查看本小節(jié)知識架構 Linux操作系統(tǒng)命令點擊查看本小節(jié)知識架構 點擊查看本小節(jié)知識架構 掌握了解掌握了解學習目標掌握終端的基本操作方法1掌握Shell命令用法42了解Shell命令格式3了解Linux操作系統(tǒng)命令本章將從實際操作的角度,帶領讀者進一步認識Lin

50、ux操作系統(tǒng)的基本使用方法。熟練地使用Linux操作系統(tǒng)(Ubuntu)是學習Linux應用開發(fā)的前提,因此本章將通過終端著重介紹Linux操作系統(tǒng)的常用Shell命令,完成一些基本且十分實用的操作功能需求。望讀者可以在理解的基礎上勤練習,從而盡快熟練使用Linux操作系統(tǒng)。2.1 初識終端2.1.1終端介紹返回目錄2.1.2終端軟件人們經(jīng)常說,眼睛是心靈的窗戶。而對于Linux操作系統(tǒng)而言(Ubuntu),終端就是窗戶。盡管目前來看,Linux操作系統(tǒng)的圖形界面已經(jīng)比較成熟,絕大多數(shù)操作完全可以通過圖形界面來完成。但是學習通過終端完成對系統(tǒng)的操作,才能算是打開了Linux系統(tǒng)學習的大門。所謂

51、終端,即圖形界面下的一種命令行窗口。用來實現(xiàn)操作系統(tǒng)與用戶的交互。同Windows一樣,盡管人們適應了通過桌面完成一系列工作,但Ubuntu的一些系統(tǒng)配置仍需要通過終端完成。打開Windows終端的方式為按“Win + R”鍵,然后在命令框內(nèi)輸入“cmd”。2.1.1 終端介紹2.1 初識終端如圖所示。2.1.1 終端介紹2.1 初識終端本書介紹的Ubuntu系統(tǒng)所使用的終端為GNOME,如1.3.3節(jié)中的圖所示,可在系統(tǒng)桌面直接通過單擊打開終端,也可使用快捷鍵打開終端,默認快捷鍵為“Ctrl + Alt + T”(可自行在系統(tǒng)設置中修改)。在終端命令行輸入“exit”并按Enter鍵即可關閉

52、終端;或者單擊該終端頁面(表示選定該終端),再按“Ctrl + D”鍵(可自行修改)關閉。GNOME終端界面如圖所示。2.1.1 終端介紹2.1 初識終端目前桌面環(huán)境下的命令終端軟件有很多種,它們各有特色,且都有各自的用戶群。目前流行的終端軟件有Xterm、Gnome-Terminal、Konsole、rxvt等。本書使用的Linux操作系統(tǒng)(Ubuntu)已默認安裝Gnome-Terminal,如圖所示。Gnome-Terminal提供了剪切、粘貼、多標簽顯示,以及設置終端配置文件等功能。中文支持和用戶界面相對友好。用戶可以使用窗口菜單或快捷鍵完成操作。Xterm是一款基于 X Window

53、 System系統(tǒng)的終端模擬器,用來提供多個獨立的Shell 輸入輸出。其最早由馬克 范德沃德(Mark Vandevoorde)于1984年為VS100顯示器編寫的獨立虛擬終端。Konsole是基于KDE平臺的終端模擬器,除了提供支持使用Shell的方法,Konsole同樣提供了很多能讓命令行操作便利的功能,如配置文件管理,回滾和配色方案,以及半透明效果等。2.1.2 終端軟件2.1 初識終端rxvt是X Window系統(tǒng)下一個很優(yōu)秀的終端模擬器。作為標準的xterm終端的替代品。具有占用資源小,啟動快的特點。上述幾款終端軟件區(qū)別不大,窗口類似,都用來實現(xiàn)命令的輸入,完成用戶與操作系統(tǒng)的交互

54、。名詞解釋:X Window。X Window是一種以位圖方式顯示的軟件窗口系統(tǒng),最早于1984年麻省理工學院開發(fā),后來變成UNIX、類UNIX等操作系統(tǒng)所一致使用的標準化軟件工具包及顯示架構的運作協(xié)議。X Window通過軟件工具及架構協(xié)議建立操作系統(tǒng)所用的圖形用戶界面,此后逐漸擴展到其他操作系統(tǒng)上,幾乎所有的操作系統(tǒng)都能支持與使用X Window。GNOME和KDE也都是以X Window為基礎構建成而成的。2.1.2 終端軟件2.1 初識終端2.2 認識Shell2.2.1Shell概述返回目錄2.2.2Shell命令格式2.2.1 Shell概述2.2 初識Shell用戶使用操作系統(tǒng)幾

55、乎都在桌面環(huán)境下,通過鼠標單擊操作基本可以完成大部分的工作。圖形界面對用戶十分友好,交互方便。然而,Linux操作系統(tǒng)的許多功能使用Shell命令來完成要比圖形界面更快速且直接。因此,掌握Shell命令的用法十分重要。學習Shell命令,首先需要理解Shell的定義以及Shell在操作系統(tǒng)中的定位。Shell可直譯為“貝殼”,而Linux操作系統(tǒng)中的Shell可以被視為Linux內(nèi)核的一個外層保護工具。主要負責完成用戶與內(nèi)核之間的交互,其主要面對的是用戶。Shell本質(zhì)上是一個命令行解釋器。其功能為將用戶命令解析為操作系統(tǒng)所能理解的指令,從而實現(xiàn)用戶與操作系統(tǒng)的交互。Shell為操作系統(tǒng)提供了

56、內(nèi)核以上的功能,直接用來管理和運行系統(tǒng)。2.2.1 Shell概述2.2 初識Shell用戶、Shell和Linux操作系統(tǒng)內(nèi)核之間的關系,如圖所示。在這里需要特別注意的是Shell、Shell腳本、Shell命令三者的區(qū)別,它們是三個不同的概念。Shell命令是用戶向系統(tǒng)內(nèi)核發(fā)送的的控制請求,而這個控制命令是無法被內(nèi)核理解的。它只是一個文本流。2.2.1 Shell概述2.2 初識Shell而Shell是命令行解釋器,是用來解析用戶命令的。Linux內(nèi)核可以做很多事,硬件如顯卡、聲卡、內(nèi)存、硬盤等都由內(nèi)核來控制。這些硬件執(zhí)行的命令需要由用戶來下達,而內(nèi)核對用戶的文本控制命令是“聽不懂”的。因

57、此,用戶在命令行提示符下輸入命令文本,這樣的命令傳遞給內(nèi)核前需要有一個“翻譯”,這個“翻譯”就是Shell。在特定的情況下,硬件需要執(zhí)行很多命令,這時可以將命令集合起來,結(jié)合控制語句,編輯成Shell腳本文件,交由Shell批量執(zhí)行。Shell有很多種類型,不同的Shell具備不同的功能。Linux操作系統(tǒng)支持的Shell種類如下。(1)Bourne Shell(簡稱sh)由AT&T貝爾實現(xiàn)室鮑恩(S.R.Bourne)開發(fā)。Bourne Shell是UNIX最初使用的Shell。Bourne Shell在Shell編程方面十分優(yōu)秀,但在處理與用戶的交互方面不盡如人意。例如,不支持別名與歷史記

58、錄等功能。2.2.1 Shell概述2.2 初識Shell(2)Bourne Again Shell(簡稱bash)是多數(shù)Linux操作系統(tǒng)發(fā)行版的默認Shell。作為Bourne Shell的增強版,其各項功能都比較完善。與Bourne Shell完全向下兼容。它提供了命令補齊、命令編輯和命令歷史等特色功能,有很友好的用戶界面。(3)C Shell(簡稱csh)相較于Bourne Shell更適合編程,其語法與C語言類似。由加州大學伯克利分校開發(fā)。C Shell的語法相對復雜,且執(zhí)行效率不高。(4)Korn Shell(簡稱ksh),由戴維 科恩(David Korn)開發(fā)。與Bourne

59、Shell兼容。Linux操作系統(tǒng)提供pdksh(ksh的擴展),支持任務控制,可以在命令行上掛起、后臺執(zhí)行、喚醒或終止程序。2.2.1 Shell概述2.2 初識ShellLinux操作系統(tǒng)中Shell的運行環(huán)境是終端。用戶只需開啟終端,即可啟動Shell環(huán)境。如圖所示,命令行提示符是Shell運行環(huán)境的標志。2.2.2 Shell命令格式2.2 初識Shell1.命令提示符通常情況下Shell命令行提示符采用以下的格式。用戶在提示符后面輸入命令并按Enter鍵,向系統(tǒng)發(fā)送指令。username:用戶名,即當前登錄用戶的用戶名。hostname:主機名,即系統(tǒng)的主機名。direction:目

60、錄名,即當前用戶所處的路徑,“”表示在用戶主目錄下;“/”表示在根目錄(類似于Windows系統(tǒng)下的C盤)下,即系統(tǒng)目錄下。$:Shell提示符,表示當前用戶為普通用戶。如果當前用戶為超級用戶(管理員),則提示符為“#”。2.2.2 Shell命令格式2.2 初識Shell如圖所示,在Ubuntu系統(tǒng)中,通過鼠標單擊或者快捷鍵“Ctrl + Alt + T”打開終端,看到當前的提示符為“l(fā)inuxubuntu:/1000phone$”。其中,“l(fā)inux”為當前登錄的用戶名;主機名為“ubuntu”;當前用戶所處的路徑為“/1000phone”,即用戶主目錄下的“1000phone”目錄中。2

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論