Presentation is loading. Please wait.

Presentation is loading. Please wait.

第12章 Linux與 嵌入式uClinux系統

Similar presentations


Presentation on theme: "第12章 Linux與 嵌入式uClinux系統"— Presentation transcript:

1 第12章 Linux與 嵌入式uClinux系統

2 大綱 12.1 Linux緣由 12.2 uClinux 作業平台 12.3 Linux檔案系統 12.4 Vim編譯平台

3 12.1 Linux緣由 12.1 Linux緣由 12.2 uClinux 作業平台 12.3 Linux檔案系統 12.4 Vim編譯平台

4 12.1 Linux緣由 Linux 作業系統的產生,從早期 Multics 作業系統談起。
Multics OS是由貝爾實驗室(AT&T公司的一個部門)、麻省理工學院(MIT)及奇異電子公司(GE)所共同參與研發的,是一套安裝在大型主機上多人多工的作業系統。 在 Multics 計劃中止後,由貝爾實驗室的兩位軟體工程師 Thompson 與 Ritchie 為主導,根據發展 Multics 時期的心得,並以 C 語言為基礎發展出 UNIX OS 。

5 12.1 Linux緣由 1973年,UNIX 正式對外發表。 UNIX 的分支- BSD
UNIX 發展初期,AT&T 採取開放政策,允許讓全世界各地玩家分享其成果。 可針對原始碼 (source code) 部分進行修正,因此能將 UNIX 移植到不同平台上。 UNIX 的分支- BSD BSD 是在 1978 年由加州柏克萊大學 (Berkeley) 的 Bill Joy 為主導,所研發出來的作業系統。 Bill Joy 為後來美國昇陽公司 (Sun Microsystem) 的創辦者,該公司之後又發展出一套 Sun OS (Solaris 前身)。

6 12.1 Linux緣由 GNU設計許多自由軟體提供大家使用,並以 GPL (GNU General Public License) 方式對外發行。 GPL 是一種軟體的授權模式,只要軟體以 GPL 來對外發行,便代表任何人可自由免費取得該軟體與原始碼。使用者可以複製、修改其中原始碼,修改過還可用 GPL 方式再對外發表,提供他人使用。

