Linux系統(tǒng)及開發(fā)工具簡介.ppt_第1頁
Linux系統(tǒng)及開發(fā)工具簡介.ppt_第2頁
Linux系統(tǒng)及開發(fā)工具簡介.ppt_第3頁
Linux系統(tǒng)及開發(fā)工具簡介.ppt_第4頁
Linux系統(tǒng)及開發(fā)工具簡介.ppt_第5頁
已閱讀5頁,還剩39頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、Linux系統(tǒng)及開發(fā)工具簡介,李剛 2011.3.21,主要內(nèi)容,Linux系統(tǒng)簡介 Linux常用命令 嵌入式Linux編輯器Vi的使用 嵌入式Linux編譯器gcc的使用 嵌入式Linux調(diào)試器gdb的使用 make工程管理器,Linux系統(tǒng)簡介,熟悉與了解Linux的一些基礎知識 了解Linux內(nèi)核的基本概念和Linux文件結構 掌握和熟練運用Linux常用命令以及Linux文本編輯。,Linux基礎知識,什么是操作系統(tǒng)? 嵌入式操作系統(tǒng)的發(fā)展 隨著嵌入式系統(tǒng)的發(fā)展,從八十年代末開始相繼出現(xiàn)了一些嵌入式操作系統(tǒng)。如:Vxwork、pSOS、Neculeus和Windows CE。,Lin

2、ux基礎知識,簡單地說,Linux是一套免費使用和自由傳播的類Unix操作系統(tǒng),這個系統(tǒng)是由世界各地的成千上萬的程序員設計和實現(xiàn)的,目的是建立不受任何商品化軟件的版權制約的、全世界都能自由使用的Unix兼容產(chǎn)品。 嵌入式Linux是對Liinux經(jīng)過小型化裁剪,能夠固化在容量相對較?。〝?shù)百K到數(shù)百M)的存儲器芯片中,應用于特定的嵌入式場合Linux。,Linux基礎知識,Linux是一個網(wǎng)絡操作系統(tǒng) (Network Operating System,NOS)。 所謂網(wǎng)絡操作系統(tǒng)則在一般操作系統(tǒng)的功能上增加了網(wǎng)絡功能,具體包括: 實現(xiàn)網(wǎng)絡中各計算機之間的通信和資源共享; 提供多種網(wǎng)絡服務軟件;

3、 提供網(wǎng)絡用戶的應用程序接口。,Linux基礎知識,Linux的由來 Linux最早是Linus Torvalds于1991年在芬蘭赫爾辛基大學原創(chuàng)開發(fā)的,并在GNU (GNUs Not Unix) 的GPL(General Public License)原則下發(fā)行。 Linux繼承了Unix,他們相似和相同的東西好多,所以 Linux還是類Unix的操作系統(tǒng)。有一種說法是Linux是Unix的一個變種版本。,Linux基礎知識,Linux內(nèi)核版本有兩種: 穩(wěn)定版和開發(fā)版 Linux內(nèi)核的命名機制: num.num.num 其中: 第一個數(shù)字是主版本號 第二個數(shù)字是次版本號 第三個數(shù)字是修訂版

4、本號 如果次版本號是偶數(shù),那么該內(nèi)核就是穩(wěn)定版的;若是奇數(shù),則是開發(fā)版的。頭兩個數(shù)字合在一齊可以描述內(nèi)核系列。如穩(wěn)定版的2.6.0,它是2.6版內(nèi)核系列。,Linux基礎知識,一個典型的Linux發(fā)行版包括: Linux內(nèi)核 一些GNU程序庫和工具 命令行shell 圖形界面的X Window系統(tǒng) 相應的桌面環(huán)境,如KDE或GNOME 并包含數(shù)千種從辦公套件,編譯器,文本編輯器到科學工具的應用軟件。,Linux基礎知識,Linux發(fā)行版有 : Debian; 紅帽(Redhat); Ubuntu; Suse; Fedora。,Linux開發(fā)應用,1、Linux內(nèi)核開發(fā) PDA個人掌上電腦; 專

