版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
嵌入式Linux介紹長(zhǎng)高科技顏旭偉1可編輯ppt嵌入式Linux介紹長(zhǎng)高科技1可編輯ppt嵌入式linux簡(jiǎn)介
LINUX是一個(gè)類似UNIX的作業(yè)系統(tǒng),其程式碼是完全開放的,核心功能強(qiáng)大,實(shí)現(xiàn)簡(jiǎn)潔。它提供了類似UNIX的編寫程式介面和系統(tǒng)應(yīng)用,可以方便的將UNIX系統(tǒng)上的應(yīng)用程式,移植到Linux上運(yùn)作。Linux核心支援多種體系結(jié)構(gòu)的處理器,包括目前流行的Intelx86,Motorola/IBMPowerPC,ARM,CompaqAlpha,SunSRARC等處理器體系結(jié)構(gòu)。要把Linux用於嵌入式環(huán)境,就必須修改Linux滿足嵌入式系統(tǒng)的要求。主要集中在兩個(gè)方面:一是體積,二是即時(shí)性。與目前上的眾多商業(yè)的RTOS(即時(shí)操作系統(tǒng))相比,嵌入式Linux擁有以下的特點(diǎn):2可編輯ppt嵌入式linux簡(jiǎn)介L(zhǎng)INUX是一個(gè)類似UNIX的作業(yè)系統(tǒng)完全開放來(lái)源程式碼
嵌入式Linux開放來(lái)源程式碼,這使得學(xué)習(xí),修改,剪裁Linux成為可能,嵌入式系統(tǒng)的設(shè)計(jì)者可以對(duì)嵌入式Linux進(jìn)行二次開發(fā),去掉作業(yè)系統(tǒng)的附加功能,只保留必須的作業(yè)系統(tǒng)功能,並且可以根據(jù)實(shí)際應(yīng)用的需要優(yōu)化作業(yè)系統(tǒng)的來(lái)源程式碼,從而降低整個(gè)作業(yè)系統(tǒng)開銷與消耗。3可編輯ppt完全開放來(lái)源程式碼嵌入式Linux開放來(lái)源程式碼,這使得學(xué)成本低
GPL協(xié)定保證了源自Linux的嵌入式Linux也是開放來(lái)源程式碼的自由軟體,也就是說(shuō),只要遵守GPL協(xié)議,嵌入式Linux作業(yè)系統(tǒng)的來(lái)源程式碼可以自由獲得。另外,大多數(shù)嵌入式Linux使用的開發(fā)工具也是遵守GPL協(xié)議的,同樣可以免費(fèi)獲得。4可編輯ppt成本低GPL協(xié)定保證了源自Linux的嵌入式Linux也是豐富的實(shí)用軟體支援
Linux作業(yè)系統(tǒng)是一個(gè)完整的、功能強(qiáng)大的作業(yè)系統(tǒng),提供了大量的實(shí)用程式和各種各樣的應(yīng)用軟體。這些軟體的正確性和有效性都經(jīng)過(guò)了實(shí)際應(yīng)用檢驗(yàn),可以根據(jù)需要,利用Linux提供的豐富的軟體支援,迅速構(gòu)建嵌入式應(yīng)用的軟體環(huán)境。這樣可以極大地減小嵌入式系統(tǒng)軟體發(fā)展的時(shí)間和費(fèi)用,提高系統(tǒng)的可靠性。5可編輯ppt豐富的實(shí)用軟體支援Linux作業(yè)系統(tǒng)是一個(gè)完整的、功能強(qiáng)大嵌入式LINUX的可攜性
將LINUX移植到新的微處理器體系非常快捷,一般是將其移植到一種新型的目標(biāo)板,其中包含有獨(dú)特的外部設(shè)計(jì)。大部分的核心程式碼都是相同的,因?yàn)樗鼈兣c微處理器無(wú)關(guān),所以移植的工作多集中在一些記憶體管理及中斷處理程式上。一旦完成,它們將非常穩(wěn)定。6可編輯ppt嵌入式LINUX的可攜性將LINUX移植到新的微處理器體系嵌入式LINUX的應(yīng)用
嵌入式系統(tǒng)的涵蓋面是非常廣泛的,其中,家電市場(chǎng)包括機(jī)頂盒、數(shù)位電視、視訊電話、家庭網(wǎng)路等資訊家電;工業(yè)市場(chǎng)包括工業(yè)控制設(shè)備、儀器;商用市場(chǎng)包括掌上電腦、受客戶機(jī)、POS終端等;通訊市場(chǎng)包括WAP手機(jī)、無(wú)線PDA等。目前被廣泛看好的是資訊家電市場(chǎng),國(guó)內(nèi)有很多開發(fā)廠商正加大投入、開發(fā)和研製新的產(chǎn)品,嵌入式LINUX將是他們首選的作業(yè)系統(tǒng)7可編輯ppt嵌入式LINUX的應(yīng)用嵌入式系統(tǒng)的涵蓋面是非常廣泛的,其中Linux的基本示意圖8可編輯pptLinux的基本示意圖8可編輯pptBootLoader負(fù)責(zé)Linux核心的啟動(dòng),它用於初始化系統(tǒng)資源,包括SDRAM。這部分程式碼用於建立Linux核心運(yùn)作環(huán)境和從Flash中裝載初始化ramdisk9可編輯pptBootLoader負(fù)責(zé)Linux核心的啟動(dòng),它用於初始核心初始化Linux核心的進(jìn)入點(diǎn)是start_kernel()函數(shù)。它初始化核心的其他部分,包括捕獲、IRQ通道、調(diào)度、設(shè)備驅(qū)動(dòng)、標(biāo)定延遲迴圈,最重要的是能夠fork“init”處理程序,以啟動(dòng)整個(gè)多工環(huán)境。系統(tǒng)應(yīng)用函數(shù)/捕獲函數(shù):在執(zhí)行完“init”程式後,核心對(duì)程式不再有直接的控制權(quán),此後,它的作用僅僅是處理非同步事件(例如硬體中斷)和為系統(tǒng)應(yīng)用提供處理程序。10可編輯ppt核心初始化Linux核心的進(jìn)入點(diǎn)是start_kernel設(shè)備驅(qū)動(dòng)設(shè)備驅(qū)動(dòng)佔(zhàn)據(jù)了Linux核心很大部分。同其他作業(yè)系統(tǒng)一樣,設(shè)備驅(qū)動(dòng)為它們所控制的硬體設(shè)備和作業(yè)系統(tǒng)提供介面。11可編輯ppt設(shè)備驅(qū)動(dòng)設(shè)備驅(qū)動(dòng)佔(zhàn)據(jù)了Linux核心很大部分。同其他作業(yè)系檔案系統(tǒng)Linux最重要的特性之一就是對(duì)多種檔案系統(tǒng)的支援。這種特性使得Linux很容易地同其他作業(yè)系統(tǒng)共存。檔案系統(tǒng)的概念使得用戶能夠查看儲(chǔ)存設(shè)備上的檔案和路徑而無(wú)須考慮實(shí)際物理設(shè)備的檔案系統(tǒng)類型。Linux透明的支援許多不同的檔案系統(tǒng),將各種安裝的檔和檔案系統(tǒng)以一個(gè)完整的虛擬檔案系統(tǒng)的形式呈現(xiàn)給用戶。12可編輯ppt檔案系統(tǒng)Linux最重要的特性之一就是對(duì)多種檔案系統(tǒng)的支援嵌入式檔案系統(tǒng)簡(jiǎn)介
嵌入式檔案系統(tǒng)的結(jié)構(gòu)與LINUX類似,目前常用的有EXT2,CRAMFS,JFFS2,YAFFS2和RAM磁片檔案系統(tǒng)等。為了更好的嵌入式系統(tǒng)選擇檔案系統(tǒng),一般會(huì)考察檔案系統(tǒng)的如下幾個(gè)特性:可寫入檔案系統(tǒng)是否可以被寫入?可更新系統(tǒng)重新啟動(dòng)後,檔案系統(tǒng)是否能保持重新啟動(dòng)前的更改?斷電可靠性檔案系統(tǒng)在發(fā)生斷電的時(shí)候是否可以恢復(fù)原資料?可壓縮檔案系統(tǒng)內(nèi)容是否可被壓縮?RAM啟動(dòng)在掛載檔案系統(tǒng)前,其內(nèi)容是否首先從記憶體中提取到RAM中?13可編輯ppt嵌入式檔案系統(tǒng)簡(jiǎn)介嵌入式檔案系統(tǒng)的結(jié)構(gòu)與LINUX類似,目ROMfs檔案系統(tǒng):ROMfs是使用最多的檔案系統(tǒng),它是一種簡(jiǎn)單、緊湊和唯讀的檔案系統(tǒng)。ROMfs順序儲(chǔ)存檔資料,並可以在uClinux支援的儲(chǔ)存設(shè)備上直接運(yùn)作檔案系統(tǒng),這樣可以在系統(tǒng)運(yùn)作時(shí)節(jié)省許多RAM空間14可編輯pptROMfs檔案系統(tǒng):ROMfs是使用最多的檔案系統(tǒng),它是一Cramfs檔案系統(tǒng):Cramfs是針對(duì)Linux核心2.4之後的版本所設(shè)計(jì)的一種新型檔案系統(tǒng),也是壓縮和唯讀格式的。它主要的優(yōu)點(diǎn)是將檔案資料以壓縮形式儲(chǔ)存,在需要運(yùn)作的時(shí)候進(jìn)行解壓縮。由於它儲(chǔ)存的檔形式是壓縮的格式,所以檔案系統(tǒng)不能直接在Flash上運(yùn)作。雖然這樣可以節(jié)約很多Flash儲(chǔ)存空間,但是檔案系統(tǒng)運(yùn)作需要將大量的資料複製進(jìn)RAM中,消耗了RAM空間。15可編輯pptCramfs檔案系統(tǒng):Cramfs是針對(duì)Linux核心2JFFS2日誌檔案系統(tǒng):JFFS2是專門針對(duì)快閃記憶體的檔案系統(tǒng),除了有日誌功能,還有負(fù)載平衡,垃圾收集等,並且來(lái)源碼公開。16可編輯pptJFFS2日誌檔案系統(tǒng):JFFS2是專門針對(duì)快閃記憶體的YAFFS2(YetAnotherFlashFileSystem)檔案系統(tǒng)YAFFS2是一種和JFFSx類似的快閃記憶體檔案系統(tǒng),和JFFS2相比它減少了一些功能,所以速度更快,而且對(duì)記憶體的佔(zhàn)用比較小.YAFFS自已NAND晶片驅(qū)動(dòng),並且為嵌入式系統(tǒng)提供了直接取用檔案系統(tǒng)的API。除了上面介紹的檔案系統(tǒng)之外,還有RAMDISK(一種基於記憶體的檔案系統(tǒng)),TrueFFS等等。17可編輯pptYAFFS2(YetAnotherFlashFile根檔案系統(tǒng)相關(guān)說(shuō)明
Linux核心在系統(tǒng)啟動(dòng)時(shí)的最後操作之一就是載入根檔案系統(tǒng)。根檔案系統(tǒng)中存放了嵌入式系統(tǒng)使用的所有應(yīng)用程式庫(kù)以及一些需要用到的服務(wù)。由於Linux受到UNIX系統(tǒng)發(fā)展的影響,Linux檔案系統(tǒng)的組織和UNIX相同。根檔案系統(tǒng)的結(jié)構(gòu)根檔案系統(tǒng)中每一個(gè)最上層目錄都有特定的用途和目的。有些目錄是為了多用戶模式服務(wù)。在大多數(shù)沒有用戶和管理員的嵌入式Linux中,建立一個(gè)根檔案系統(tǒng)可以不考慮大部分在多用戶下需要注意的問(wèn)題,下表列出了根檔案系統(tǒng)頂層目錄大致結(jié)構(gòu)。18可編輯ppt根檔案系統(tǒng)相關(guān)說(shuō)明Linux核心在系統(tǒng)啟動(dòng)時(shí)的最後操作之一目錄內(nèi)容bin基本命令的可執(zhí)行檔boot核心及啟動(dòng)需要用到的一些檔Dev設(shè)備檔Etc系統(tǒng)配置檔,包括啟動(dòng)檔Home用戶目錄Lib基本函式庫(kù),例如c庫(kù)和核心模組Mnt臨時(shí)映射檔案系統(tǒng)的映射點(diǎn)(映射目標(biāo))Proc核心及處理程序資訊的虛擬檔案系統(tǒng)RootRoot用戶目錄Sbin用於系統(tǒng)管理的可執(zhí)行程式Tmp暫存檔案,在SDRAM中建立Usr該目錄的二級(jí)目錄包含大部分對(duì)大多數(shù)用戶很有用的應(yīng)用程式和文件檔Var存放系統(tǒng)日誌或一些服務(wù)程式的暫存檔案19可編輯ppt目錄內(nèi)容bin基本命令的可執(zhí)行檔boot核心及啟動(dòng)需要用到的交叉編譯器介紹
交叉編譯就是在一個(gè)平臺(tái)上產(chǎn)生可以在另一個(gè)平臺(tái)上執(zhí)行的程式碼。注意這裡的平臺(tái),實(shí)際上包含兩個(gè)概念:體系結(jié)構(gòu)(Architecture)、作業(yè)系統(tǒng)(OperatingSystem)。同一個(gè)體系結(jié)構(gòu)可以運(yùn)作不同的作業(yè)系統(tǒng);同樣,同一個(gè)作業(yè)系統(tǒng)也可以在不同的體系結(jié)構(gòu)上運(yùn)作。舉例來(lái)說(shuō),我們常說(shuō)的x86Linux平臺(tái)實(shí)際上是Intelx86體系結(jié)構(gòu)和Linuxforx86作業(yè)系統(tǒng)的統(tǒng)稱;而x86WinNT平臺(tái)實(shí)際上是Intelx86體系結(jié)構(gòu)和WindowsNTforx86作業(yè)系統(tǒng)的簡(jiǎn)稱。就本書所涉及到的目標(biāo)硬體FS2410XP而言,之所以使用交叉編譯是因?yàn)樵谠撚搀w上無(wú)法安裝我們所需的編譯器,只好借助於宿主機(jī)器,在宿主機(jī)器上對(duì)即將運(yùn)作在目的機(jī)上的應(yīng)用程式進(jìn)行編譯,產(chǎn)生可在目的機(jī)器上運(yùn)作的程式碼格式。20可編輯ppt交叉編譯器介紹交叉編譯就是在一個(gè)平臺(tái)上產(chǎn)生可以在另一個(gè)平臺(tái)GNU工具簡(jiǎn)介
GNU開發(fā)工具包括C編譯器GCC,C++編譯器G++,組語(yǔ)編譯器AS,鏈結(jié)器LD,二進(jìn)位轉(zhuǎn)換工具(OBJCOPY,OBJDUMP),調(diào)整測(cè)試工具(GDB,GDBSERVER,KGDB)和基於不同硬體平臺(tái)的開發(fā)函式庫(kù)。在GNUGCC支援下用戶可以使用流行的C/C++語(yǔ)言開發(fā)應(yīng)用程式,滿足產(chǎn)生高效率運(yùn)作程式碼、易掌握的編寫程式語(yǔ)言的用戶需求。這些工具都是按GPL版權(quán)聲明發(fā)佈,任何人可以從網(wǎng)上獲取全部的來(lái)源程式碼,無(wú)需使用任何費(fèi)用。關(guān)於GNU和公共許可證協(xié)定的詳細(xì)資料,讀者可以參看GNU網(wǎng)站的介紹,/home.html。運(yùn)作於Linux作業(yè)系統(tǒng)下的自由軟體GNUgcc編譯器,不僅可以編譯Linux作業(yè)系統(tǒng)下運(yùn)作的應(yīng)用程式,還可以編譯Linux核心本身,甚至可以作交叉編譯,編譯運(yùn)作於其他CPU上的程式。在這裡我們用的是arm-linux-工具鏈21可編輯pptGNU工具簡(jiǎn)介GNU開發(fā)工具包括C編譯器GCC,C++編譯嵌入式Linux核心程式碼結(jié)構(gòu)
/arch子目錄包含了所有硬體結(jié)構(gòu)特定的核心程式碼。如i386,alpha和arm.。/drivers子目錄包含了核心中所有的設(shè)備驅(qū)動(dòng)程式,如usb和sound。/fs子目錄包含了所有的檔案系統(tǒng)的程式碼。如nfs,ext3和jffs2等。/include子目錄包含了建立核心程式碼時(shí)所需的大部分函式庫(kù)檔案,這個(gè)模組利用其他模組重建核心。該目錄也包括了不同平臺(tái)需要的函式庫(kù)檔案。比如,asm-arm是arm平臺(tái)需要的函式庫(kù)檔案。/init子目錄包含了核心的初始化程式碼,核心從此處工作。/ipc子目錄包含了處理程序間通訊程式碼/kernel子目錄包含了主核心程式碼/mm子目錄包含了所有核心管理程式碼/net子目錄包含了和網(wǎng)路相關(guān)的程式碼,如atm,ipv6等。一般在每個(gè)目錄下都有一個(gè)depend檔和一個(gè)Makefile檔。這兩個(gè)檔都是編譯時(shí)使用的輔助檔。其中Makefile檔中指出了編譯時(shí)需要用到的編譯器,也是移植核心過(guò)程中不可缺少的。22可編輯ppt嵌入式Linux核心程式碼結(jié)構(gòu)/arch子目錄包含了所有硬在核心中添加網(wǎng)路驅(qū)動(dòng)設(shè)備過(guò)程
23可編輯ppt在核心中添加網(wǎng)路驅(qū)動(dòng)設(shè)備過(guò)程23可編輯ppt在核心中添加網(wǎng)路驅(qū)動(dòng)設(shè)備過(guò)程24可編輯ppt在核心中添加網(wǎng)路驅(qū)動(dòng)設(shè)備過(guò)程24可編輯ppt在核心中添加網(wǎng)路驅(qū)動(dòng)設(shè)備過(guò)程25可編輯ppt在核心中添加網(wǎng)路驅(qū)動(dòng)設(shè)備過(guò)程25可編輯ppt在核心中添加網(wǎng)路驅(qū)動(dòng)設(shè)備過(guò)程26可編輯ppt在核心中添加網(wǎng)路驅(qū)動(dòng)設(shè)備過(guò)程26可編輯pptLinux下SD/MMC卡驅(qū)動(dòng)程式
27可編輯pptLinux下SD/MMC卡驅(qū)動(dòng)程式27可編輯pptLinux下SD/MMC卡驅(qū)動(dòng)程式28可編輯pptLinux下SD/MMC卡驅(qū)動(dòng)程式28可編輯ppt此課件下載可自行編輯修改,此課件供參考!部分內(nèi)容來(lái)源于網(wǎng)絡(luò),如有侵權(quán)請(qǐng)與我聯(lián)系刪除!感謝你的觀看!此課件下載可自行編輯修改,此課件供參考!嵌入式Linux介紹長(zhǎng)高科技顏旭偉30可編輯ppt嵌入式Linux介紹長(zhǎng)高科技1可編輯ppt嵌入式linux簡(jiǎn)介
LINUX是一個(gè)類似UNIX的作業(yè)系統(tǒng),其程式碼是完全開放的,核心功能強(qiáng)大,實(shí)現(xiàn)簡(jiǎn)潔。它提供了類似UNIX的編寫程式介面和系統(tǒng)應(yīng)用,可以方便的將UNIX系統(tǒng)上的應(yīng)用程式,移植到Linux上運(yùn)作。Linux核心支援多種體系結(jié)構(gòu)的處理器,包括目前流行的Intelx86,Motorola/IBMPowerPC,ARM,CompaqAlpha,SunSRARC等處理器體系結(jié)構(gòu)。要把Linux用於嵌入式環(huán)境,就必須修改Linux滿足嵌入式系統(tǒng)的要求。主要集中在兩個(gè)方面:一是體積,二是即時(shí)性。與目前上的眾多商業(yè)的RTOS(即時(shí)操作系統(tǒng))相比,嵌入式Linux擁有以下的特點(diǎn):31可編輯ppt嵌入式linux簡(jiǎn)介L(zhǎng)INUX是一個(gè)類似UNIX的作業(yè)系統(tǒng)完全開放來(lái)源程式碼
嵌入式Linux開放來(lái)源程式碼,這使得學(xué)習(xí),修改,剪裁Linux成為可能,嵌入式系統(tǒng)的設(shè)計(jì)者可以對(duì)嵌入式Linux進(jìn)行二次開發(fā),去掉作業(yè)系統(tǒng)的附加功能,只保留必須的作業(yè)系統(tǒng)功能,並且可以根據(jù)實(shí)際應(yīng)用的需要優(yōu)化作業(yè)系統(tǒng)的來(lái)源程式碼,從而降低整個(gè)作業(yè)系統(tǒng)開銷與消耗。32可編輯ppt完全開放來(lái)源程式碼嵌入式Linux開放來(lái)源程式碼,這使得學(xué)成本低
GPL協(xié)定保證了源自Linux的嵌入式Linux也是開放來(lái)源程式碼的自由軟體,也就是說(shuō),只要遵守GPL協(xié)議,嵌入式Linux作業(yè)系統(tǒng)的來(lái)源程式碼可以自由獲得。另外,大多數(shù)嵌入式Linux使用的開發(fā)工具也是遵守GPL協(xié)議的,同樣可以免費(fèi)獲得。33可編輯ppt成本低GPL協(xié)定保證了源自Linux的嵌入式Linux也是豐富的實(shí)用軟體支援
Linux作業(yè)系統(tǒng)是一個(gè)完整的、功能強(qiáng)大的作業(yè)系統(tǒng),提供了大量的實(shí)用程式和各種各樣的應(yīng)用軟體。這些軟體的正確性和有效性都經(jīng)過(guò)了實(shí)際應(yīng)用檢驗(yàn),可以根據(jù)需要,利用Linux提供的豐富的軟體支援,迅速構(gòu)建嵌入式應(yīng)用的軟體環(huán)境。這樣可以極大地減小嵌入式系統(tǒng)軟體發(fā)展的時(shí)間和費(fèi)用,提高系統(tǒng)的可靠性。34可編輯ppt豐富的實(shí)用軟體支援Linux作業(yè)系統(tǒng)是一個(gè)完整的、功能強(qiáng)大嵌入式LINUX的可攜性
將LINUX移植到新的微處理器體系非??旖?,一般是將其移植到一種新型的目標(biāo)板,其中包含有獨(dú)特的外部設(shè)計(jì)。大部分的核心程式碼都是相同的,因?yàn)樗鼈兣c微處理器無(wú)關(guān),所以移植的工作多集中在一些記憶體管理及中斷處理程式上。一旦完成,它們將非常穩(wěn)定。35可編輯ppt嵌入式LINUX的可攜性將LINUX移植到新的微處理器體系嵌入式LINUX的應(yīng)用
嵌入式系統(tǒng)的涵蓋面是非常廣泛的,其中,家電市場(chǎng)包括機(jī)頂盒、數(shù)位電視、視訊電話、家庭網(wǎng)路等資訊家電;工業(yè)市場(chǎng)包括工業(yè)控制設(shè)備、儀器;商用市場(chǎng)包括掌上電腦、受客戶機(jī)、POS終端等;通訊市場(chǎng)包括WAP手機(jī)、無(wú)線PDA等。目前被廣泛看好的是資訊家電市場(chǎng),國(guó)內(nèi)有很多開發(fā)廠商正加大投入、開發(fā)和研製新的產(chǎn)品,嵌入式LINUX將是他們首選的作業(yè)系統(tǒng)36可編輯ppt嵌入式LINUX的應(yīng)用嵌入式系統(tǒng)的涵蓋面是非常廣泛的,其中Linux的基本示意圖37可編輯pptLinux的基本示意圖8可編輯pptBootLoader負(fù)責(zé)Linux核心的啟動(dòng),它用於初始化系統(tǒng)資源,包括SDRAM。這部分程式碼用於建立Linux核心運(yùn)作環(huán)境和從Flash中裝載初始化ramdisk38可編輯pptBootLoader負(fù)責(zé)Linux核心的啟動(dòng),它用於初始核心初始化Linux核心的進(jìn)入點(diǎn)是start_kernel()函數(shù)。它初始化核心的其他部分,包括捕獲、IRQ通道、調(diào)度、設(shè)備驅(qū)動(dòng)、標(biāo)定延遲迴圈,最重要的是能夠fork“init”處理程序,以啟動(dòng)整個(gè)多工環(huán)境。系統(tǒng)應(yīng)用函數(shù)/捕獲函數(shù):在執(zhí)行完“init”程式後,核心對(duì)程式不再有直接的控制權(quán),此後,它的作用僅僅是處理非同步事件(例如硬體中斷)和為系統(tǒng)應(yīng)用提供處理程序。39可編輯ppt核心初始化Linux核心的進(jìn)入點(diǎn)是start_kernel設(shè)備驅(qū)動(dòng)設(shè)備驅(qū)動(dòng)佔(zhàn)據(jù)了Linux核心很大部分。同其他作業(yè)系統(tǒng)一樣,設(shè)備驅(qū)動(dòng)為它們所控制的硬體設(shè)備和作業(yè)系統(tǒng)提供介面。40可編輯ppt設(shè)備驅(qū)動(dòng)設(shè)備驅(qū)動(dòng)佔(zhàn)據(jù)了Linux核心很大部分。同其他作業(yè)系檔案系統(tǒng)Linux最重要的特性之一就是對(duì)多種檔案系統(tǒng)的支援。這種特性使得Linux很容易地同其他作業(yè)系統(tǒng)共存。檔案系統(tǒng)的概念使得用戶能夠查看儲(chǔ)存設(shè)備上的檔案和路徑而無(wú)須考慮實(shí)際物理設(shè)備的檔案系統(tǒng)類型。Linux透明的支援許多不同的檔案系統(tǒng),將各種安裝的檔和檔案系統(tǒng)以一個(gè)完整的虛擬檔案系統(tǒng)的形式呈現(xiàn)給用戶。41可編輯ppt檔案系統(tǒng)Linux最重要的特性之一就是對(duì)多種檔案系統(tǒng)的支援嵌入式檔案系統(tǒng)簡(jiǎn)介
嵌入式檔案系統(tǒng)的結(jié)構(gòu)與LINUX類似,目前常用的有EXT2,CRAMFS,JFFS2,YAFFS2和RAM磁片檔案系統(tǒng)等。為了更好的嵌入式系統(tǒng)選擇檔案系統(tǒng),一般會(huì)考察檔案系統(tǒng)的如下幾個(gè)特性:可寫入檔案系統(tǒng)是否可以被寫入?可更新系統(tǒng)重新啟動(dòng)後,檔案系統(tǒng)是否能保持重新啟動(dòng)前的更改?斷電可靠性檔案系統(tǒng)在發(fā)生斷電的時(shí)候是否可以恢復(fù)原資料?可壓縮檔案系統(tǒng)內(nèi)容是否可被壓縮?RAM啟動(dòng)在掛載檔案系統(tǒng)前,其內(nèi)容是否首先從記憶體中提取到RAM中?42可編輯ppt嵌入式檔案系統(tǒng)簡(jiǎn)介嵌入式檔案系統(tǒng)的結(jié)構(gòu)與LINUX類似,目ROMfs檔案系統(tǒng):ROMfs是使用最多的檔案系統(tǒng),它是一種簡(jiǎn)單、緊湊和唯讀的檔案系統(tǒng)。ROMfs順序儲(chǔ)存檔資料,並可以在uClinux支援的儲(chǔ)存設(shè)備上直接運(yùn)作檔案系統(tǒng),這樣可以在系統(tǒng)運(yùn)作時(shí)節(jié)省許多RAM空間43可編輯pptROMfs檔案系統(tǒng):ROMfs是使用最多的檔案系統(tǒng),它是一Cramfs檔案系統(tǒng):Cramfs是針對(duì)Linux核心2.4之後的版本所設(shè)計(jì)的一種新型檔案系統(tǒng),也是壓縮和唯讀格式的。它主要的優(yōu)點(diǎn)是將檔案資料以壓縮形式儲(chǔ)存,在需要運(yùn)作的時(shí)候進(jìn)行解壓縮。由於它儲(chǔ)存的檔形式是壓縮的格式,所以檔案系統(tǒng)不能直接在Flash上運(yùn)作。雖然這樣可以節(jié)約很多Flash儲(chǔ)存空間,但是檔案系統(tǒng)運(yùn)作需要將大量的資料複製進(jìn)RAM中,消耗了RAM空間。44可編輯pptCramfs檔案系統(tǒng):Cramfs是針對(duì)Linux核心2JFFS2日誌檔案系統(tǒng):JFFS2是專門針對(duì)快閃記憶體的檔案系統(tǒng),除了有日誌功能,還有負(fù)載平衡,垃圾收集等,並且來(lái)源碼公開。45可編輯pptJFFS2日誌檔案系統(tǒng):JFFS2是專門針對(duì)快閃記憶體的YAFFS2(YetAnotherFlashFileSystem)檔案系統(tǒng)YAFFS2是一種和JFFSx類似的快閃記憶體檔案系統(tǒng),和JFFS2相比它減少了一些功能,所以速度更快,而且對(duì)記憶體的佔(zhàn)用比較小.YAFFS自已NAND晶片驅(qū)動(dòng),並且為嵌入式系統(tǒng)提供了直接取用檔案系統(tǒng)的API。除了上面介紹的檔案系統(tǒng)之外,還有RAMDISK(一種基於記憶體的檔案系統(tǒng)),TrueFFS等等。46可編輯pptYAFFS2(YetAnotherFlashFile根檔案系統(tǒng)相關(guān)說(shuō)明
Linux核心在系統(tǒng)啟動(dòng)時(shí)的最後操作之一就是載入根檔案系統(tǒng)。根檔案系統(tǒng)中存放了嵌入式系統(tǒng)使用的所有應(yīng)用程式庫(kù)以及一些需要用到的服務(wù)。由於Linux受到UNIX系統(tǒng)發(fā)展的影響,Linux檔案系統(tǒng)的組織和UNIX相同。根檔案系統(tǒng)的結(jié)構(gòu)根檔案系統(tǒng)中每一個(gè)最上層目錄都有特定的用途和目的。有些目錄是為了多用戶模式服務(wù)。在大多數(shù)沒有用戶和管理員的嵌入式Linux中,建立一個(gè)根檔案系統(tǒng)可以不考慮大部分在多用戶下需要注意的問(wèn)題,下表列出了根檔案系統(tǒng)頂層目錄大致結(jié)構(gòu)。47可編輯ppt根檔案系統(tǒng)相關(guān)說(shuō)明Linux核心在系統(tǒng)啟動(dòng)時(shí)的最後操作之一目錄內(nèi)容bin基本命令的可執(zhí)行檔boot核心及啟動(dòng)需要用到的一些檔Dev設(shè)備檔Etc系統(tǒng)配置檔,包括啟動(dòng)檔Home用戶目錄Lib基本函式庫(kù),例如c庫(kù)和核心模組Mnt臨時(shí)映射檔案系統(tǒng)的映射點(diǎn)(映射目標(biāo))Proc核心及處理程序資訊的虛擬檔案系統(tǒng)RootRoot用戶目錄Sbin用於系統(tǒng)管理的可執(zhí)行程式Tmp暫存檔案,在SDRAM中建立Usr該目錄的二級(jí)目錄包含大部分對(duì)大多數(shù)用戶很有用的應(yīng)用程式和文件檔Var存放系統(tǒng)日誌或一些服務(wù)程式的暫存檔案48可編輯ppt目錄內(nèi)容bin基本命令的可執(zhí)行檔boot核心及啟動(dòng)需要用到的交叉編譯器介紹
交叉編譯就是在一個(gè)平臺(tái)上產(chǎn)生可以在另一個(gè)平臺(tái)上執(zhí)行的程式碼。注意這裡的平臺(tái),實(shí)際上包含兩個(gè)概念:體系結(jié)構(gòu)(Architecture)、作業(yè)系統(tǒng)(OperatingSystem)。同一個(gè)體系結(jié)構(gòu)可以運(yùn)作不同的作業(yè)系統(tǒng);同樣,同一個(gè)作業(yè)系統(tǒng)也可以在不同的體系結(jié)構(gòu)上運(yùn)作。舉例來(lái)說(shuō),我們常說(shuō)的x86Linux平臺(tái)實(shí)際上是Intelx86體系結(jié)構(gòu)和Linuxforx86作業(yè)系統(tǒng)的統(tǒng)稱;而x86WinNT平臺(tái)實(shí)際上是Intelx86體系結(jié)構(gòu)和WindowsNTforx86作業(yè)系統(tǒng)的簡(jiǎn)稱。就本書所涉及到的目標(biāo)硬體FS2410XP而言,之所以使用交叉編譯是因?yàn)樵谠撚搀w上無(wú)法安裝我們所需的編譯器,只好借助於宿主機(jī)器,在宿主機(jī)器上對(duì)即將運(yùn)作在目的機(jī)上的應(yīng)用程式進(jìn)行編譯,產(chǎn)生可在目的機(jī)器上運(yùn)作的程式碼格式。49可編輯ppt交叉編譯器介紹交叉編譯就是在一個(gè)平臺(tái)上產(chǎn)生可以在另一個(gè)平臺(tái)GNU工具簡(jiǎn)介
GNU開發(fā)工具包括C編譯器GCC,C++編譯器G++,組語(yǔ)編譯器AS,鏈結(jié)器LD,二進(jìn)位轉(zhuǎn)換工具(OBJCOPY,OBJDUMP),調(diào)整測(cè)試工具(GDB,GDBSERVER,KGDB)和基於不同硬體平臺(tái)的開發(fā)函式庫(kù)。在GNUGCC支援下用戶可以使用流行的C/C++語(yǔ)言開發(fā)應(yīng)用程式,滿足產(chǎn)生高效率運(yùn)作程式碼、易掌握的編寫程式語(yǔ)言的用戶需求。這些工具都是按GPL版權(quán)聲明發(fā)佈,任何人可以從網(wǎng)上獲取全部的來(lái)源程式碼,無(wú)需使用任何費(fèi)用。關(guān)於
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年上??紡臉I(yè)資格證貨運(yùn)試題
- 2025年保山貨運(yùn)從業(yè)資格證題庫(kù)
- 2025年呼和浩特貨車從業(yè)資格考試題庫(kù)
- 城市綠化照明規(guī)劃
- 網(wǎng)絡(luò)安全風(fēng)險(xiǎn)管理準(zhǔn)則
- 餐飲業(yè)工會(huì)預(yù)算編制與控制
- 體育合作租賃合同
- 農(nóng)村旅游停電景點(diǎn)安全
- 高空動(dòng)物園設(shè)施維護(hù)合同
- 攝影棚作品市場(chǎng)推廣策略
- 蒙牛學(xué)生奶培訓(xùn)課件
- 檢驗(yàn)原始記錄培訓(xùn)課件
- 少先隊(duì)小提案
- 小學(xué)一年級(jí)上冊(cè)數(shù)學(xué)口算訓(xùn)練題
- 隧道工程工程施工風(fēng)險(xiǎn)辨識(shí)清單
- 北京市高二年級(jí)上學(xué)期期末考試語(yǔ)文試卷及答案(共五套)
- 傳承紅色基因清明緬懷先烈主題班會(huì)課件
- 2024供電所迎新年賀詞
- 美容皮膚科臨床診療指南診療規(guī)范2023版
- 高速公路工程建設(shè)指揮部計(jì)量支付管理辦法
- 吉林省吉林市2023-2024學(xué)年高三上學(xué)期第二次模擬考試 生物 二模
評(píng)論
0/150
提交評(píng)論