7 12.1 Linux緣由 1990 年時,GNU 已把 GNU 作業系統所需的軟體設計得差不多了,但唯獨欠缺核心 (kernel) 這部分。
一位芬蘭的赫爾辛基大學資訊系就讀學生,名字叫做 Linus-Torvalds,其選修了一門 UNIX 課程,藉著學習而喜愛這套作業系統。 因此他在386系列的個人PC上安裝 Minix OS,但因 Minix 無法滿足 Linus 使用上需求,便開始自己撰寫核心程式,並於 1991 年網路在上釋出第一個核心版本 版,並將其命名為 Linux (Linus' minix)。

8 12.1 Linux緣由 在 1992 年,Linux 與 GNU 計劃中的很多軟體程式做結合,而正式成為一套 GNU/Linux 作業系統。 自1991年11月由芬蘭的 Linus Ttorvalds 推出 Linux 版核心至今,Linux 核心已經升級到 Linux2.6.24(寫本檔案時 Linux 核心)。

9 12.1 Linux緣由 目前比較穩定的版本是 Linux2.6.14。 在 Linux 的版本號中
第一數為主版本號。第二個為次版本號。第三個為修訂號。 次版本號為偶數表明是穩定發行版本,奇數則是在開發中的版本。

10 12.1 Linux緣由 系統呼叫介面 行程管理 記憶體管理 呼叫 程式 區塊 裝置管理 字元 TCP/IP 協議 網路事物處理
系統結構相關程式碼 硬體平台

11 目前存在的 Linux Distributions 有數十種版本,最常見者有:
RedHat Mandriva (原 Mandrake) Debian ( GNU ) Slackware SuSE Turbo Linux Fedora CentOS、… 等等

12 12.1 Linux緣由 Linux的優點、特色: 穩定性 多人多工 支援多平台 具行程間記憶體保護
可讓不同的使用者於同一時間來操作系統,且可以執行相同的或不同的多項應用程式。 支援多平台 具行程間記憶體保護 開放原始碼 ( Open Source) 大部份程式原始碼公開,並允許程式設計師依需要修改 具卓越的網路能力 Linux 是以 TCP/IP 為主要的通訊協定 提供完整的程式開發工具

13 12.2 uClinux 作業平台 12.1 Linux緣由 12.2 uClinux 作業平台 12.3 Linux檔案系統 12.4 Vim編譯平台

14 12.2 uClinux 作業平台 一般在PC主機上開發應用程式時,由於PC主機有完善的作業系統並提供應用程式介面(API),因此開發好的應用程式可在作業系統上執行。 針對嵌入式系統開發,其應用程式可以無需使用作業系統在空板上執行,但這樣會缺少了嵌入式系統任務調度、記憶體管理及中斷控制管理等優勢。

15 12.2 uClinux 作業平台 嵌入式系統所該具備的功能如下: 任務管理 計時器管理 記憶體管理 資源管理 事件管理 系統管理 消息管理
佇列管理 中斷處理 提供多工處理且有效分配系統資源的功能,

16 12.2 uClinux 作業平台 uClinux是一個完全符合GNU/GPL公約的作業系統,完全開放代碼,現在由Lineo公司支援維護。
uClinux的名字來自於希臘字母“mu”和英文大寫字母“C”的結合。“mu”代表“微小”之意,字母“C”代表“控制器”,即“微控制領域中的Linux系統”。 隨著uClinux的誕生 ,使得程式工程師對於沒有提供記憶體管理單元(Memory Management Unit,以下簡稱MMU)功能模組的嵌入式系統,開發變的相對容易。

17 12.2 uClinux 作業平台 uClinux從Linux 2.0/2.4內核衍生而來,沿襲了主流Linux的絕大部分特性。
其針對沒有MMU的CPU,且為嵌入式系統做許多小型化的工作。適用於沒有虛擬記憶體或記憶體管理單元(MMU)的CPU來使用。 大部份不具備MMU功能模組的晶片,其通常用於具有很少的記憶體或Flash的嵌入式系統中。

18 12.2 uClinux 作業平台 uClinux主要優點 穩定、良好的移植性 優秀的網路功能 完備的對各種檔系統的支援 標準豐富的API

19 12.2 uClinux 作業平台 其主要特點有: 1.支援通用Linux API 2.核心體積小於512K
3.具有完整的TCP/IP協議棧 4.支援其他大量的網路協定 5.支援各種檔案系統 (NFS,ext2,romfs,jffs,FAT16/32 以及 MS-DOS)

20 12.3 Linux檔案系統 12.1 Linux緣由 12.2 uClinux 作業平台 12.3 Linux檔案系統 12.4 Vim編譯平台

21 12.3 Linux檔案系統 檔案系統是一種存儲和組織電腦檔案和數據的方法,其使得對其訪問和查找變得容易。
在 Linux 裡面﹐檔案系統都從一個稱為 root ( / ) 的根目錄開始。 在 / 下面是一些檔案子目錄﹐而子目錄下面也有其自己的檔案和子目錄﹐再下面的子目錄也一樣。 整個檔案結構就像樹狀一樣,由根開始﹐然後分支下去延伸的結構,稱為層階(hierarchy)式結構。

22 12.3 Linux檔案系統

23 12.3 Linux檔案系統 Linux中內部也具有跟Windows類似的圖形化操作介面-X Windows
但是容易耗費資源,且對系統管理及設定工作上尚有不足地方。 透過文字模式方式,可透過下指令的方式完成使用者的各項選項。 下列整理一些常用的Linux指令,以供學員可以方便查閱。

24 12.3 Linux檔案系統 範例1:$ cat example.txt 則在螢幕上顯示出example.txt 檔的內容。 範例2:$ cat - A exam2.txt 則在螢幕上顯示出exam2.txt 檔的內容,而且如果檔中含有特殊字元的話,一併顯示。

25 12.3 Linux檔案系統 more命令 功能:在終端螢幕按屏顯示文字檔案。 語法: more [ - 選項 ] 檔 說明:

26 12.3 Linux檔案系統 範例1:用分頁的方式顯示一個檔的內容。 $ more example1.c
範例2:顯示一個檔的內容,但顯示之前先清屏,並且在顯示器的最下方顯示完整的百分比。 $ more - dc example1.c 範例3:顯示一個檔的內容,要求每十行顯示一次,且顯示之前先清屏。 $ more - c example1.c

27 12.3 Linux檔案系統 檔案拷貝,刪除與搬移命令 cp mv rm

28 12.3 Linux檔案系統 範例1: 範例2: 將/usr/xu中的所有檔移到當前目錄(用“.”表示)中:
$ mv /usr/xu/ * . 範例2: 將文件wch.txt重命名為wjz.doc $ mv wch.txt wjz.doc

29 12.3 Linux檔案系統 使用rm注意事項 使用rm命令要格外小心。因為一旦檔案被刪除,它是不能被恢復的。
例如,使用者在輸入cp,mv或其他命令時,不小心誤輸入了rm命令,當使用者按了”Backspace”鍵並認識到自己的錯誤時,檔案已經刪除了。 建議使用者在使用rm命令移動檔時,最好使用i選項。避免使用者在不經意的情況下用rm命令刪除不想刪除的檔案。

30 12.3 Linux檔案系統 範例: 使用者要刪除檔案test和example。確認每個檔是否刪除。最終決定只刪除example檔。
$ rm - ii test example 刪除Test跟example Remove test ?n 確認是否刪除test,選擇不 Remove example ?y 確認是否刪除example,選擇是

31 12.3 Linux檔案系統 打包、壓縮與解壓縮指令 tar gzip unzip zgrep

32 12.3 Linux檔案系統 掛載與卸載指令 Mount umount

33 12.4 Vim編譯平台 12.1 Linux緣由 12.2 uClinux 作業平台 12.3 Linux檔案系統 12.4 Vim編譯平台

34 12.3 Linux檔案系統 Vim (“Vi IMproved”)在Linux作業系統下,是和 Vi 這個文字編輯器相近的程式。
Vim 有許多平臺上的版本,而且也增加了許多 Vi 所沒有的功能,且Vim 與幾乎全部的 Vi 指令相容。

35 12.3 Linux檔案系統 Vim 能在各種作業系統上執行,包含: Win32(Windows95/98/00/NT),MacOS, NextStep, UNIX等,也包括了 FreeBSD 和 Linux。

36 12.3 Linux檔案系統 Vim 的基本模式(basic mode)包含下列六種: 正常模式(Normal mode)
插入模式(Insert mode) 命令列模式(Cmdline mode or Command-line mode) 反白模式(Visual mode) 選擇模式(Select mode)

37 問題與討論 請讀者列出Linux作業系統特色及優點? 請讀者試說明uclinux與linux的差別性?
請讀者利用12.4章節所說明的命令建立一個gzip檔 此gzip檔需內含一個利用vim所建立的文字檔。 請讀者利用12.4章節所說明的命令掛載USB隨身碟裝置


Download ppt "第12章 Linux與 嵌入式uClinux系統"

Similar presentations


Ads by Google