5、用的網(wǎng)絡設備;防火墻設備,VPN(虛擬專用網(wǎng)絡)設備等是用Linux編寫的,國產(chǎn)的,現(xiàn)在銷售的十分不錯; 硬件驅(qū)動程序。,Linux開發(fā)應用,2、Linux網(wǎng)絡編程 php編程,建立動態(tài)站點; jsp編程; perl,cgi編程。,Linux開發(fā)應用,3、Linux系統(tǒng)下數(shù)據(jù)庫的開發(fā) my sql中小型數(shù)據(jù)庫系統(tǒng); oracle數(shù)據(jù)庫; DB2數(shù)據(jù)庫,IBM數(shù)據(jù)庫系統(tǒng)。,Linux特點,Linux特點如下: 1)自由軟件,開放源代碼; 2)真正的多用戶、多任務操作系 3)可靈活裁剪配置; 4)支持多種硬件平臺; 5)提供強大的管理功能 6)完全符合POSIX標準 7)具有豐富的圖形用戶界面 8

6、)具有強大的網(wǎng)絡功能,GNU 與POSIX標準,Linux的發(fā)展離不開GNU(GNU在英文中原意為非洲牛羚,這里是GNU is Not Unix的遞歸縮寫),GNU計劃又稱革奴計劃,是由Richard Stallman在1983年9月27日公開發(fā)起的,它的目標是創(chuàng)建一套完全自由的操作系統(tǒng)。,GNU 與POSIX標準,為保證GNU軟件可以自由地“使用、復制、修改和發(fā)布”,所有GNU軟件都在一份在禁止其他人添加任何限制的情況下授權所有權利給任何人的協(xié)議條款,GNU通用公共許可證(GNU General Public License,GPL)。這個就是被稱為“反版權”(或稱Copyleft)的概念。

7、,GNU 與POSIX標準,GNU 包含3個協(xié)議條款,它們是: GPL:GNU通用公共許可證(GNU General Public License) LGPL:GNU較寬松公共許可證 (GNU Lesser General Public License),舊稱 GNU Library General Public License (GNU 庫通用公共許可證); GFDL:GNU自由文檔許可證(GNU Free Documentation License )的縮寫形式。,GNU 與POSIX標準,GNU計劃開發(fā)出了許多高質(zhì)量的免費軟件,如:GCC、GDB、Bash Shell等,這些軟件為Lin

8、ux的開發(fā)創(chuàng)造了基本的環(huán)境,是Linux發(fā)展的重要基礎,因此,嚴格來講,Linux應該被稱為GNU/Linux。,GNU 與POSIX標準,POSIX 表示可移植操作系統(tǒng)接口(Portable Operating System Interface ,POSIX )。 電氣和電子工程師協(xié)會(Institute of Electrical and Electronics Engineers,IEEE)最初開發(fā) POSIX 標準,是為了提高 UNIX 環(huán)境下應用程序的可移植性。然而,POSIX 并不局限于 UNIX。,Linux介紹,Linux操作系統(tǒng)主要包含哪幾部分? 內(nèi)核 shell工具 文件結

9、構 實用工具,Linux內(nèi)核,內(nèi)核是Linux系統(tǒng)的靈魂,負責整個系統(tǒng)的內(nèi)存管理,進程調(diào)度和文件管理。 它從用戶那里接受命令并把命令送給內(nèi)核去執(zhí)行。 Linux內(nèi)核的容量并不大,并且大小可以裁減 。 一般一個功能比較全面的內(nèi)核也不會超過1M。 合理的配置Linux內(nèi)核是嵌入式開發(fā)中很重要的一步,對內(nèi)核的充分了解是嵌入式Linux開發(fā)的基本功。,Linux內(nèi)核進程管理,進程管理功能負責創(chuàng)建和撤銷進程以及處理他們和外部世界的連接。不同進程之間的通信是整個系統(tǒng)的基本功能,因此也由內(nèi)核處理。除此之外,控制進程如何共享CPU資源的調(diào)度程序也是進程管理的一部分。概括的說,內(nèi)核的進程管理活動就是在單個或多個

10、CPU上實現(xiàn)多進程的抽象。,Linux內(nèi)核內(nèi)存管理,內(nèi)存是計算機的主要資源之一,用來管理內(nèi)存的策略是決定系統(tǒng)性能的一個關鍵因素。內(nèi)核在有限的可用資源上為每個進程都創(chuàng)建了一個虛擬尋址空間。內(nèi)核的不同部分在和內(nèi)存管理子系統(tǒng)交互時使用一套相同的系統(tǒng)調(diào)用,包括從簡單的malloc/ free到其他一些不常用的系統(tǒng)調(diào)用。,Linux內(nèi)核文件系統(tǒng),Linux在很大程度上依賴于文件系統(tǒng)的概念,Linux中的每個對象幾乎都是可以被視為文件的。內(nèi)核在沒有結構硬件上構造結構化的文件系統(tǒng)。所構造的文件系通在整個系統(tǒng)中廣泛使用。另外,Linux支持多種文件系統(tǒng)類型,即在物理介質(zhì)上組織的結構不同。,Linux內(nèi)核設備控

11、制,幾乎每個系統(tǒng)操作最終都會映射到物理設備上。除了處理器,內(nèi)存以及其他很有限的的幾個實體外,所有的設備控制操作都由與被控制設備相關的代碼完成。這段代碼叫做設備驅(qū)動程序,內(nèi)核必須為系統(tǒng)中的每件外設嵌入相應的驅(qū)動程序。,Linux內(nèi)核網(wǎng)絡功能,網(wǎng)絡功能也必須有操作系統(tǒng)來管理,因為大部分網(wǎng)絡操作都和具體的進程無關。在每個進程處理這些數(shù)據(jù)之前,數(shù)據(jù)報必須已經(jīng)被收集、標識、和分發(fā)。系統(tǒng)負責在應用程序和網(wǎng)絡之間傳遞數(shù)據(jù)。另外,所有的路由和地址解析問題都由內(nèi)核處理。,Linux Shell,Shell是系統(tǒng)的用戶界面,提供了用戶與內(nèi)核進行交互操作的一種接口。它接收用戶輸入的命令并把它送入內(nèi)核去執(zhí)行。 She

12、ll是一個命令解釋器,它解釋由用戶輸入的命令并且把它們送到內(nèi)核。 Shell編程語言具有普通編程語言的很多特點,比如它也有循環(huán)結構和分支控制結構等,用這種編程語言編寫的Shell程序與其他應用程序具有同樣的效果。,Linux Shell,Linux系統(tǒng)提供多種不同的Shell以供選擇。常用的有: Bourne Shell(簡稱sh) 在編程方面非常優(yōu)秀。 C-Shelll(簡稱csh) 提供很好的用戶交互特征。 Korn Shell(簡稱ksh)結合以上二者有點,具有很好的命令交互界面和編程交互界面。 Bourne Again Shell (簡稱bash)。GNU開發(fā),Linux中默認的一個S

13、hell。,Linux文件結構,內(nèi)核,Shell和文件結構一起形成了基本的操作系統(tǒng)結構。它們使得用戶可以運行程序,管理文件以及使用系統(tǒng)。此外,Linux操作系統(tǒng)還有許多被稱為實用工具的程序,輔助用戶完成一些特定的任務。,Linux文件結構,文件結構是文件存放在磁盤等存儲設備上的組織方法。主要體現(xiàn)在對文件和目錄的組織上。目錄提供了管理文件的一個方便而有效的途徑。 使用Linux,用戶可以設置目錄和文件的權限,以便允許或拒絕其他人對其進行訪問。Linux目錄采用多級樹形結構,用戶可以瀏覽整個系統(tǒng),可以進入任何一個已授權進入的目錄,訪問那里的文件。,Linux是一個多用戶系統(tǒng),操作系統(tǒng)本身的駐留程序

14、存放在以根目錄開始的專用目錄中,有時被指定為系統(tǒng)目錄。 Linux文件結構目錄如下:,Linux文件結構,Linux文件結構,在Linux中,無論操作系統(tǒng)管理幾個磁盤分區(qū),這樣的目錄樹只有一個。從結構上講,各個磁盤分區(qū)上的樹型目錄不一定是并列的。,Linux文件目錄含義,1) /bin bin是binary的縮寫。這個目錄沿襲了UNIX系統(tǒng)的結構,存放著使用者最經(jīng)常使用的命令。例如cp、ls、cat,等等。 2) /boot 這里存放的是啟動Linux時使用的一些核心文件。 3)/home 用戶的主目錄,比如說有個用戶叫wang,那他的主目錄就是/home/wang也可以用wang表示。 4)

15、/dev dev是device(設備)的縮寫。這個目錄下是所有Linux的外部設備,其功能類似DOS下的.sys和Win下的.vxd。在Linux中設備和文件是用同種方法訪問的。例如:/dev/hda代表第一個物理IDE硬盤。,Linux文件目錄含義,5)/etc 這個目錄用來存放系統(tǒng)管理所需要的配置文件和子目錄。 6)/lib 這個目錄里存放著系統(tǒng)最基本的動態(tài)鏈接共享庫,其作用類似于Windows里的.dll文件。幾乎所有的應用程序都須要用到這些共享庫。 7)/sbin 這里存放的是系統(tǒng)管理員使用的管理程序。 8)/tmp 用來存放一些臨時文件的地方了。,Linux文件目錄含義,9)/los

16、t+found 這個目錄平時是空的,當系統(tǒng)不正常關機后,這里就成了一些無家可歸的文件的避難所。對了,有點類似于DOS下的.chk文件。 10)/mnt 這個目錄是空的,系統(tǒng)提供這個目錄是讓用戶臨時掛載別的文件系統(tǒng)。 11)/proc 這個目錄是一個虛擬的目錄,它是系統(tǒng)內(nèi)存的映射,我們可以通過直接訪問這個目錄來獲取系統(tǒng)信息。也就是說,這個目錄的內(nèi)容不在硬盤上而是在內(nèi)存里。,Linux文件目錄含義,12)/root 系統(tǒng)管理員(也叫超級用戶)的主目錄。作為系統(tǒng)的擁有者,總要有些特權,比如單獨擁有一個目錄。 13) /var 這個目錄中存放著那些不斷在擴充著的東西,為了保持usr的相對穩(wěn)定,那些經(jīng)常

17、被修改的目錄可以放在這個目錄下,實際上許多系統(tǒng)管理員都是這樣干的。順帶說一下系統(tǒng)的日志文件就在/var/log目錄中。,Linux文件目錄含義,14)/usr 這是最龐大的目錄,我們要用到的應用程序和文件幾乎都存放在這個目錄下。其中包含以下子目錄; (1)/usr/X11R6 存放X-Window的目錄; (2)/usr/bin 存放著許多應用程序; (3)/usr/sbin 給超級用戶使用的一些管理程序就放在這里;,Linux文件目錄含義,(4)/usr/doc 這是Linux文檔的大本營; (5)/usr/include Linux下開發(fā)和編譯應用程序需要的頭文件,在這里查找; (6)/u

18、sr/lib 存放一些常用的動態(tài)鏈接共享庫和靜態(tài)檔案庫; (7)/usr/local 這是提供給一般用戶的/usr目錄,在這里安裝軟件最適合;,Linux文件目錄含義,(8)/usr/man man在Linux中是幫助的同義詞,這里就是幫助文檔的存放目錄; (10)/usr/src Linux開放的源代碼就存在這個目錄 !,Linux實用工具,標準的Linux系統(tǒng)都有一套叫做實用工具的程序,它們是專門的程序,例如編輯器、執(zhí)行標準的計算操作等。用戶也可以產(chǎn)生自己的工具。 實用工具可分三類: 1)編輯器:用于編輯文件。 2)過濾器:用于接收數(shù)據(jù)并過濾數(shù)據(jù)。 3)交互程序:允許用戶發(fā)送信息或接收來自其他用戶的信息。,Linux下有兩種用戶,1) root用戶 超級權限者,系統(tǒng)的擁有者,在Linux系統(tǒng)中有且只有一個root用戶,它可以在系統(tǒng)中任何操作。在系統(tǒng)安裝時所設定的密碼就是 root用戶的密碼。命令提示符為#。 2) 普通用戶 Linux系統(tǒng)可以創(chuàng)建許多普通用戶,并為其指定相應的權限,使其有限地使用Linux系統(tǒng)。命令提示符為$。,切換用戶,如果不指定用戶名,則默認將用戶身份換至root。從root身份切換到其他任何身份都不需要口令。 su username (從root身份切換到默認用戶) su root(切換到root用戶,并將root的

溫馨提示

  • 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

提交評論